{"openapi": "3.1.0", "info": {"contact": {"email": "tmunzer@juniper.net", "name": "Thomas Munzer"}, "description": "> Version: **2606.1.1**\n>\n> Date: **July 10, 2026**\n
NOTE:
Some important API changes will be introduced. Please make sure to read the announcements
\n\n---\n## Additional Documentation\n* [Mist Automation Guide](https://www.juniper.net/documentation/us/en/software/mist/automation-integration/index.html)\n* [Mist Location SDK](https://www.juniper.net/documentation/us/en/software/mist/location-services/topics/concept/mist-how-get-mist-sdk.html)\n* [Mist Product Updates](https://www.juniper.net/documentation/us/en/software/mist/product-updates/)\n\n## Helpful Resources\n* [API Sandbox and Exercises](https://api-class.mist.com/)\n* [Postman Collection, Runners and Webhook Samples](https://www.postman.com/juniper-mist/workspace/mist-systems-s-public-workspace)\n* [Python Script Examples](https://github.com/tmunzer/mist_library)\n* [API Demo Apps](https://apps.mist-lab.fr/)\n* [Juniper Blog](https://blogs.juniper.net/)\n\n## Mist Web Browser Extension:\n* Google Chrome, Microsoft Edge and other Chromium-based browser: [Chrome Web Store](https://chromewebstore.google.com/detail/mist-extension/ejhpdcljeamillfhdihkkmoakanpbplh)\n* Firefox: [Firefox Add-ons](https://addons.mozilla.org/en-US/firefox/addon/mist-extension/)\n\n---", "license": {"name": "MIT", "url": "https://raw.githubusercontent.com/tmunzer/Mist-OAS3.0/main/LICENSE"}, "title": "Mist API", "version": "2606.1.1", "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 Global 05", "url": "https://api.gc4.mist.com"}, {"description": "Mist EMEA 01", "url": "https://api.eu.mist.com"}, {"description": "Mist EMEA 02", "url": "https://api.gc3.mist.com"}, {"description": "Mist EMEA 03", "url": "https://api.ac6.mist.com"}, {"description": "Mist EMEA 04", "url": "https://api.gc6.mist.com"}, {"description": "Mist APAC 01", "url": "https://api.ac5.mist.com"}, {"description": "Mist APAC 02", "url": "https://api.gc5.mist.com"}, {"description": "Mist APAC 03", "url": "https://api.gc7.mist.com"}], "security": [{"apiToken": []}, {"csrfToken": []}], "tags": [{"description": "Admin API calls can be used to create, manage or authenticate Mist administrators.\n\nTo register administrators into an existing MSP account or Organization, please check: * [Invite Msp Admin](/#operations/inviteMspAdmin) * [Invite Org Admin](/#operations/inviteOrgAdmin)", "name": "Admins"}, {"description": "Login Endpoints when using Login/Password authentication, with or without 2FA.\n\nIf the Login/Password authentication is successful, Mist will add a `csrftoken` cookie that must be added into the later API Requests (please see [csrfToken (Custom Header Signature)]($h/__auth_CsrfToken))", "name": "Admins Login"}, {"description": "Logout Endpoints when using Login/Password authentication, with or without 2FA.", "name": "Admins Logout"}, {"description": "Endpoints used to trigger a password recovery and validate the token sent by email.", "name": "Admins Recover Password"}, {"description": "Admin Lookup API Call is mainly used by Web UIs to know if a user must be redirected to an SSO URL for login.", "name": "Admins Lookup"}, {"description": "A Mist account can be linked to OAuth2 providers:\n1. First, login with your Mist account\n2. Obtain the Authorization URL for Linking with [Get Oauth 2 Authorization Url for Login](/#operations/getOauth2AuthorizationUrlForLogin).\nAs OAuth2 flow goes through provider's UI and back with the authorization code, there are two ways to get it:\n * in JSON response, more usable for developers. Simply don\\'t specify the `forward` parameter when obtaining the authorization URL\n * as GET parameter, for UI where the user flow can be continued. Specify the landing page/url of your choice \n3. Obtain the authorization code by clicking / going through Authorization URL Link Mist Account against OAuth2 Provider by using the authorization code", "name": "Admins Login - 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\\ \ns what they see)\n2. they can only touch configurations of the devices they\\u2019\\\nre installing\n3. allow the following configurations: \n * name * site assignment \n * device profile assignment \n * map and location (x/y) assignment \n * claim (if not already in the inventory) \n * replace existing device with the device being installed\n\n**Grace Period**\n\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"}, {"description": "MSP (Managed Service Provider) contains multiple Organizations.", "name": "MSPs"}, {"description": "An MSP Admin refers to a user who has access to the Juniper Mist managed service provider (MSP) portal and is responsible for managing and administering the network operations of multiple customer organizations and sites.", "name": "MSPs Admins"}, {"description": "Sky ATP Secintel Profile", "name": "Orgs SecIntel Profiles"}, {"description": "Sky ATP Secintel Profile", "name": "Sites SecIntel Profiles"}, {"description": "API Calls to locate a device across all the Organizations attached to the MSP account.", "name": "MSPs Inventory"}, {"description": "Manage the Mist portal logo at the MSP level. This logo will be displayed instead of the Juniper Mist Logo for all the Organizations attached to this MSP account.", "name": "MSPs Logo"}, {"description": "Audit Logs are records of activities initiated by users, providing a history of actions such as accessing, creating, updating, or deleting resources or components at the MSP level.\n\nThese logs allow superusers and network administrators to track and maintain a record of user actions, including who performed specific actions and when.\n\nAudit logs are useful for monitoring user activity, investigating security breaches, ensuring compliance with regulations, and tracing configuration changes in a network.\n\nThey can be filtered and analyzed to view specific information and granular-level details of each event.", "name": "MSPs Logs"}, {"description": "Licenses are a type of service or access that customers can purchase for various features or services offered by a company.\n\nSubscriptions can have different statuses, such as active, expired, exceeded, or trial, depending on their validity and usage. The status of a subscription determines whether it is currently active and valid, has expired, has exceeded the allowed usage limit, or is in a trial period.\n\nLicenses can be activated using an activation code, and the activation process confirms the inputted code and activates the subscription.\n\nLicenses can be managed at the MSP level for organization attached to an MSP account, or directly at the [Organization level]($h/Orgs%20Licenses/_overview)", "name": "MSPs Licenses"}, {"description": "Marvis is an AI-driven, interactive virtual network assistant that streamlines network operations, simplifies troubleshooting, and provides an enhanced user experience.\nIt offers real-time network visibility, comprehensive insights, and automation customized for your network.\nMarvis can proactively identify issues, interpret their impact, determine root causes, and recommend fixes.\nIt consists of components such as Marvis Actions, Marvis Minis, Conversational Assistant, Marvis Client, and Marvis Query Language.\n\nMarvis API Calls at the MSP level can be used to quickly detect network issues on all the Organizations attached to the MSP account.", "name": "MSPs Marvis"}, {"description": "Org Groups a way to group Organizations together based on certain criteria.\n\nThey can be used for easier management and organization of multiple organizations within the MSP portal.", "name": "MSPs Org Groups"}, {"description": "An organization usually represents a customer - which has inventories, licenses.\n\nAn Organization can contain multiple sites. A site usually represents a deployment at the same location (a campus, an office).", "name": "MSPs Orgs"}, {"description": "SLEs, or Service-Level Expectations, are metrics used to monitor and report on the user experience of a Wireless, Wired or Wan network.\n\nThey are generated through data science and machine learning algorithms and provide insights into various aspects of the network, such as coverage, capacity, connectivity, and performance.\n\nMist SLEs help identify when users do not have sufficient network quality, when they face issues with connecting or roaming between access points, and when there are problems on the wired network.\n\nSLEs API Calls at the MSP level can be used to retrieve the SLEs summary for each Organization attached to the MSP account.", "name": "MSPs SLEs"}, {"description": "MSP SSO roles refer to the different functions assigned to users within a Single Sign-On (SSO) system.\n\nThese roles determine the tasks and actions that users can perform within the SSO system. There are typically predefined roles and custom roles in an SSO system.\n\nRoles in SSO provide a well-defined separation of responsibility and visibility, allowing for granular-level access control on SSO objects.", "name": "MSPs SSO Roles"}, {"description": "MSP SSO, or Single Sign-On, is a method of authentication that allows users to securely log in to multiple applications and websites with a single set of login credentials.\n\nIt involves integrating the MSP portal with an Identity Provider (IdP) using the Security Assertion Markup Language (SAML) framework.\n\nThis enables users to authenticate themselves through their corporate IdP, eliminating the need to remember separate passwords or enter credentials each time they access the MSP portal.", "name": "MSPs SSO"}, {"description": "Support tickets are a means for users to seek assistance and resolve issues they encounter with a product or service.\nThey allow users to communicate their problems or questions to the Juniper Mist support team, who can then provide guidance, troubleshooting, or solutions.\nSupport tickets typically include information such as the type of issue, relevant details, and any necessary attachments.\n\nSupport Tickets API Calls at the MSP level can be used to retrieve the tickets for each Organization attached to the MSP account.", "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"}, {"description": "An org admin, or organization administrator, is a user with administrative privileges within a specific organization. They have the authority to manage and oversee the operations and settings of that organization's portal.\n\n The different types of access levels for an org admin include:\n * Super User: This role has full access to the MSP portal and all tenant organizations. A super user can manage other administrators and has the highest level of privileges.\n * Network Admin: A network admin has limited access to the MSP portal. They can be granted access to all organizations or specific organizations, with access to limited features in the organizations' portals. They are responsible for monitoring, verifying, and troubleshooting the network within their assigned organizations.\n * Observer: An observer has view-only access to limited features in the MSP portal. They can be granted access to all organizations or specific organizations, with view-only access to limited features in the organizations' portals. Observers monitor events in the network and bring any issues to the attention of the network administrator for resolution.\n * Installer: An installer can be granted access to all organizations or specific organizations, with only the ability to install access points for these organizations. They are responsible for setting up and installing access points in the network.\n * Helpdesk: A helpdesk user can be granted access to all organizations or specific organizations, with only helpdesk monitoring and workflow capabilities for these organizations. They assist with monitoring and resolving issues reported by users within the organization.\n\n These different access levels allow org admins to perform their specific roles and responsibilities within the MSP portal while ensuring appropriate access and security measures are in place.", "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\none or more sites (while each site can only pick one Alarm Template), or to the\nwhole org.\n\n\nOnce created, the Alarm template must be assigned with the `alarmtemplate_id` attribute to one of the following\n* the whole org with the [Update Org](/#operations/updateOrg) API Call\n* one or multiple sites with the [Update Site Info](/#operations/updateSiteInfo) API Call", "name": "Orgs Alarm Templates"}, {"description": "AP Templates are defining Wi-Fi and AP settings that can be assigned to Access Points based on different types of rules.\n\nAP Templates must be assigned to one or multiple sites to be used.", "name": "Orgs AP Templates"}, {"description": "Org API token is a unique identifier used by an application to authenticate and access a service's API.\nThese tokens are used to authenticate requests made to the API server and ensure secure access to the API.\n\nThey are not bound to any specific user and provide access to the organization as a whole.\n\nOrganization tokens support different privileges and can only be used for the specific organization they are generated for.\n\nRate limiting is done on an individual token basis, so if one token reaches its rate limit, it does not impact other tokens.", "name": "Orgs API Tokens"}, {"description": "An Asset refers to any equipment or item that is being tracked and monitored using Bluetooth Low Energy (BLE) beacon tags.\n\nThis requires the Asset Visibility subscription.", "name": "Orgs Assets"}, {"description": "An Asset Filter is a feature that allows users to define specific criteria or conditions to filter and display only certain assets based on their attributes or properties.\n\nThis requires the Asset Visibility subscription.", "name": "Orgs Asset Filters"}, {"description": "API Calls to manage Organization Certificates.\n\nThe certificates can be used bu Access Assurance, during the SSO/SAML Authentication, ...", "name": "Orgs Cert"}, {"description": "Antivirus profiles are used to define the content to scan for any malware and the action to be taken when malware is detected. \nThese profiles can be assigned to Content Security policies to scan Web, file transfer, and e-mail traffic. \nThe profiles help in ensuring that the network is protected from malicious content by specifying fallback options and notification methods when malware is detected or when the antivirus system experiences errors.\n\n\nKey Features of Antivirus Profiles:\n\n* Content Scanning: Defines the content to scan for malware.\n* Action on Detection: Specifies the action to be taken when malware is detected.\n* Fallback Options: Configures actions to be taken when the antivirus system encounters errors.\n* Notification Options: Sets up methods to notify users when a fallback occurs or a virus is detected.", "name": "Orgs Antivirus Profiles"}, {"description": "Marvis Invites can be generated for (and belongs to) an Org. They can be generated by an Admin of an Org and can be revoked at anytime.\n\nMarvis Clients are devices that have the Marvis Android Client installed on them and are connected to a Juniper Mist AP.\n\nThey provide detailed data and telemetry about the client's wireless connection, including information about roaming behavior, connection type, and wireless properties.", "name": "Orgs Clients - Marvis"}, {"description": "Marvis Clients are devices that have the Marvis Android Client installed on them and are connected to a Juniper Mist AP.\n\nThey provide detailed data and telemetry about the client's wireless connection, including information about roaming behavior, connection type, and wireless properties.", "name": "Orgs Marvis Invites"}, {"description": "NAC Clients are devices connected to the network and authenticated by Juniper Mist Access Assurance.", "name": "Orgs Clients - NAC"}, {"description": "WAN Clients are devices connected to a Juniper SRX or SSX gateway monitor or managed by Mist", "name": "Orgs Clients - Wan"}, {"description": "Wired Clients are Wired devices connected to a Juniper switch monitored or managed by Mist.", "name": "Orgs Clients - Wired"}, {"description": "Wireless Clients are Wi-Fi devices connected to a Juniper Mist Access Point.", "name": "Orgs Clients - Wireless"}, {"description": "SDK Clients are devices that have installed an application using the Mist Software Development Kit (SDK).\n\nThese clients can provide specific data and information that is not available without the installation of the SDK application.", "name": "Orgs Clients - SDK"}, {"description": "The integration between Mist and Cradlepoint allows users to utilize Cradlepoint 5G cellular adapters with Juniper's wired, wireless, and SD-WAN solutions driven by Mist AI.\n\nWith this integration, users can manage Cradlepoint devices from the Mist portal, including onboarding, assigning devices to a site, and viewing device inventory details. It also provides visibility into the health, SLE, and insights of Cradlepoint devices.\n\nAdditionally, the integration enables users to leverage Marvis, Juniper's virtual network assistant, to receive proactive recommendations and self-driving network actions. This integration enhances the client-to-cloud user experience by providing insights into branch WAN adapters, helping network admins reduce Mean Time to Identify (MTTI).", "name": "Orgs Integration Cradlepoint"}, {"description": "CRLs, or Certificate Revocation Lists, are time-stamped lists that identify digital certificates that have been invalidated before their expiration date. They include information about the reasons for revocation and the entities that issued the certificates.\n\nCRLs are used to prevent the usage of compromised digital certificates and signatures.", "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.\nA 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"}, {"description": "Devices are any Network device managed or monitored by Juniper Mist. It can be * Wireless Access Points * Juniper Switch (EX, QFX) * Juniper WAN Gateway (SRX, SSR) * Mist Edges * Other or 3rd party devices, like Cradlepoint Devices", "name": "Orgs Devices"}, {"description": "API Calls specific to SSR devices", "name": "Orgs Devices - SSR"}, {"description": "API Calls specific to AOS (Aruba Operating System) devices", "name": "Orgs Devices - AOS"}, {"description": "EVPN allows an alternative but more efficient LAN architecture utilizing VxLAN / MP-BGP - separating control plane (MAC / IP Learning) from forwarding plane.\nIn our implementation, following the steps to deploy EVPN topologies in a Site", "name": "Orgs EVPN Topologies"}, {"description": "The Juniper Integration can be used to synchronize Juniper Support Insights (JSI) information.", "name": "Orgs Integration Juniper"}, {"description": "API Call for 3rd party devices", "name": "Orgs Devices - Others"}, {"description": "In Zscaler UI:\n1. add Partner Integration at https://admin.zscalerbeta.net/#administration/partner-integration\n2. Add Partner Administrator Role at https://admin.zscalerbeta.net/#administration/role-management - Name: Mist - Access: Full\n3. add Partner Admin at https://admin.zscalerbeta.net/#administration/admin-management with - Login ID: john - email: john@abc.com\n4. Find the cloud name for ZIA https://help.zscaler.com/zia/what-my-cloud-name-zia", "name": "Orgs Integration Zscaler"}, {"name": "Orgs SCEP"}, {"description": "Gateway Template is applied to a site for gateway(s) in a site.\n\nWhen 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", "name": "Orgs Gateway Templates"}, {"description": "Guests are users who are accessing the wi-fi network as a temporary or non-permanent visitor.", "name": "Orgs Guests"}, {"description": "An IDP profile is a set of predefined rules and actions that determine how the Intrusion Detection and Prevention (IDP) system handles network traffic.\n\nIt allows you to selectively enforce attack detection and prevention techniques on your network. The profile includes a set of IDP signatures and rules recommended by Juniper Networks, and each attack type and severity has a specific action associated with it, such as closing the TCP connection, dropping the packet, or sending an alert.\n\nThe IDP profile can be applied to an application policy to monitor and analyze network events for signs of incidents, violations, or threats to security policies.", "name": "Orgs IDP Profiles"}, {"description": "The Org Inventory allows administrators to view and manage all devices registered (claimed) to the Organization.", "name": "Orgs Inventory"}, {"description": "JSE stands for Juniper Secure Edge and it is a feature within the Mist UI that allows customers to configure Secure Cloud Connectors.\n\nWith JSE, users can establish a tunnel via IPSec protocol and use application policy and traffic steering to send traffic from a WAN edge device to JSE. Mist also provides insights and telemetry for the secure edge connection, which is helpful for troubleshooting and monitoring data.", "name": "Orgs Integration JSE"}, {"description": "The \"Advanced Anti-Malware\" feature in Sky ATP is a comprehensive security solution that leverages multiple techniques to detect and prevent malware attacks. Here are the key components of this feature:\n* **Flow-Based Antivirus Policy**: The policy checks inbound and outbound traffic to stop malware, quarantine infected systems, prevent data exfiltration, and disrupt lateral movement.\n* **Machine Learning-Based Threat Detection**: Sky ATP uses machine learning to identify zero-day threats and detect malware that traditional antivirus software might miss.\n* **Integration with SRX Series Firewalls**: The SRX Series firewalls integrate with Sky ATP to block known malicious file downloads and outbound Command and Control (C&C) traffic. This integration ensures that malware is quickly identified and dropped before it can infect a host.\n* **Real-Time Threat Intelligence**: Sky ATP distributes third-party threat intelligence feeds to all ATP-subscribed SRX firewalls for immediate action, reducing the attack surface.\n\nThese components collectively provide a robust and automated threat detection and remediation solution, simplifying cybersecurity infrastructure and processes for organizations.\n\nFor more details, you can refer to the Juniper documentation on advanced anti-malware policy configuration.", "name": "Orgs Advanced Anti Malware Profiles"}, {"description": "Sky Advanced Threat Prevention (Sky ATP) is a cloud-based security designed to detect and mitigate advanced threats in real-time, ensuring the security and integrity of your network. \nThe integration of Sky ATP with Mist is a strategic move to enhance the security posture of wireless networks by leveraging the capabilities of both solutions.\n\n\nThe integration of Sky ATP with Mist enhances the security of wireless networks by providing real-time threat alerts and mitigation capabilities. Here are the key benefits of this integration:\n\n* Enhanced Security: Adds another layer of security to the robust mechanisms already in place within the Mist WLAN platform. It leverages artificial intelligence (AI) for tighter security, lower operational costs, and optimized user experience.\n* Real-Time Threat Detection: Quickly identifies devices on the network that are infected with malware and takes appropriate actions. This ensures that security risks are assessed and mitigated promptly when users and devices are connected to wireless networks.\n* Improved Device Tracking: Allows for better tracking of client hosts as Mist supplies client MAC addresses to Juniper ATP Cloud. This information is crucial for identifying and mitigating threats.\n* Streamlined Security Events: Threat alerts detected by Juniper SRX Series Firewalls and ATP Cloud are automatically streamed to Mist, enabling administrators to quickly assess security risks and take appropriate actions such as quarantine or enforce security policies.", "name": "Orgs Integration SkyATP"}, {"description": "Juniper Support Insight is a free service provided to all Mist customers.\nYou can adopt your devices via a few lines CLI commands. 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"}, {"description": "Licenses are a type of service or access that customers can purchase for various features or services offered by a company.\n\nSubscriptions can have different statuses, such as active, expired, exceeded, or trial, depending on their validity and usage. The status of a subscription determines whether it is currently active and valid, has expired, has exceeded the allowed usage limit, or is in a trial period.\n\nLicenses can be activated using an activation code, and the activation process confirms the inputted code and activates the subscription.", "name": "Orgs Licenses"}, {"description": "Linked Application are Third party applications linked to the Mist Organization. \nThis is usually using OAuth2.0 or API integrations for a Cloud-to-Cloud Communication.", "name": "Orgs Linked Applications"}, {"description": "Audit Logs are records of activities initiated by users, providing a history of actions such as accessing, creating, updating, or deleting resources or components at the Org level.\n\nThese logs allow superusers and network administrators to track and maintain a record of user actions, including who performed specific actions and when.\n\nAudit logs are useful for monitoring user activity, investigating security breaches, ensuring compliance with regulations, and tracing configuration changes in a network.\n\nThey can be filtered and analyzed to view specific information and granular-level details of each event.", "name": "Orgs Logs"}, {"description": "Marvis is an AI-driven, interactive virtual network assistant that streamlines network operations, simplifies troubleshooting, and provides an enhanced user experience.\nIt offers real-time network visibility, comprehensive insights, and automation customized for your network.\nMarvis can proactively identify issues, interpret their impact, determine root causes, and recommend fixes.\nIt consists of components such as Marvis Actions, Marvis Minis, Conversational Assistant, Marvis Client, and Marvis Query Language.", "name": "Orgs Marvis"}, {"description": "These API Calls to import Site Maps at the Org level", "name": "Orgs Maps"}, {"description": "A Mist Edge Cluster (MxCluster) is a group of Juniper Mist Edge devices that are configured to work together in order to provide high availability and load balancing for the tunneling of traffic from access points (APs). The cluster can consist of a single edge device or multiple edge devices.", "name": "Orgs MxClusters"}, {"description": "A Mist Edge (MxEdge) is a physical or virtual appliance that is deployed in a network to provide centralized data path for user traffic or as a RADIUS Proxy, which was traditionally performed by legacy wireless controllers. It keeps all the control and management functions in the Mist Cloud, offering a microservices architecture to the campus.", "name": "Orgs MxEdges"}, {"description": "A Mist Tunnel (MxTunnel) is a configuration object that allows for the tunneling of user VLANs from the Access Points (APs) to a central point on the network.\n\nIt specifies the VLAN IDs that need to be tunneled and assigns the tunnel to a primary or secondary mist edge cluster. The mist tunnel also includes settings for tunnel fail over, auto-preemption, and other parameters related to tunnel termination services.", "name": "Orgs MxTunnels"}, {"description": "The NAC IDP allows users to integrate with various Identity Providers (IDPs) to enhance authentication and access control. Admins can configure identity providers such as microsoft EntraID, okta workforce identity cloud, and google workspace idp.", "name": "Orgs NAC IDP"}, {"description": "The NAC IDP allows users to integrate with various Identity Providers (IDPs) to enhance authentication and access control. Admins can configure identity providers such as microsoft EntraID, okta workforce identity cloud, and google workspace idp.", "name": "Sites NAC Fingerprints"}, {"description": "NAC Tags are the building blocks to compose nacrules.\nThey 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.\nWhen the \"type\" field of nactag is \"match\", it can be used as the classifier of a nacrule.\n- \"match\" field specifies the attribute name and \"values\" field specifies the list of attribute values to match on.\n- When multiple values are specified, its treated as an OR condition between those values. This behavior can be changed by setting \"match_all\" field to \"true\", in which case it is treated as an AND condition between those values.\n- By default, exact match is performed.\n\nThis behavior can be changed as follows:\n- Adding `-` at the beginning will perform suffix match (ex: -staff will match foo-staff and bar-staff)\n- Adding `-` at the end will perform prefix match (ex: foo- will match foo-staff and foo-interns)\n- Adding `!` at both ends will perform substring match (ex: printer will match hp-printer-bldg1, brother-printer-lab)\n- Adding `!` at the beginning will perform negation of the match (ex: !ssid-guest will match any string that is not ssid-guest)\n- Note: when negation should be used along with suffix/substring operation, ! should always precede \\* (ex: !guest will match any string that is not ending with guest)\n\nWhen 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. When the \"type\" field of nactag is NOT \"match\" and is any of the result type also supported by usermac table(`vlan`), \"allow_usermac_override\" field can be set to true to allow the override by usermac result", "name": "Orgs NAC Tags"}, {"description": "NAC Portals are for onboard Wireless and Wired client with 802.1X\n\nThe NAC Portal is a web-based interface that allows users to authenticate and\ngain access to the network. It is typically used for guest access or for devices\nthat do not have a pre-configured certificate for 802.1X authentication.\n\nIt can also be used to provision certificates for devices that require them with the Mist Application.\n\n\n### NAC-Based External Guest Portal Authorization / How to implement a External Guest Portal\n\n#### Context\n\nIn the guest portal flow, context such as SSID, guest MAC, AP MAC is required to unique identify the guest, if it's already authorized (e.g. roam to another AP), and used to instruct the AP to stop redirecting/blocking the user traffic\n\n#### Redirect\n\nGuest Device (or CNA in MacOS/iOS term) will be redirected to, e.g. \u201c?ap_mac=5c5b35001234&ssid=Guest&\u2026\u201d\n\n| Name | Type | Description |\n |------|------|-------------|\n | ap_mac | string | AP's MAC address |\n | site_id | string | Site ID |\n | device_mac | string | Device's MAC address (the device that blocks the traffic) |\n | ssid | string | for wireless |\n | port_name | string | for wired (e.g. eth0, ge-0/0/13) |\n | client_mac | string | Client's MAC address |\n \n\n#### Authorize\n\nOnce the guest has gone through your portal flow, authorize them by redirect the user to\n\n```\nGET https://url_generated_by_portal_authorize_url?jwt=\n```\n\nThis can be generated by\n\n```python\nimport jwt\n\nsecret = \"EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY\" # from portal_authorize_jwt_secret above \npayload = {\n # for wireless\n \"ap_mac\": \"5c5b35001234\",\n \"wlan_id\": \"be22bba7-8e22-e1cf-5185-b880816fe2cf\", # only for _wireless_ captive portal\n \"client_mac\": \"d58f6bb4c9d8\",\n\n # for wired\n \"device_mac\": \"5c5b35001234\",\n \"port_name\": \"eth0\", # only for _wired_ captive portal\"\n \"client_mac\": \"d58f6bb4c9d8\",\n\n # common\n # how long should we authorize this session\n \"minutes\": 480, \n \"expires\": 1768587994, # alternatively\n # instead of the original URL the user is trying to go to, redirect the user to this URL \n \"forward\": \"http://www.mist.com\",\n # for testing: if authorize_only=true and authorization is successful, 200 OK will be returned instead of 302 Redirect the user to the `forward` URL\n \"authorize_only\": False\n}\n\nencoded_jwt = jwt.encode(payload, secret, algorithm='HS256')\n```\n", "name": "Orgs NAC Portals"}, {"description": "By default, Mist is automatically retrieving the PKI CRL by using the CRL Distribution Point provided by Certification Authority.\n\n\nIn case this information is not provided, or the CRL is not publicly available (i.e. Mist cannot get access to it), these API Calls can \nbe used to manually upload and manage the PKI CRL into the Mist Organization.", "name": "Orgs NAC CRL"}, {"description": "API Calls to retrieve statistics about the Mist Org and related items", "name": "Orgs Stats"}, {"description": "API Calls to retrieve statistics about the Assets at the Org level", "name": "Orgs Stats - Assets"}, {"description": "API Calls to retrieve statistics about the BGP Peers (WAN Assurance)", "name": "Orgs Stats - BGP Peers"}, {"description": "API Calls to retrieve statistics about the Mist Managed and Monitored Devices at the Org level\n\n\nBy default, the API call only returns a subset of the available fields. Additional fields can be requested by adding the query parameter `fields=` and the list of fields, or `fields=*` to retrieve all the available fields.", "name": "Orgs Stats - Devices"}, {"description": "API Calls to retrieve statistics about the Mist Edges at the Org level", "name": "Orgs Stats - MxEdges"}, {"description": "API Calls to retrieve statistics about OSPF peers at the Org level", "name": "Orgs Stats - Ospf"}, {"description": "API Calls to retrieve statistics about the Other/3rd party devices at the Org level", "name": "Orgs Stats - Other Devices"}, {"description": "API Calls to retrieve statistics about the Wired Ports at the Org level", "name": "Orgs Stats - Ports"}, {"description": "API Calls to retrieve statistics about the Organization Sites", "name": "Orgs Stats - Sites"}, {"description": "API Calls to retrieve statistics about the Mist Tunnels at the Org level", "name": "Orgs Stats - Tunnels"}, {"description": "API Calls to retrieve statistics about the VPN Peers (WAN Assurance)", "name": "Orgs Stats - VPN Peers"}, {"description": "The NAC Rules (or Auth Policies) are a set of rules that devices and users must fulfill in order to gain access to the network and use network resources.\n\nJuniper Mist Access Assurance evaluates authentication requests based on the specified policy conditions. If a user or device satisfies the conditions, Mist Access Assurance applies actions that either allow or deny access to the user or device.\n\nThese actions can also apply attributes such as VLAN and role to the allowed users. Mist Access Assurance uses \"NAC Tags\" (or Auth Policy Labels) as the policy matching criteria and as a policy action for allowed users. NAC Tags can be managed with the [Orgs NAC Tags API Calls]($h/Orgs%20NAC%20Tags/_overview)", "name": "Orgs NAC Rules"}, {"description": "A Network Template is a configuration template that allows for the consistent and standardized configuration of switches across an organization's network infrastructure.\n\nIt includes settings such as RADIUS and ntp servers, shared elements like iot or corporate networks, and port profiles for specific devices.\n\nSwitch templates can be applied at the site level, and they make the initial setup of switches easy and adaptable to specific site or switch settings.", "name": "Orgs Network Templates"}, {"description": "A Network refers to a group or segment of users that are defined for use across the entire organization.", "name": "Orgs Networks"}, {"description": "Premium Analytics is an advanced, cloud-based analytics service offered by Juniper Mist. It provides end-to-end network observability and allows users to gain unique insights into networking and location based on Juniper Mist data sets and optional third-party data sets.\n\nPremium Analytics stores data for up to 13 months, extending the observability of historical data beyond the 30 days available with the standard Juniper Mist analytics service. It supports features such as network, engagement, and occupancy analytics, and offers the ability to customize reports and filter data based on various parameters.", "name": "Orgs Premium Analytics"}, {"description": "A multi PSK (Pre-Shared Key) is a feature that allows the use of multiple PSKs for securing network connections.\n\nIt provides a simple and comprehensive way to onboard client devices without relying on client MAC addresses.\n\nEach psk has its own key name, which can be used for user-level accountability, key rotation, and visibility in the management platform. It supports the creation, rotation, and auto-expiration of PSKs, and allows vlan assignment and role assignment for dynamic per-user policies.\n\nMulti PSKs create virtual broadcast domains and can be used for end-user onboarding via authenticated sso login.\n\nMist supports three methods of Org PSKs lookup: * local * RADIUS * cloud", "name": "Orgs Psks"}, {"description": "PSK Self-Service Portals are for\n1. **Wi-Fi users** who want to connect to a WLAN with personal PSK, they're told to connect to a URL where they can login (likely through company\\u2019s SSO) and get the Wi-Fi Name / Passphrase - required input fields name, email so we can generate PSK\n2. **PSK Admins** (they don't have access to normal Network Admin Portal)\n\nWhen a PSK portal is created, an unique URL will be generated (e.g. https://psk.mist.com/xxxxxx)", "name": "Orgs Psk Portals"}, {"description": "API Calls to manage organization-level reports, such as E911 AP BSSID report exports.", "name": "Orgs Reports"}, {"description": "Rf Templates are a feature in Juniper Mist wireless assurance that allow for uniform radio configurations to be applied across all sites in an organization.\n\nThese templates can be customized to include model-specific exceptions and settings for different use cases.\n\nRF Templates enable the management of radio bands, channel width, transmission power, and ap antenna gain.\n\nThey provide a centralized way to configure and apply these settings to all access points within an organization.", "name": "Orgs RF Templates"}, {"description": "SDK Invites can be generated for (and belongs to) an Org. They can be generated by an Admin of an Org and can be revoked at anytime.", "name": "Orgs SDK Invites"}, {"name": "Orgs SDK Templates"}, {"description": "Security Policy is designed to audit / catch discrepancies between\n\"what's intended to be running\" versus \"what's actually running\" in a network. \n\nMany big organizations have separated Security and IT team (for good reasons). Each site can be assigned a security policy.\n Whenever an AP is provisioned, the configuration will be checked against the security policy.\n Any violations will be flagged in [Device Config History](/#operations/searchSiteDeviceConfigHistory) where you can search for the when and where the violation occurs.", "name": "Orgs Security Policies"}, {"description": "A Service refers to the applications that network users will connect to. These applications represent traffic destinations and are essential for defining network policies and security configurations.\n\nApplications can be defined manually in the Juniper Mist cloud portal. They can be categorized as: * Custom Applications: Defined using IP prefixes, protocols, and port ranges. * Predefined Applications: Selected from a list of common applications (e.g., Social Media, Microsoft Teams). * URL Categories: Used to define applications based on specific URLs.", "name": "Orgs Services"}, {"description": "Services Policies are a security policy that defines who can access applications, they are used to control access to applications and ensure proper traffic management within a network.\n\nIt determines the source network or users that are allowed or denied access to specific applications or destinations.\n\nThe policy also includes options such as traffic steering profiles, which define the paths that the traffic should follow.\n\nService policies can be defined at the organization level or within a wan edge template or hub profile.", "name": "Orgs Service Policies"}, {"description": "API Calls to manage the Mist Organization Settings", "name": "Orgs Setting"}, {"description": "Site groups are a group of sites under the same Org. It's many-to-many mapping to sites", "name": "Orgs Sitegroups"}, {"description": "API Calls to Create or Get the Organization Sites.\n\n\nUse the [Site Settings](https://www.juniper.net/documentation/us/en/software/mist/api/http/api/sites/setting/overview) to configure or update the Site information.", "name": "Orgs Sites"}, {"description": "Site templates are pre-configured sets of attributes and settings that can be applied to one or more sites in a Mist Organization.\n\nThese templates allow for quick and consistent configuration of sites by grouping common attributes together.\n\nThey can include settings such as Auto-Upgrade features, wan edge configurations, switch configurations and other network parameters.\n\nBy applying a site template, the same configuration can be easily replicated across multiple sites, simplifying network management and ensuring consistency.", "name": "Orgs Site Templates"}, {"description": "Org SLEs, or Service-Level Expectations, are metrics used to monitor and report on the user experience of a Wireless, Wired or Wan network.\n\nThey are generated through data science and machine learning algorithms and provide insights into various aspects of the network, such as coverage, capacity, connectivity, and performance.\n\nMist SLEs help identify when users do not have sufficient network quality, when they face issues with connecting or roaming between access points, and when there are problems on the wired network.", "name": "Orgs SLEs"}, {"description": "SSO roles refer to the different functions assigned to users within a Single Sign-On (SSO) system.\n\nThese roles determine the tasks and actions that users can perform within the SSO system. There are typically predefined roles and custom roles in an SSO system.\n\nRoles in SSO provide a well-defined separation of responsibility and visibility, allowing for granular-level access control on SSO objects.", "name": "Orgs SSO Roles"}, {"description": "Org SSO, or Single Sign-On, is a method of authentication that allows users to securely log in to multiple applications and websites with a single set of login credentials.\n\nIt involves integrating the Org portal with an Identity Provider (IdP) using the Security Assertion Markup Language (SAML) framework.\n\nThis enables users to authenticate themselves through their corporate IdP, eliminating the need to remember separate passwords or enter credentials each time they access the Org portal.", "name": "Orgs SSO"}, {"description": "A WLAN template is a collection of WLAN policies, Tunneling Policies, and WxLAN policies. \nIt is used for creating and managing WLAN configurations at an organizational level. \n\n\nWLAN templates allow for modular and scalable configuration by grouping together the settings for multiple SSIDs. \nThese templates can be applied to specific sites, site groups, or the entire organization, making it easier to manage and automate configuration across multiple locations. \n\n\nWLAN templates are especially useful for organizations with multiple sites or plans for future expansion.", "name": "Orgs WLAN Templates"}, {"description": "Support tickets are a means for users to seek assistance and resolve issues they encounter with a product or service.\nThey allow users to communicate their problems or questions to the Juniper Mist support team, who can then provide guidance, troubleshooting, or solutions.\nSupport tickets typically include information such as the type of issue, relevant details, and any necessary attachments.", "name": "Orgs Tickets"}, {"description": "NAC User MACs (Endpoints) provide a database of endpoints identified by their MAC addresses. They can be used assign each endpoint with various attributes, such as name, VLAN, role and client label. Once an endpoint is labeled, the label name can be used to create [NAC Tags]($h/Orgs%20NAC%20Tags/_overview) as match criteria.\n\n[NAC Tags]($h/Orgs%20NAC%20Tags/_overview) can be used to create Tags regrouping one or multiple endpoint MAC addresses, but the use of the User MACs provides additional features:\n* possibility to assign specific attributes, like a Name, a RADIUS Group, a VLAN ID, ...\n* possibility to assign one or multiple Tags (Labels) to a User MAC\n* improved management for large list of MAC addresses", "name": "Orgs User MACs"}, {"description": "Vars endpoints are used to retrieve the list of Site Variables across all the Sites.", "name": "Orgs Vars"}, {"description": "VPNs endpoints are used to create the WAN Assurance Overlay configuration between a Hub and one\nor multiple WAN Edge Gateways.\n\n\nWhen configuring the Hub and Spokes from the Mist UI, the UI is automatically creating or updating\nthe VPNs objects based on the configuration. \nWhen the configuration is directly done with the APIs, the VPN object must be manually managed.", "name": "Orgs VPNs"}, {"description": "An Org Webhook is a configuration that allows real-time events and data from the Org to be pushed to a provided url.\n\nIt enables the collection of information about various topics such as device events, alarms, and audits updates at the org level.\n\nThe Webhook can be set up and customized using the Mist API, allowing users to receive and analyze specific data from a particular site.", "name": "Orgs Webhooks"}, {"description": "An Org Wlan is a wireless local area network that is configured at the Org level and applied to a WLAN template.\n\nIt allows for the creation and management of wireless network settings, such as SSIDs (service set identifiers), authentication settings, VLAN configurations, etc...\n\nOrg WLANs are created and managed at the org level and can only be referenced and used within the WLAN Templates.", "name": "Orgs Wlans"}, {"description": "ORg WxRules are a set of rules, restrictions, and settings that can be applied to WLANs within a specific WLAN Template.\n\nThese policies determine how the devices and traffic are treated by the network and can be used to control access, define VLANs, and apply labels to users and resources.", "name": "Orgs WxRules"}, {"description": "Wxtags are tags or groups that can be created and used within the Org.\n\nThey are used to classify users and resources and can be applied to Access Points, WLAN configurations or WxRules within that site.\n\nOrg WxTags are created and managed at the org level and can only be referenced and used within the org level configuration.", "name": "Orgs WxTags"}, {"description": "A WxLan Tunnel (WxTunnel) are used to create a secure connection between Juniper Mist Access Points and third-party VPN concentrators using protocols such as L2TPv3 or dmvpn.\n\nThese tunnels allow for the aggregation of ethernet interfaces on access points, support dynamic or static tunnels, and provide options for IPSec encryption.", "name": "Orgs WxTunnels"}, {"description": "The Spectrum Analysis feature provides insights into the radio frequency environment, helping to identify interference and optimize wireless network performance. It allows users to monitor and analyze the spectrum usage in their vicinity.", "name": "Sites Spectrum Analysis"}, {"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"}, {"description": "Alarms are triggered based on certain events. Alarms could be configured using an [Orgs Alarm Template]($h/Orgs%20Alarm%20Templates/_overview).", "name": "Sites Alarms"}, {"description": "AP Templates are defining Wi-Fi and AP settings that can be assigned to Access Points based on different types of rules.\n\nSite AP Templates are created and managed at the site level and can only be referenced and used within that particular site.", "name": "Sites AP Templates"}, {"description": "Applications contains a list of applications users are interested in monitoring / routing / policing", "name": "Sites Applications"}, {"name": "Sites Anomaly"}, {"description": "Auto Map Assignment allows devices to be automatically assigned to maps based on their location data. These API calls can be used to manage, apply, and clear auto map assignments for devices at the site level.", "name": "Sites Auto Map Assignment"}, {"description": "An Asset Filter is a feature that allows users to define specific criteria or conditions to filter and display only certain assets based on their attributes or properties.\n\nSite Asset Filters are created and managed at the site level and can only be referenced and used within that particular site.\n\nThis requires the Asset Visibility subscription.", "name": "Sites Asset Filters"}, {"description": "An Asset refers to any equipment or item that is being tracked and monitored using Bluetooth Low Energy (BLE) beacon tags.\n\nThis requires the Asset Visibility subscription.", "name": "Sites Assets"}, {"name": "Sites Beacons"}, {"description": "NAC Clients are devices connected to the network and authenticated by Juniper Mist Access Assurance.", "name": "Sites Clients - NAC"}, {"description": "WAN Clients are devices connected to a Juniper SRX or SSX gateway monitor or managed by Mist", "name": "Sites Clients - Wan"}, {"description": "Wired Clients are Wired devices connected to a Juniper switch monitored or managed by Mist.", "name": "Sites Clients - Wired"}, {"description": "Wireless Clients are Wi-Fi devices connected to a Juniper Mist Access Point.", "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.\n\nThe precedence goes from most specific to least specific\n\nDevice > Device Profile > RFTemplate (for AP only) > DeviceType-specific Template > Site Template > Site Setting", "name": "Sites Devices"}, {"description": "API Calls specific to the Mist Access Points", "name": "Sites Devices - Wireless"}, {"description": "API Call for 3rd party devices", "name": "Sites Devices - Others"}, {"description": "API Calls specific to the Juniper Switches managed by Mist", "name": "Sites Devices - Wired"}, {"description": "API Calls specific to the Juniper Switches Virtual Chassis managed by Mist", "name": "Sites Devices - Wired - Virtual Chassis"}, {"description": "API Calls specific to manage (form/delete) the SRX/SSR Clusters", "name": "Sites Devices - WAN Cluster"}, {"description": "The API Endpoints for the Device Profiles at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved..", "name": "Sites Device Profiles"}, {"description": "Orgs Events are all the system level changes at the org level", "name": "Orgs Events"}, {"description": "Site events are issues or incidents that affect site-assigned access points (aps) and radius, dhcp, and dns servers.\n\nThey can be investigated and monitored using the insights dashboard in the juniper mist portal. the dashboard provides a summary of site events, including information about the impacted devices and contributing events.\n\nSite events can be categorized as resolved or acknowledged, and additional details can be accessed by clicking on the event.", "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.\n\nIn our implementation, following the steps to deploy EVPN topologies in a Site", "name": "Sites EVPN Topologies"}, {"description": "The API Endpoints for the Gateway Templates at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved..", "name": "Sites Gateway Templates"}, {"description": "The API Endpoints for the IDP Profiles at the site level can be used to get the site derived profiles, meaning the org level configuration with the site variables resolved..", "name": "Sites IDP Profiles"}, {"description": "The API Endpoints for the Advanced Anti Malware Profiles at the site level can be used to get the site derived profiles, meaning the org level configuration with the site variables resolved..", "name": "Sites Advanced Anti Malware Profiles"}, {"description": "The API Endpoints for the Antivirus Profiles at the site level can be used to get the site derived profiles, meaning the org level configuration with the site variables resolved..", "name": "Sites Antivirus Profiles"}, {"description": "Guests are users who are accessing the wi-fi network as a temporary or non-permanent visitor.", "name": "Sites Guests"}, {"description": "Insights is a feature that provides an overview of network experience across the entire site, access points, or clients.\n\nIt offers useful information about current conditions, such as telemetry data from wired switches, edge devices, wireless clients, access points, network applications, and bluetooth low energy (ble) tags.\n\nThese insights can be used to correct issues, make changes, and ensure a good network experience for users.", "name": "Sites Insights"}, {"description": "JSE stands for Juniper Secure Edge and it is a feature within the Mist UI that allows customers to configure Secure Cloud Connectors.\n\nWith JSE, users can establish a tunnel via IPSec protocol and use application policy and traffic steering to send traffic from a WAN edge device to JSE. Mist also provides insights and telemetry for the secure edge connection, which is helpful for troubleshooting and monitoring data.", "name": "Sites JSE"}, {"description": "The API Endpoints for the Licenses at the site level can be used to get license usages for a specific site.", "name": "Sites Licenses"}, {"description": "The Location Diagnostics allows users to retrieve and analyze coverage and performance data for mist access points (aps) and devices.", "name": "Sites Location"}, {"description": "A Site Map is a visual representation of the layout and structure of a location, such as a building or campus.\n\nIt includes accurate information about the placement, positions, heights, and orientations of Juniper Mist Access Points (APs) and other devices in the deployment.\n\nThe floorplan is an essential component of location services as it enables the location engine to generate accurate location estimates for client devices, assets, and users at the site.", "name": "Sites Maps"}, {"description": "### AP Auto-Placement\nAP Auto-Placement is a feature in Juniper Mist wireless assurance that automatically determines and sets the positions of Access Points (APs) on a floorplan.\n\nIt saves time and simplifies the deployment process by eliminating the need for manual placement. \n\nThe autoplacement algorithm calculates the most probable location for each AP based on factors such as signal strength and coverage requirements. \n\nThe confidence level of the autoplacement is indicated by colors, with green representing high certainty, orange indicating medium certainty, and red suggesting low certainty. \nIn cases where aps are isolated or cannot communicate with nearby aps, they cannot be placed automatically and must be [manually positioned on the floorplan](/#operations/updateSiteDevice). \n\nAfter the autoplacement process is complete, the results can be evaluated and accepted of rejected with the API Call [Confirm Site AP Localization Data](/#operations/confirmSiteApLocalizationData)\n\n\n### AP Auto-Orientation\nAp Auto-Orientation is a feature in juniper mist wireless assurance that allows users to check and correct the orientation of Access Points (APs) on a floorplan. \n\nThis feature is supported by specific ap models and requires a firmware dependency of version 0.14.28310 or higher and does not require a maintenance window and can be used after performing autoplacement. \n\nTo use auto-orientation, physically install the APs, claim or adopt them into the Juniper Mist organization, place them on the floorplan, and perform auto-placement, then trigger the [Start Site Ap Auto Orientation API call](/#operations/startSiteApAutoOrientation)\n\nAfter 24 hours, the rotation in degrees of the AP(s) will be updated. users can accept or deny the changes made by the auto-orientation feature with the API Call [Confirm Site AP Localization Data](/#operations/confirmSiteApLocalizationData).", "name": "Sites Maps - Auto-placement"}, {"description": "The auto zones service is a map parsing service that uses map image data to suggest spaces to designate as location zones.", "name": "Sites Maps - Auto-Zone"}, {"description": "Map Stacks are a way to group multiple maps together within a site, typically representing different floors or levels in a building. Map Stacks help organize and manage floorplans for multi-story buildings or complex deployments.", "name": "Sites Map Stacks"}, {"description": "Marvis Config Actions are config changes injected by Marvis into network devices. These actions can be searched, counted, deleted, and given feedback.", "name": "Sites Marvis Configs"}, {"description": "MxEdges (Mist Edges) at the site level are deployed to tunnel traffic at each site due to network constraints or security concerns.\n\nThey can be assigned to a specific site and configured to provide tunneling and RADIUS proxy services for the access points (APs) in that site.\n\nThese Mist Edges allow for the extension of user vlans from the corporate network to the aps, and they support features such as auto preemption for failover, dual tunneling to different mist edge clusters, and anchor tunnels for traffic routing to dmz areas.", "name": "Sites MxEdges"}, {"description": "The API Endpoints for the Network Templates at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved.", "name": "Sites Network Templates"}, {"description": "The API Endpoints for the Networks at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved.", "name": "Sites Networks"}, {"description": "A multi PSK (Pre-Shared Key) is a feature that allows the use of multiple PSKs for securing network connections.\n\nIt provides a simple and comprehensive way to onboard client devices without relying on client MAC addresses.\n\nEach psk has its own key name, which can be used for user-level accountability, key rotation, and visibility in the management platform. It supports the creation, rotation, and auto-expiration of psks, and allows vlan assignment and role assignment for dynamic per-user policies.\n\nMulti PSKs create virtual broadcast domains and can be used for end-user onboarding via authenticated sso login.\n\nMist supports two methods of Site PSKs lookup: * local * radius", "name": "Sites Psks"}, {"description": "The API Endpoints for the RF Templates at the site level can be used to get the site derived configuration, meaning the org level configuration with the site variables resolved..", "name": "Sites RF Templates"}, {"description": "Rf Diags is a feature in Juniper Mist location services that allows users to replay recorded sessions of the RF (radio frequency) environment.\n\nIt enables users to gain an understanding of current issues, troubleshoot problems, and review recordings for further analysis or to share with customer support.", "name": "Sites Rfdiags"}, {"description": "Rogues are unauthorized wireless access points that are installed on a network without authorization.\n\nThey can be connected to the LAN via an ethernet cable, similar to a pc, and are typically set up by individuals with malicious intent or by employees trying to cover a dead spot with their own wi-fi hotspot.", "name": "Sites Rogues"}, {"description": "RRM, or Radio Resource Management, is a tool used by large multi-site organizations to efficiently manage their RF spectrum.\n\nIt involves making decisions on channel and power settings for access points (APs) based on factors such as user experience, client count, client usage, and interference.\n\nMist RRM uses a reinforcement learning-based feedback model to monitor the impact of changes in channel and power settings on the capacity and performance of the wireless network. It adapts dynamically to changing conditions throughout the day and aims to optimize wireless coverage and capacity across a site.", "name": "Sites RRM"}, {"description": "RSSI Zones are zones based on the RSSI (Received Signal Strength Indicator, i.e. the power of the signal received by the Access Points from the Wireless Clients).", "name": "Sites RSSI Zones"}, {"description": "A Service represents an a traffic destination or an application that network users connect to. They are associated with users and networks and are used in application policies to permit or deny access.\n\nServices are defined at the [Org level](/#operations/createOrgService).\n\nThe Site level endpoints can be used to get the site services statistics or the derived services, meaning the merge between the site level configuration and the org level configuration.", "name": "Sites Services"}, {"description": "The API Endpoints for the Service Policies at the site level can be used to get the site derived configuration, meaning the merge between the site level configuration and the org level configuration.", "name": "Sites Service Policies"}, {"description": "Site settings refer to the configuration and management of of site within a Mist Organization.\n\nThese settings include access point settings, firmware upgrade schedules, and various features such as location services, occupancy analytics, and engagement analytics.", "name": "Sites Setting"}, {"description": "The API Endpoints for the Site Templates at the site level can be used to get the site derived configuration, meaning the org level configuration with the site variables resolved..", "name": "Sites Site Templates"}, {"description": "SkyATP is a cloud-based solution that provides advanced threat protection for network security.\n\nIt allows security analysts to update their defense against new attack techniques in real-time and distribute threat intelligence quickly.\n\nSkyATP inspects network traffic and blocks devices that have downloaded malware or accessed command and control servers. It also offers configuration and troubleshooting capabilities for administrators.", "name": "Sites Skyatp"}, {"description": "Site SLEs, or Service-Level Expectations, are metrics used to monitor and report on the user experience of a Wireless, Wired or Wan network.\n\nThey are generated through data science and machine learning algorithms and provide insights into various aspects of the network, such as coverage, capacity, connectivity, and performance.\n\nMist SLEs help identify when users do not have sufficient network quality, when they face issues with connecting or roaming between access points, and when there are problems on the wired network.", "name": "Sites SLEs"}, {"description": "Synthetic Tests (Marvis Minis) are a feature of Juniper Networks' Mist platform, designed to proactively identify and resolve network issues before they impact users by simulating user connections and validating network configurations.\n\n\nHere are the key points about Marvis Minis:\n\n* Proactive Testing: Marvis Minis perform user connection tests to validate connectivity and application reachability issues on your network. These tests run automatically every hour and can also be initiated manually by an admin user.\n* Scope and Stress Management: By default, Marvis Minis run on a few APs based on the scope it automatically learns, and it can expand the scope to other APs and switches if necessary, without causing additional stress on network services.\n* Integration with Mist AI: Data from Marvis Minis is continuously fed back into the Mist AI engine, providing additional insights for AIOps responses. This data is also integrated into Marvis Actions for proactive resolution and validation.\n* Subscription and Accessibility: Marvis Minis are available at no extra charge with a Marvis VNA subscription and do not require additional hardware or software.", "name": "Sites Synthetic Tests"}, {"description": "The Site UI Settings are used to configure the site Network and Analytics reports", "name": "Sites UI Settings"}, {"description": "The Org UI Settings are used to configure the MArvis dashboards", "name": "Orgs UI Settings"}, {"description": "A vBeacon is a virtual beacon that is created and configured on a floorplan and are configured with a name and message\n\nIt is a Mist patented technology that provides proximity-related notifications to users on a mobile app using the Mist SDK.\n\nvBeacons allow users to receive notifications when their device is within the proximity of the beacon, based on the power transmitted. When a user goes near the location of a vbeacon, a notification is sent to the application with the configured message.", "name": "Sites vBeacons"}, {"description": "API Calls to retrieve the list of Org VPNs configuration available for the Site", "name": "Sites VPNs"}, {"description": "API Calls to retrieve WAN Assurance statistics about the WAN Usage", "name": "Sites WAN Usages"}, {"description": "A Site Webhook is a configuration that allows real-time events and data from a specific site to be pushed to a provided url.\n\nIt enables the collection of information about various topics such as device events, alarms, audits, client sessions and location updates at the site level.\n\nThe Webhook can be set up and customized using the Mist API, allowing users to receive and analyze specific data from a particular site.", "name": "Sites Webhooks"}, {"description": "A Site Wlan is a wireless local area network that is configured and applied to a specific site within an organization.\n\nIt allows for the creation and management of wireless network settings, such as SSIDs (service set identifiers), authentication settings, VLAN configurations, etc... for a particular site.\n\nSite Wlans are created and managed at the site level and can only be referenced and used within that particular site.", "name": "Sites Wlans"}, {"description": "Site WxRules are a set of rules, restrictions, and settings that can be applied to WLANs within a specific site.\n\nThese policies determine how the devices and traffic are treated by the network and can be used to control access, define VLANs, and apply labels to users and resources.\n\nSite WxRules are created and managed at the site level and are applied after the site-level WxRules.", "name": "Sites WxRules"}, {"description": "Wxtags are tags or groups that can be created and used within a specific site.\n\nThey are used to classify users and resources and can be applied to Access Points, WLAN configurations or WxRules within that site.\n\nSite WxTags are created and managed at the site level and can only be referenced and used within that particular site.", "name": "Sites WxTags"}, {"description": "A WxLan Tunnel (WxTunnel) are used to create a secure connection between Juniper Mist Access Points and third-party VPN concentrators using protocols such as L2TPv3 or dmvpn.\n\nThese tunnels allow for the aggregation of ethernet interfaces on access points, support dynamic or static tunnels, and provide options for IPSec encryption.", "name": "Sites WxTunnels"}, {"description": "A Zone is a custom area defined by a user on a floor plan.\n\nZones can be used for capturing entry and exit events of clients, assets, and sdk clients, providing insights such as wait time and the number of devices in a particular zone.\n\nZone notifications can be accessed using sdk notification callbacks.\n\nZones are useful for data collection specific to areas on the floor plan.", "name": "Sites Zones"}, {"description": "The stats are providing access to raw data about a specific type of entities.", "name": "Sites Stats"}, {"description": "API Calls to retrieve the stats of the Applications used on side", "name": "Sites Stats - Apps"}, {"name": "Sites Stats - Assets"}, {"name": "Sites Stats - Beacons"}, {"description": "API Calls to retrieve BGP Peers statistics of the Site Wen Edge Gateways at the Site level", "name": "Sites Stats - BGP Peers"}, {"description": "API Calls to retrieve the stats of the calls (Zoom/Teams) detected by Mist", "name": "Sites Stats - Calls"}, {"description": "API Calls to retrieve the stats of the wireless clients detected (connected or not connected) on this site.", "name": "Sites Stats - Clients Wireless"}, {"description": "SDK Clients are devices that have installed an application using the Mist Software Development Kit (SDK).\n\nThese clients can provide specific data and information that is not available without the installation of the SDK application.", "name": "Sites Stats - Clients SDK"}, {"description": "API Calls to retrieve statistics about the Mist Managed and Monitored Devices at the Site level", "name": "Sites Stats - Devices"}, {"description": "API Calls to retrieve statistics about the Mist Edges at the Site level", "name": "Sites Stats - MxEdges"}, {"description": "API Calls to retrieve statistics about OSPF peers at the Site level", "name": "Sites Stats - Ospf"}, {"description": "API Calls to retrieve statistics about the Wired Ports at the Site level", "name": "Sites Stats - Ports"}, {"description": "API Calls to retrieve WxRules statistics for the current Site", "name": "Sites Stats - WxRules"}, {"description": "API Calls to retrieve Zones statistics for the current Site", "name": "Sites Stats - Zones"}, {"description": "API Calls to retrieve statistics about the Discovered Switches at the Site level", "name": "Sites Stats - Discovered Switches"}, {"description": "API Calls to retrieve IoT Endpoint statistics for the current Site", "name": "Sites Stats - IoT Endpoints"}, {"description": "API Calls to retrieve constant values that can be used in different parts of the configuration", "name": "Constants Definitions"}, {"description": "API Calls to retrieve the definitions of the Mist events. These definitions are providing example of the Webhook payloads", "name": "Constants Events"}, {"description": "API Calls to retrieve the list of Hardware Models and their features", "name": "Constants Models"}, {"description": "API calls related to the currently connected user account.", "name": "Self Account"}, {"description": "Like many other API providers, it's also possible to generate API Tokens to be used (in HTTP Header)\n for authentication. An API token ties to a Admin with equal or less privileges.\n\n**Notes:**\n\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](/#operations/createOrgApiToken) which can have privileges of a specific Org/Site for more information.", "name": "Self API Token"}, {"description": "A Mist account can be linked to OAuth2 providers:\n 1. First, login with your Mist account\n 2. Obtain the Authorization URL for Linking\n 3. Obtain the authorization code by clicking / going through Authorization URL\n 4. Link Mist Account against OAuth2 Provider by using the authorization code", "name": "Self OAuth2"}, {"description": "API calls related to Two Factor Authentication for the currently connected user account.", "name": "Self MFA"}, {"description": "API calls related to the alarm subscriptions for the currently connected user account.", "name": "Self Alarms"}, {"description": "API calls related to the audit logs subscriptions for the currently connected user account.", "name": "Self Audit Logs"}, {"description": "API Calls to use Devices Troubleshooting tools.\n\n\nSome API Calls can be used with any type of devices (Access Points, Switches and Gateways), and some others may be limited to some types of devices (e.g. \"Junos Only\")", "name": "Utilities Common"}, {"description": "API Calls to use Devices Troubleshooting tools specific to WAN Assurance", "name": "Utilities WAN"}, {"description": "API Calls to use Devices Troubleshooting tools specific to Wired Assurance", "name": "Utilities LAN"}, {"description": "API Calls to use Devices Troubleshooting tools specific to Wireless Assurance", "name": "Utilities Wi-Fi"}, {"description": "API Calls to start, stop or managed Packet Captures at the device level", "name": "Utilities PCAPs"}, {"description": "API Calls to use Devices Troubleshooting tools specific to Asset Tracking and User Management", "name": "Utilities Location"}, {"description": "API Calls to use Devices Troubleshooting tools specific to Mx Edges", "name": "Utilities MxEdge"}, {"description": "API Calls used to manage device upgrades for a single device, at the site level or at the organization level.", "name": "Utilities Upgrade"}], "paths": {"/api/v1/const/alarm_defs": {"get": {"description": "Return alarm type definitions used by alarm search results, alarm templates, and the `alarm` webhook topic. The `example` field shows representative webhook payload content.\nHA cluster node names are returned in the `node` field, when applicable.", "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 Events"]}}, "/api/v1/const/ap_channels": {"get": {"description": "Return supported AP radio channels for the requested country code, based on the regulatory domain used by Mist AP configuration.", "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 Definitions"]}}, "/api/v1/const/ap_esl_versions": {"get": {"description": "Return Electronic Shelf Label (ESL) firmware versions available per AP model.", "operationId": "listApLEslVersions", "responses": {"200": {"$ref": "#/components/responses/ConstApEslVersions"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listApLEslVersions", "tags": ["Constants Definitions"]}}, "/api/v1/const/ap_led_status": {"get": {"description": "Return AP LED status definitions, including the values used to describe LED behavior and the corresponding `error_code` value.", "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": "Return supported application categories used for application identification, traffic classification, and policy matching.", "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": "Return supported application subcategories used for application identification, traffic classification, and policy matching.", "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": "Return applications recognized by Juniper Mist devices for traffic classification and application analytics.", "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 Definitions"]}}, "/api/v1/const/client_events": {"get": {"description": "Return client event definitions used by client event search and count APIs, including event keys and metadata.", "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": "Return supported country codes for Mist configuration. Set `extend=true` to include additional country codes when available.", "operationId": "listCountryCodes", "parameters": [{"description": "Will include more country codes if true", "in": "query", "name": "extend", "schema": {"default": false, "type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/ConstCountries"}, "400": {"$ref": "#/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 Definitions"]}}, "/api/v1/const/default_gateway_config": {"get": {"description": "Generate the default gateway configuration for the requested model and HA mode.", "operationId": "getGatewayDefaultConfig", "parameters": [{"description": "Device model for which to generate the default gateway config.", "in": "query", "name": "model", "required": true, "schema": {"examples": ["srx550"], "type": "string"}}, {"description": "Whether the config is intended for HA", "in": "query", "name": "ha", "schema": {"examples": ["false"], "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 Models"]}}, "/api/v1/const/device_events": {"get": {"description": "Return device event definitions used by device event search and count APIs and the `device-events` webhook topic, including event keys and metadata.", "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": "Return AP, Switch and Gateway device models supported by Mist, including their features and capabilities.", "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/fingerprint_types": {"get": {"description": "Return supported client fingerprint attribute values (`family`, `model`, `mfg`, and `os_type`) that can be used in [Mist NAC Rules]($h/Orgs%20NAC%20Rules/_overview) `matching` conditions.", "operationId": "listFingerprintTypes", "responses": {"200": {"$ref": "#/components/responses/ConstFingerprintTypes"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listFingerprintTypes", "tags": ["Constants Definitions"]}}, "/api/v1/const/gateway_applications": {"get": {"description": "Return applications recognized by Mist gateways for traffic classification.", "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 Definitions"]}}, "/api/v1/const/insight_metrics": {"get": {"description": "Return supported insight metric names and metadata used by insight and SLE APIs.", "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 Definitions"]}}, "/api/v1/const/languages": {"get": {"description": "Return supported language codes for localized Mist configuration and user-facing portals.", "operationId": "listSiteLanguages", "responses": {"200": {"$ref": "#/components/responses/ConstLanguages"}, "400": {"$ref": "#/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 Definitions"]}}, "/api/v1/const/license_types": {"get": {"description": "Return Mist license type definitions used by inventory and subscription APIs.", "operationId": "listLicenseTypes", "responses": {"200": {"$ref": "#/components/responses/ConstLicenseTypes"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listLicenseTypes", "tags": ["Constants Definitions"]}}, "/api/v1/const/marvisclient_versions": {"get": {"description": "Return available Marvis Client application versions for tracking or managing Marvis Client deployments.", "operationId": "listMarvisClientVersions", "responses": {"200": {"$ref": "#/components/responses/ConstMarvisClientVersions"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listMarvisClientVersions", "tags": ["Constants Definitions"]}}, "/api/v1/const/mxedge_events": {"get": {"description": "Return Mist Edge event definitions used by Mist Edge event search and count APIs, and `mexedge-events` webhook topic.", "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": "Return Mist Edge models supported by Mist, including their capabilities.", "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": "Return NAC client event definitions used by NAC client event search and count APIs, and `nac-events` webhook topic.", "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": "Return event definitions for other or third-party devices managed or monitored by Mist.", "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": "Return supported models for other or third-party devices.", "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/states": {"get": {"description": "Return ISO state or province codes for the supplied country code.", "operationId": "listStates", "parameters": [{"description": "Country code, in [two-character](/#operations/listCountryCodes)", "in": "query", "name": "country_code", "required": true, "schema": {"examples": ["US"], "type": "string"}}], "responses": {"200": {"$ref": "#/components/responses/ConstStates"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listStates", "tags": ["Constants Definitions"]}}, "/api/v1/const/system_events": {"get": {"description": "Return system event definitions used by system event search APIs.", "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": "Return traffic type definitions used to classify recognized network 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 Definitions"]}}, "/api/v1/const/webhook_topics": {"get": {"description": "Return webhook topic definitions that can be subscribed to in webhook configuration.", "operationId": "listWebhookTopics", "responses": {"200": {"$ref": "#/components/responses/ConstWebhookTopics"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listWebhookTopics", "tags": ["Constants Definitions"]}}, "/api/v1/installer/orgs/{org_id}/alarmtemplates": {"get": {"description": "Return alarm templates available to installer workflows in the organization.", "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": "Return device profiles that installers can use when provisioning recently claimed devices, optionally filtered by device type.", "operationId": "listInstallerDeviceProfiles", "parameters": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}], "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": "Return recently claimed devices visible to installer workflows, with optional filters for model, site name, or site identifier.", "operationId": "listInstallerListOfRecentlyClaimedDevices", "parameters": [{"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"examples": ["AP43"], "type": "string"}}, {"description": "Filter results by site name", "in": "query", "name": "site_name", "schema": {"examples": ["SJ1"], "type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["72771e6a-6f5e-4de4-a5b9-1266c4197811"], "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": "listInstallerListOfRecentlyClaimedDevices", "tags": ["Installer"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Claim devices into the organization inventory by activation code through the installer workflow.", "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": {"$ref": "#/components/responses/OrgInventoryAdd"}, "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 a recently claimed device from its current site so it can be provisioned again through the installer workflow.", "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 an installer-managed device. \n\nIf replacing_mac is in the request payload, other attributes are ignored, we attempt to replace existing device (with MAC address `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": {"value": {"deviceprofile_name": "SJ1", "height": 2.7, "name": "SJ1-AP1", "orientation": 90, "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811", "site_name": "SJ1", "x": 150, "y": 300}}}, "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": "Start locating an installer-managed device by blinking its LED. The locate state persists until [Stop Locating Installer Device](/#operations/stopInstallerLocateDevice) is called.", "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 the locate LED state for an installer-managed device.", "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": "Remove a previously uploaded image associated with an installer-managed device, such as an installation photo or device placement 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": "Upload an image associated with an installer-managed device using `multipart/form-data`.", "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": "Return Virtual Chassis status for an installer-managed switch, including topology and member statistics.\n\nThe response is a combined view of the Virtual Chassis state.", "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": {"examples": ["aff827549235"], "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't have dedicated VC ports, below are procedures to automate the VC creation:\n\n1. Power on the switch that is chosen as the VC master first. And then powering on the other member switches.\n2. Claim or adopt all these switches under the same organization\u2019s Inventory\n3. Assign these switches into the same Site\n4. Invoke vc command on the switch chosen 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\n6. 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", "xe-0/1/1"], "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", "xe-0/1/1"], "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", "xe-0/1/1"], "vc_role": "linecard"}, {"mac": "8396cd00888c", "member_id": 2, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "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\n3. Waiting for the VC state (vc_state) of this switch is changed to not-present\n4. 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, unplugging the cable may result in the situation that fpc0 becomes a line card (LC). When this situation is happening, 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'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 replaced, 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 \"preprovision\" 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_id": 2, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "linecard"}, {"mac": "8396cd00777c", "member_id": 3, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "linecard"}], "op": "add"}}, "convert-to-pre-provisioned-VC": {"value": {"member": 0, "members": [{"mac": "string", "member_id": 0, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "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": "Return RF template names available to installer workflows for site creation or updates.", "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}/sitegroups": {"get": {"description": "Return site groups that installers can assign when creating or updating sites.", "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": "Return sites visible to installer workflows for device assignment and map operations.", "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": "Use `site_name` to create a site when it does not exist, or to update installer-editable fields on an existing site. Installers use these sites for device assignment, and grace-period rules also apply when updating an existing site.", "operationId": "createOrUpdateInstallerSites", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Return maps for an installer-managed site, used for floorplan selection and AP placement during provisioning.", "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 a site floorplan and optional placement data from multipart files. The request can include an image file, optional JSON, and optional CSV data to create the map and assign or place APs when names or MAC addresses match.", "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": "Remove a map or floorplan from an installer-managed site. This removes the map used for AP placement, but does not delete the site.", "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": "Define a map or floorplan for an installer-managed site, including metadata used for AP placement and site visualization.", "operationId": "createInstallerMap", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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", "name": "string", "nodes": [{"edges": {"N2": "string"}, "name": "string", "position": {"x": 0, "y": 0}}]}], "type": "image", "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}, "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": "Modify map or floorplan metadata for an installer-managed site, including dimensions, orientation, and placement-related settings.", "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": "Trigger RF optimization after installation is complete, such as after APs have been placed on maps and powered on. This starts RRM before the next automatic optimization schedule.", "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": "Accept an administrator invite using the invite verification token from the invite email. This public endpoint does not require authentication. After a successful verification, call [Get Self](/#operations/getSelf) to refresh the authenticated admin profile and retrieve the newly granted 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"}}, "security": [], "summary": "verifyAdminInvite", "tags": ["Admins"]}}, "/api/v1/login": {"post": {"description": "Authenticate an administrator with email and password. A successful login creates the browser session cookies, including the `csrftoken` value used with the `X-CSRFToken` header on later API requests.\n\nWhen 2FA is enabled, either include the `two_factor` code in this request or submit the first factor here and complete the login with [Two Factor](/#operations/twoFactor).", "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"}}, "security": [], "summary": "login", "tags": ["Admins Login"]}}, "/api/v1/login/lookup": {"post": {"description": "Check the login method for an administrator email address. This public lookup is mainly used by UI clients to determine whether the user should continue with local login or be redirected to SSO.", "operationId": "lookup", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"email": "test@mistsys.com"}}}, "schema": {"$ref": "#/components/schemas/email_string"}}}, "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"}}, "security": [], "summary": "lookup", "tags": ["Admins Lookup"]}}, "/api/v1/login/oauth/{provider}": {"delete": {"description": "Unlink the specified OAuth2 provider from the authenticated administrator account so it can no longer be used for that account's OAuth login.", "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": ["Admins Login - OAuth2"]}, "get": {"description": "Return the provider authorization URL used to start an OAuth2 login or account-linking flow. When `forward` is provided, the provider redirects back to that callback URL after authorization.", "operationId": "getOauth2AuthorizationUrlForLogin", "parameters": [{"description": "Callback URL used after completing the OAuth login flow", "in": "query", "name": "forward", "schema": {"examples": ["https://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"}}, "security": [], "summary": "getOauth2AuthorizationUrlForLogin", "tags": ["Admins Login - OAuth2"]}, "parameters": [{"in": "path", "name": "provider", "required": true, "schema": {"description": "Oauth2 provider name", "examples": ["google"], "type": "string"}}], "post": {"description": "Complete an OAuth2 login by exchanging the provider authorization code for a Mist administrator session.", "operationId": "loginOauth2", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"code": "4/S9tegDeLkrYg0L9pWNXV4cgMVbbr3SR9t693A2kSHzw"}}}, "schema": {"$ref": "#/components/schemas/code_string"}}}, "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"}}, "security": [], "summary": "loginOauth2", "tags": ["Admins Login - OAuth2"]}}, "/api/v1/login/two_factor": {"post": {"description": "Complete a two-factor login by submitting the 2FA code after the initial email/password step has created a pending login session.", "operationId": "twoFactor", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"two_factor": "123456"}}}, "schema": {"$ref": "#/components/schemas/two_factor_string"}}}}, "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"description": "two_factor code is incorrect or the user hasn't login yet"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"description": "The user doesn't have 2FA enabled"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "security": [], "summary": "twoFactor", "tags": ["Admins Login"]}}, "/api/v1/logout": {"post": {"description": "End the current authenticated administrator session and invalidate the related login cookies.", "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": ["Admins Logout"]}}, "/api/v1/mobile/verify/{secret}": {"parameters": [{"$ref": "#/components/parameters/secret"}], "post": {"description": "Activate a mobile SDK invite by verifying the invite secret and binding it to the supplied device identifier. The response returns the device-specific secret used by the mobile SDK client.", "operationId": "activateSdkInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"device_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1"}}}, "schema": {"$ref": "#/components/schemas/device_id_string"}}}}, "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 a managed service provider account that can own organizations, organization groups, admins, licenses, and MSP-level settings.", "operationId": "createMsp", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Delete the MSP account and its MSP-level organization groups and privileges. This does not delete any organizations or administrator accounts.", "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": "Return MSP account details, including the display name, service tier, support-access setting, logo URL, custom URL, and timestamps.", "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 editable MSP account settings such as the display name, support-access setting, logo URL, or custom URL.", "operationId": "updateMsp", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "List administrators that have privileges in this MSP hierarchy, including MSP, organization, organization group, site, or site group scopes.", "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": "Remove all privileges this administrator has through the MSP hierarchy, including inherited organization and site access. This does not delete the administrator account.", "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": "Return administrator details and privilege assignments for one administrator under this MSP.", "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 identity fields and privilege assignments for an existing administrator under this MSP.", "operationId": "updateMspAdmin", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"email": "jsnow@abc.com", "first_name": "string", "last_name": "string", "privileges": [{"org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "role": "admin", "scope": "org", "sitegroup_ids": ["b069b358-4c97-5319-1f8c-7c5ca64d6ab1"]}, {"role": "admin", "scope": "site", "site_id": "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": "updateMspAdmin", "tags": ["MSPs Admins"]}}, "/api/v1/msps/{msp_id}/claim": {"parameters": [{"$ref": "#/components/parameters/msp_id"}], "post": {"description": "Claim a license order for this MSP by submitting the activation code from the order.", "operationId": "claimMspLicense", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"code": "ZHT3K-H36DT-MG85D-M61AC"}}}, "schema": {"$ref": "#/components/schemas/code_string"}}}}, "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": "claimMspLicense", "tags": ["MSPs Licenses"]}}, "/api/v1/msps/{msp_id}/insights/{metric}": {"get": {"description": "Return MSP-level SLE insight metrics for the selected metric and time range. Depending on the metric, the response can include all organizations or the worst-performing organizations in the MSP.", "operationId": "getMspSle", "parameters": [{"description": "See [List Insight Metrics](/#operations/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/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": "Return the inventory record for a device MAC address owned by an organization under this MSP, including the owning organization and site when available.", "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": "Send an MSP administrator invitation with the requested identity fields and privilege assignments.\n\n**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": {"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 Admins"]}}, "/api/v1/msps/{msp_id}/invites/{invite_id}": {"delete": {"description": "Cancel a pending MSP administrator invitation before the invitee accepts it.", "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 Admins"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}, {"$ref": "#/components/parameters/invite_id"}], "put": {"description": "Update the identity fields or privilege assignments on a pending MSP administrator invitation.", "operationId": "updateMspAdminInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 Admins"]}}, "/api/v1/msps/{msp_id}/licenses": {"get": {"description": "Return MSP license entitlement, subscription, amendment, and usage summary information.", "operationId": "listMspLicenses", "responses": {"200": {"$ref": "#/components/responses/License"}, "400": {"$ref": "#/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": "Perform an MSP license action, such as amending license quantity to an organization, deleting a subscription, undoing an amendment, or annotating a subscription.", "operationId": "moveOrDeleteMspLicenseToAnotherOrg", "requestBody": {"content": {"application/json": {"examples": {"delete-license": {"value": {"op": "delete", "subscription_id": "SUB-0000144"}}, "move-license": {"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": "Remove the logo configured for an advanced-tier MSP account.", "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 or update the public logo URL for an advanced-tier MSP account.", "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": "List audit log entries for configuration and administrative changes within this MSP, with optional filters by site, administrator, message text, and time range.", "operationId": "listMspAuditLogs", "parameters": [{"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["b069b358-4c97-5319-1f8c-7c5ca64d6ab1"], "type": "string"}}, {"description": "Admin name or email", "in": "query", "name": "admin_name", "schema": {"examples": ["jsnow"], "type": "string"}}, {"description": "Filter results by message text", "in": "query", "name": "message", "schema": {"examples": ["Added new site"], "type": "string"}}, {"description": "Field used to sort results; a leading `-` indicates descending order. enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "in": "query", "name": "sort", "schema": {"$ref": "#/components/schemas/list_msp_logs_sort"}}, {"$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/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": "listMspAuditLogs", "tags": ["MSPs Logs"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}]}, "/api/v1/msps/{msp_id}/logs/count": {"get": {"description": "Return distinct counts of MSP audit log entries grouped by the requested field, such as administrator, message, or organization.", "operationId": "countMspAuditLogs", "parameters": [{"description": "Field used to group this count response. enum: `admin_id`, `admin_name`, `message`, `org_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/msp_logs_count_distinct"}}, {"$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": "countMspAuditLogs", "tags": ["MSPs Logs"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}]}, "/api/v1/msps/{msp_id}/orggroups": {"get": {"description": "List organization groups defined under this MSP. Organization groups contain related organization IDs and can be used in MSP privilege assignments.", "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 an organization group under this MSP with a display name and optional list of member organization IDs.", "operationId": "createMspOrgGroup", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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 an MSP organization group. This removes the grouping object without deleting the organizations it referenced.", "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": "Return the organization group details, including its name and member organization IDs.", "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 an MSP organization group's display name or member organization IDs.", "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": "List organizations managed by this MSP account, including MSP ownership and organization-group membership metadata.", "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 organization under this MSP, optionally assigning it to organization groups and setting organization-level defaults.", "operationId": "createMspOrg", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 existing organizations to this MSP account or unassign organizations from it by providing the desired operation and org IDs.", "operationId": "manageMspOrgs", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 organizations under this MSP using organization identifiers, names, subscription state, trial state, usage types, and time-based filters.", "operationId": "searchMspOrgs", "parameters": [{"$ref": "#/components/parameters/name"}, {"description": "Filter results by organization identifier", "in": "query", "name": "org_id", "schema": {"examples": ["b069b358-4c97-5319-1f8c-7c5ca64d6ab1"], "format": "uuid", "type": "string"}}, {"description": "If this org has sufficient subscription", "in": "query", "name": "sub_insufficient", "schema": {"examples": [false], "type": "boolean"}}, {"description": "If this org is under trial period", "in": "query", "name": "trial_enabled", "schema": {"examples": [false], "type": "boolean"}}, {"description": "List of types that enabled by usage", "in": "query", "name": "usage_types", "schema": {"$ref": "#/components/schemas/strings"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/search_after"}], "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 an organization managed by this MSP. Use the MSP organization assignment endpoint when only assigning or unassigning organizations from the MSP account.", "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": "Return details for one organization managed by this MSP, including MSP ownership, organization groups, support access, and session settings.", "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 organization settings for an organization managed by this MSP.", "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 MSP resources by query string. Currently `type=orgs` returns matching organizations in this MSP.", "operationId": "searchMspOrgGroup", "parameters": [{"description": "MSP search result type to return. enum: `orgs`", "example": "orgs", "in": "query", "name": "type", "required": true, "schema": {"$ref": "#/components/schemas/msp_search_type"}}, {"description": "Filter results by search string", "in": "query", "name": "q", "required": true, "schema": {"examples": ["live"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}], "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": "List MSP SSO role definitions that map identity-provider role assertions to MSP privilege scopes.", "operationId": "listMspSsoRoles", "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": "listMspSsoRoles", "tags": ["MSPs SSO Roles"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}], "post": {"description": "Create an MSP SSO role definition with a display name and the MSP privileges granted when the role is matched during SSO.", "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 an MSP SSO role definition so it can no longer grant MSP privileges during SSO.", "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 an MSP SSO role definition, including its display name and granted MSP privileges.", "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 SSO identity provider configurations defined for this MSP.", "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 an MSP SSO identity provider configuration, including provider settings and role-handling behavior.", "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 an MSP SSO identity provider configuration so it can no longer be used for administrator login.", "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": "Return one MSP SSO identity provider configuration, including provider settings and generated SSO URLs.", "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 an MSP SSO identity provider configuration, such as IdP URLs, certificates, issuer, NameID format, and unmatched-role handling.", "operationId": "updateMspSso", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"custom_logout_url": "string", "idp_cert": "string", "idp_sign_algo": "sha256", "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}/delete_admins": {"parameters": [{"$ref": "#/components/parameters/msp_id"}, {"$ref": "#/components/parameters/sso_id"}], "post": {"description": "Remove SSO-linked MSP administrator accounts by email for this SSO profile.", "operationId": "deleteMspSsoAdmins", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"emails": ["john@abc.com", "may@abc.com"]}}}, "schema": {"$ref": "#/components/schemas/sso_delete_admins"}}}, "description": "Request Body"}, "responses": {"200": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/sso_delete_admins_response"}}}, "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": "deleteMspSsoAdmins", "tags": ["MSPs SSO"]}}, "/api/v1/msps/{msp_id}/ssos/{sso_id}/failures": {"get": {"description": "List recent authentication failures for this MSP SSO configuration, including failure details and captured SAML assertion data when available.", "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": "Return generated SAML service provider metadata for this MSP SSO configuration as JSON.", "operationId": "getMspSamlMetadata", "responses": {"200": {"$ref": "#/components/responses/SamlMetadata"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getMspSamlMetadata", "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 generated SAML service provider metadata XML for this MSP SSO configuration.\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": "downloadMspSamlMetadata", "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": "downloadMspSamlMetadata", "tags": ["MSPs SSO"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}, {"$ref": "#/components/parameters/sso_id"}]}, "/api/v1/msps/{msp_id}/stats/licenses": {"get": {"description": "Return license entitlement, subscription, amendment, and usage statistics for organizations managed by this MSP.", "operationId": "listMspOrgLicenses", "responses": {"200": {"$ref": "#/components/responses/License"}, "400": {"$ref": "#/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 Licenses"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}]}, "/api/v1/msps/{msp_id}/stats/orgs": {"get": {"description": "List organization statistics for organizations managed by this MSP, including device, inventory, site, and SLE summary fields.", "operationId": "listMspOrgStats", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 Orgs"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}]}, "/api/v1/msps/{msp_id}/suggestion/count": {"get": {"description": "Return distinct counts of Marvis actions for this MSP grouped by the requested field, such as organization or status.", "operationId": "countMspsMarvisActions", "parameters": [{"description": "Field used to group this count response. enum: `org_id`, `status`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/msp_marvis_suggestions_count_distinct"}}, {"$ref": "#/components/parameters/limit"}], "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": "List support tickets associated with this MSP for the requested time range.", "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": "Return distinct counts of MSP support tickets grouped by the requested field, such as organization, status, or ticket type.", "operationId": "countMspTickets", "parameters": [{"description": "Field used to group this count response. enum: `org_id`, `status`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/msp_tickets_count_distinct"}}, {"$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": "countMspTickets", "tags": ["MSPs Tickets"]}, "parameters": [{"$ref": "#/components/parameters/msp_id"}]}, "/api/v1/orgs": {"post": {"description": "Create a Mist organization with organization-level defaults such as display name, support-access setting, default alarm template, and admin session lifetime.", "operationId": "createOrg", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"alarmtemplate_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "allow_mist": true, "name": "string", "session_expiry": 1440}}}, "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 an organization and its organization-level resources. Use MSP organization assignment endpoints when only changing MSP ownership or association. This action is only allowed when the Organization Inventory is empty.", "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": "Return organization details, including name, MSP ownership, organization group membership, support-access setting, and session settings.", "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 organization-level settings such as display name, support-access setting, organization groups, default alarm template, or admin session lifetime.", "operationId": "updateOrg", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"alarmtemplate_id": "1984805d-2be2-4aec-a8d4-3ddf67fab0df", "allow_mist": true, "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": {"deprecated": true, "description": "128T devices can be managed/adopted by Mist.", "operationId": "getOrg128TRegistrationCommands", "parameters": [{"description": "Token validity duration in seconds. Defaults to 1 year (31536000 seconds)", "in": "query", "name": "ttl", "schema": {"examples": [31536000], "type": "integer"}}, {"description": "When specified restricts registration to listed assets only. Prefer HTTP body over headers for this parameter, especially with long lists to avoid header size limits.", "in": "query", "name": "asset_ids", "schema": {"$ref": "#/components/schemas/strings"}}], "responses": {"200": {"$ref": "#/components/responses/RouterSsrRegisterCmd"}, "400": {"$ref": "#/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 Devices - SSR"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/aamwprofiles": {"get": {"description": "List organization-level Advanced Anti Malware profiles that define Sky ATP file verdict handling for this organization.", "operationId": "listOrgAAMWProfiles", "responses": {"200": {"$ref": "#/components/responses/AamwProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgAAMWProfiles", "tags": ["Orgs Advanced Anti Malware Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an organization-level Advanced Anti Malware profile with Sky ATP verdict threshold, fallback action, file action, and file-category rules.", "operationId": "createOrgAAMWProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"categories": [{"category": "executable", "hash_lookup_only": false}], "fallback_action": "block", "file_action": "block", "name": "aamw-custom", "verdict_threshold": 8}}}, "schema": {"$ref": "#/components/schemas/aamw_profile"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AamwProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgAAMWProfile", "tags": ["Orgs Advanced Anti Malware Profiles"]}}, "/api/v1/orgs/{org_id}/aamwprofiles/{aamwprofile_id}": {"delete": {"description": "Delete an Advanced Anti Malware profile from this organization.", "operationId": "deleteOrgAAMWProfile", "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": "deleteOrgAAMWProfile", "tags": ["Orgs Advanced Anti Malware Profiles"]}, "get": {"description": "Return an organization Advanced Anti Malware profile, including verdict threshold, actions, and file-category rules.", "operationId": "getOrgAAMWProfile", "responses": {"200": {"$ref": "#/components/responses/AamwProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgAAMWProfile", "tags": ["Orgs Advanced Anti Malware Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/aamwprofile_id"}], "put": {"description": "Update an organization Advanced Anti Malware profile's Sky ATP verdict threshold, actions, or file-category rules.", "operationId": "updateOrgAAMWProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"categories": [{"category": "executable", "hash_lookup_only": false}], "fallback_action": "block", "file_action": "block", "name": "aamw-custom", "verdict_threshold": 8}}}, "schema": {"$ref": "#/components/schemas/aamw_profile"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AamwProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgAAMWProfile", "tags": ["Orgs Advanced Anti Malware Profiles"]}}, "/api/v1/orgs/{org_id}/admins": {"get": {"description": "List administrators that have privileges in this organization hierarchy, including organization, site, or site group scopes.", "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": "Remove all privileges this administrator has in the organization hierarchy. This does not delete the administrator account.", "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": "Update identity fields and privilege assignments for an existing administrator under this organization.", "operationId": "updateOrgAdmin", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"email": "jsnow@abc.com", "expire_time": 0, "first_name": "John", "hours": 24, "last_name": "Sno", "phone": "string", "phone2": "string", "privileges": [{"msp_id": "c0cf23fc-d82f-4219-988c-82fb61d8c875", "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"]}]}}}, "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": "Acknowledge multiple organization alarms by alarm ID and optionally attach a note to the acknowledgement.", "operationId": "ackOrgMultipleAlarms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"alarm_ids": ["ccb8c94d-ca56-4075-932f-1f2ab444ff2c", "98ff4a3d-ec9b-4138-a42e-54fc3335179d"], "note": "maintenance window"}}}, "schema": {"$ref": "#/components/schemas/alarms"}}}, "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": "ackOrgMultipleAlarms", "tags": ["Orgs Alarms"]}}, "/api/v1/orgs/{org_id}/alarms/ack_all": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Acknowledge all alarms in the organization and optionally attach a note. For targeted bulk updates, use [Ack Org Multiple Alarms](/#operations/ackOrgMultipleAlarms) with up to 1000 alarm IDs per request.", "operationId": "ackOrgAllAlarms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"note": "string"}}}, "schema": {"$ref": "#/components/schemas/note_string"}}}}, "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 alarms across the organization, optionally grouped by the `distinct` field and filtered by time range.", "operationId": "countOrgAlarms", "parameters": [{"description": "Field used to group this count response", "in": "query", "name": "distinct", "schema": {"examples": ["site_id"], "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": "countOrgAlarms", "tags": ["Orgs Alarms"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/alarms/search": {"get": {"description": "Search alarms across the organization with filters for site, alarm group, severity, type, acknowledgement state, acknowledgement admin, and time range.", "operationId": "searchOrgAlarms", "parameters": [{"description": "Filter results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "72771e6a-6f5e-4de4-a5b9-1266c4197811"], "type": "string"}}, {"description": "Alarm group used to filter alarm results. enum: `certificate_expiry`, `infrastructure`, `marvis`, `security`. The `marvis` group is used to retrieve AI-driven network issue detections. Known Marvis alarm types include: `bad_cable`, `bad_wan_uplink`, `dns_failure`, `arp_failure`, `auth_failure`, `dhcp_failure`, `missing_vlan`, `negotiation_mismatch`, `port_flap`. Results include resolution status (`status`, `resolved_time`) and affected entity details. Accepts multiple comma-separated values.", "example": "security,infrastructure", "in": "query", "name": "group", "schema": {"type": "string"}}, {"description": "Alarm severity used to filter results. enum: `critical`, `info`, `warn`. Accepts multiple comma-separated values.", "example": "warn,critical", "in": "query", "name": "severity", "schema": {"type": "string"}}, {"description": "Filter alarms by alarm type. Accepts multiple values separated by comma. Use [List Alarm Definitions](/#operations/listAlarmDefinitions) to get the list of possible alarm types", "in": "query", "name": "type", "schema": {"examples": ["infra_dhcp_failure,missing_vlan"], "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"}}, {"description": "Filter alarm results by whether the alarm has been acknowledged", "in": "query", "name": "acked", "schema": {"type": "boolean"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "Remove acknowledgement from multiple organization alarms by alarm ID and optionally attach a note.", "operationId": "unackOrgMultipleAlarms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"alarm_ids": ["ccb8c94d-ca56-4075-932f-1f2ab444ff2c", "98ff4a3d-ec9b-4138-a42e-54fc3335179d"], "note": "maintenance window"}}}, "schema": {"$ref": "#/components/schemas/alarms"}}}, "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": "unackOrgMultipleAlarms", "tags": ["Orgs Alarms"]}}, "/api/v1/orgs/{org_id}/alarms/unack_all": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Remove acknowledgement from all alarms in the organization and optionally attach a note. For targeted bulk updates, use [Unack Org Multiple Alarms](/#operations/unackOrgMultipleAlarms) with up to 1000 alarm IDs per request.", "operationId": "unackOrgAllAlarms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"note": "maintenance window"}}}, "schema": {"$ref": "#/components/schemas/note_string"}}}, "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": "unackOrgAllAlarms", "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": "Acknowledge a single organization alarm and optionally attach a note to the acknowledgement.", "operationId": "ackOrgAlarm", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"note": "maintenance window"}}}, "schema": {"$ref": "#/components/schemas/note_string"}}}, "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": "List alarm templates defined for the organization, including default delivery settings and per-alarm rule configuration.", "operationId": "listOrgAlarmTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Create an organization alarm template that defines default delivery settings and per-alarm rule overrides.\nAvailable rules can be found in [List Alarm Definitions](/#operations/listAlarmDefinitions)\n\nThe `delivery` object is only required when it differs from the template delivery settings.\nTo assign an Alarm template to a site, use the [Update Site](/#operations/updateSiteInfo) endpoint and specify the Alarm template ID in the `alarmtemplate_id` field of the request body.", "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": "Remove alarm suppression entries currently configured for this organization.", "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": "List alarm suppression entries currently configured for this organization, optionally filtered by organization-wide or site-specific scope.", "operationId": "listOrgSuppressedAlarms", "parameters": [{"description": "Filter results by scope. enum: `org`, `site`", "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": "Create or schedule an alarm suppression window for the organization or selected sites, for example during planned maintenance.", "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 an organization alarm template by template ID from this organization.", "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": "Return one organization alarm template, including default delivery settings and per-alarm rule overrides.", "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 an organization alarm template's default delivery settings or per-alarm rule overrides.", "operationId": "updateOrgAlarmTemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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}/aos/register_cmd": {"get": {"description": "Generates a registration challenge token for TPM-based brownfield registration of AOS devices. The returned command string can be copied and pasted directly into an AOS device to register it with Mist.", "operationId": "getOrgAosRegisterCmd", "responses": {"200": {"$ref": "#/components/responses/AosRegisterCmd"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgAosRegisterCmd", "tags": ["Orgs Devices - AOS"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/apitokens": {"get": {"description": "List organization API tokens, including display names, scoped privileges, allowed source IPs, creator, and last-use metadata.", "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 an organization API token with a display name, scoped privileges, and optional source IP restrictions.\nNote that the full token key is only available at 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 an organization API token so it can no longer authenticate API requests.", "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": "Return metadata for one organization API token. The full token key is only available at creation time and may only be partially shown afterward.", "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 an organization API token's display name or scoped privileges. Source IP restrictions are defined when the token is created.", "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/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": "updateOrgApiToken", "tags": ["Orgs API Tokens"]}}, "/api/v1/orgs/{org_id}/aptemplates": {"get": {"description": "List organization AP templates that define AP matching rules, port configuration, Wi-Fi, and mesh settings for assignment to sites.", "operationId": "listOrgAptemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization AP template with AP matching rules, port configuration, Wi-Fi settings, and mesh settings.", "operationId": "createOrgAptemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"property1": {"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, "vlan_ids": "1, 10, 50", "wxtunnel_id": "7dae216d-7c98-a51b-e068-dd7d477b7216", "wxtunnel_remote_id": "wifiguest"}, "property2": {"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, "vlan_ids": "1, 10, 50", "wxtunnel_id": "7dae216d-7c98-a51b-e068-dd7d477b7216", "wxtunnel_remote_id": "wifiguest"}}}]}, "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 an organization AP template by template ID from this organization.", "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": "Return one organization AP template, including AP matching rules, port configuration, Wi-Fi settings, and mesh settings.", "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 an organization AP template's AP matching rules, port configuration, Wi-Fi settings, or mesh settings.", "operationId": "updateOrgAptemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "vlan_ids": "1, 10, 50"}}}]}, "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": "List organization-level BLE asset filters. Each filter operates independently, and an asset must match all specified filter properties for that filter to apply.", "operationId": "listOrgAssetFilters", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization-level BLE asset filter. Any subset of filter properties can be included, and a matching asset must meet all specified conditions.", "operationId": "createOrgAssetFilter", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"disabled": true, "eddystone_uid_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "ibeacon_uuid": "1f89bc00-d0af-481b-82fe-a6629259a39f", "mfg_company_id": 0, "name": "string"}}}, "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": "createOrgAssetFilter", "tags": ["Orgs Asset Filters"]}}, "/api/v1/orgs/{org_id}/assetfilters/{assetfilter_id}": {"delete": {"description": "Delete an organization-level BLE asset filter by filter ID.", "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": "Return one organization-level BLE asset filter, including its name, disabled state, and matching criteria.", "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": "Update an organization-level BLE asset filter's name, disabled state, or matching criteria.", "operationId": "updateOrgAssetFilter", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"disabled": true, "eddystone_uid_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "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": "updateOrgAssetFilter", "tags": ["Orgs Asset Filters"]}}, "/api/v1/orgs/{org_id}/assets": {"get": {"description": "List named BLE asset records in this organization, including Bluetooth MAC addresses and optional site, map, or tag metadata.", "operationId": "listOrgAssets", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a named BLE asset record with a Bluetooth MAC address and optional site, map, or tag metadata.", "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": "Import named BLE assets from a JSON payload or CSV file upload. Each asset record includes at least a name and Bluetooth MAC address.\n\n#### CSV File Format\n```csv\nname,mac\n\"asset_name\",5c5b53010101\n```", "operationId": "importOrgAssets", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 a named BLE asset record from this organization by asset ID.", "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": "Return one named BLE asset record, including its Bluetooth MAC address and optional site, map, or tag metadata.", "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 a named BLE asset record's name, Bluetooth MAC address, or optional site, map, or tag metadata.", "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}/avprofiles": {"get": {"description": "List organization antivirus scanning profiles, including inspected protocols, scan limits, whitelist settings, and fallback actions.", "operationId": "listOrgAntivirusProfiles", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/AvProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgAntivirusProfiles", "tags": ["Orgs Antivirus Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an organization antivirus scanning profile with inspected protocols, maximum file size, whitelist settings, and fallback action.", "operationId": "createOrgAntivirusProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"fallback_action": "permit", "max_filesize": 10000, "mime_whitelist": [], "name": "av-custom", "protocols": ["http"], "url_whitelist": []}}}, "schema": {"$ref": "#/components/schemas/avprofile"}}}}, "responses": {"200": {"$ref": "#/components/responses/AvProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgAntivirusProfile", "tags": ["Orgs Antivirus Profiles"]}}, "/api/v1/orgs/{org_id}/avprofiles/{avprofile_id}": {"delete": {"description": "Delete an organization antivirus scanning profile by profile ID.", "operationId": "deleteOrgAntivirusProfile", "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": "Delete Org Antivirus Profile", "tags": ["Orgs Antivirus Profiles"]}, "get": {"description": "Return one organization antivirus scanning profile, including inspected protocols, scan limits, whitelist settings, and fallback action.", "operationId": "getOrgAntivirusProfile", "responses": {"200": {"$ref": "#/components/responses/AvProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgAntivirusProfile", "tags": ["Orgs Antivirus Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/avprofile_id"}], "put": {"description": "Update an organization antivirus scanning profile's inspected protocols, maximum file size, whitelist settings, or fallback action.", "operationId": "updateOrgAntivirusProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"fallback_action": "permit", "max_filesize": 10000, "mime_whitelist": [], "name": "av-custom", "protocols": ["http"], "url_whitelist": []}}}, "schema": {"$ref": "#/components/schemas/avprofile"}}}}, "responses": {"200": {"$ref": "#/components/responses/AvProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgAntivirusProfile", "tags": ["Orgs Antivirus Profiles"]}}, "/api/v1/orgs/{org_id}/cert": {"get": {"description": "Return the current organization CA certificate and, when available, the pending auto-renewed certificate scheduled to replace it.", "operationId": "listOrgCertificates", "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": "listOrgCertificates", "tags": ["Orgs Cert"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/cert/apply_pending": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Replace the current organization CA certificate with the pending certificate generated previously.", "operationId": "rotateOrgCertificate", "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": "rotateOrgCertificate", "tags": ["Orgs Cert"]}}, "/api/v1/orgs/{org_id}/cert/regenerate": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Clear existing organization certificates and trigger certificate regeneration for the organization.", "operationId": "clearOrgCertificates", "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": "clearOrgCertificates", "tags": ["Orgs Cert"]}}, "/api/v1/orgs/{org_id}/claim": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Synchronously claims licenses and/or inventory devices from an activation code. All inventory devices are claimed immediately during the request.", "operationId": "claimOrgLicense", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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}/claim/status": {"get": {"description": "Return processing status for an asynchronous organization license claim, optionally including per-device license details.", "operationId": "GetOrgLicenseAsyncClaimStatus", "parameters": [{"description": "Whether to include license details in the claim status response", "in": "query", "name": "detail", "schema": {"examples": [true], "type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/AsyncLicense"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "GetOrgLicenseAsyncClaimStatus", "tags": ["Orgs Licenses"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/claims": {"get": {"description": "List all async inventory claim jobs for the organization, optionally including per-device details per claim.", "operationId": "listOrgAsyncClaims", "parameters": [{"description": "Whether to include per-device detail in each claim record", "in": "query", "name": "detail", "schema": {"examples": [true], "type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/AsyncClaimsList"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgAsyncClaims", "tags": ["Orgs Licenses"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Schedules an async claim for inventory devices. Inventory claiming is queued and processed in the background; the response returns immediately with a `claim_id` for polling. Licenses (if `type=all`) are still claimed synchronously during the request.\n\nUse `GET /api/v1/orgs/{org_id}/claims/{claim_id}` to poll the result.", "operationId": "createOrgAsyncClaim", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"code": "ZHT3K-H36DT-MG85D-M61AC", "type": "inventory"}}}, "schema": {"$ref": "#/components/schemas/claim_activation_async"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AsyncClaimCreate"}, "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": "createOrgAsyncClaim", "tags": ["Orgs Licenses"]}}, "/api/v1/orgs/{org_id}/claims/{claim_id}": {"get": {"description": "Return the processing status for a specific async inventory claim job, optionally including per-device details.", "operationId": "getOrgAsyncClaimStatus", "parameters": [{"description": "Whether to include per-device detail in the claim status response", "in": "query", "name": "detail", "schema": {"examples": [true], "type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/AsyncClaimStatus"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgAsyncClaimStatus", "tags": ["Orgs Licenses"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"description": "Unique identifier of the async claim job", "in": "path", "name": "claim_id", "required": true, "schema": {"format": "uuid", "type": "string"}}]}, "/api/v1/orgs/{org_id}/clients/count": {"get": {"description": "Count wireless client records across the organization, optionally grouped by `distinct` and filtered by client identity, AP, SSID, VLAN, IP, and time range.", "operationId": "countOrgWirelessClients", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `device`, `hostname`, `ip`, `mac`, `model`, `os`, `ssid`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_clients_count_distinct"}}, {"description": "Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff,aabbcc*", "aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, {"description": "Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-everest-client,my-everest*", "my-everest-client", "my-everest*", "*everest*"], "type": "string"}}, {"description": "Filter results by device type", "in": "query", "name": "device", "schema": {"examples": ["iPhone"], "type": "string"}}, {"description": "Filter results by operating system", "in": "query", "name": "os", "schema": {"examples": ["Windows 10"], "type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"examples": ["iPhone 8"], "type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"examples": ["10"], "type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"examples": ["MySSID"], "type": "string"}}, {"$ref": "#/components/parameters/ip"}, {"$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": "countOrgWirelessClients", "tags": ["Orgs Clients - Wireless"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/clients/events/count": {"get": {"description": "Count wireless client event records across the organization, optionally grouped by event attributes and filtered by event type, WLAN, radio, site, and time range.", "operationId": "countOrgWirelessClientEvents", "parameters": [{"description": "Field used to group this count response. enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`", "example": "type", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_client_events_count_distinct"}}, {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions). Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["MARVIS_EVENT_CLIENT_AUTH_FAILURE,CLIENT_DEAUTHENTICATION"], "type": "string"}}, {"description": "Reason code filter for association and disassociation events", "in": "query", "name": "reason_code", "schema": {"type": "integer"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_proto"}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["72771e6a-6f5e-4de4-a5b9-1266c4197811"], "format": "uuid", "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": "countOrgWirelessClientEvents", "tags": ["Orgs Clients - Wireless"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/clients/events/search": {"get": {"description": "Search wireless client event records across the organization with filters for event type, reason code, SSID, AP, key management, protocol, band, WLAN, NAC rule, and time range.", "operationId": "searchOrgWirelessClientEvents", "parameters": [{"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions). Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["CLIENT_IP_ASSIGNED,CLIENT_DEAUTHENTICATION"], "type": "string"}}, {"description": "Reason code filter for association and disassociation events. Accepts multiple comma-separated integer values.", "in": "query", "name": "reason_code", "schema": {"examples": ["0,14", 7], "type": "string"}}, {"description": "Filter results by SSID. Accepts multiple comma-separated values.", "in": "query", "name": "ssid", "schema": {"examples": ["Corp,Guest", "MySSID"], "type": "string"}}, {"description": "Filter results by AP MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b53010101"], "type": "string"}}, {"description": "Key management protocol used to filter client events. enum: `WPA2-PSK`, `WPA2-PSK/CCMP`, `WPA2-PSK-FT`, `WPA2-PSK-SHA256`, `WPA3-EAP-SHA256`, `WPA3-EAP-SHA256/CCMP`, `WPA3-EAP-FT/GCMP256`, `WPA3-SAE-FT`, `WPA3-SAE-PSK`. Accepts multiple comma-separated values.", "example": "WPA2-PSK,WPA2-PSK/CCMP", "in": "query", "name": "key_mgmt", "schema": {"type": "string"}}, {"description": "802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`. Accepts multiple comma-separated values.", "example": "ax,ac", "in": "query", "name": "proto", "schema": {"type": "string"}}, {"description": "802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`. Accepts multiple comma-separated values.", "example": "6,5", "in": "query", "name": "band", "schema": {"type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"description": "Filter results by NAC rule identifier. Accepts multiple comma-separated values.", "in": "query", "name": "nacrule_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/search_after"}], "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 wireless client records across the organization with filters for site, AP, band, device identity, hostname, IP, MAC address, username, SSID, PPSK, VLAN, and time range.", "operationId": "searchOrgWirelessClients", "parameters": [{"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Comma separated list of Radio band (e.g. `24,5`). enum: `24`, `5`, `6`", "in": "query", "name": "band", "schema": {"examples": ["5,6", "5"], "type": "string"}}, {"description": "Comma separated list of Device type (e.g. `Mac,iPhone`). Case sensitive", "in": "query", "name": "device", "schema": {"examples": ["iPhone"], "type": "string"}}, {"description": "Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-everest-client,my-everest*", "my-everest-client", "my-everest*", "*everest*"], "type": "string"}}, {"description": "Partial / full Client IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "ip", "schema": {"examples": ["10.100.10.54,10.100.10.*", "10.100.10.54", "10.100.10.*", "*100.10.*"], "type": "string"}}, {"description": "Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff,aabbcc*", "aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, {"description": "Only available for clients running the Marvis Client app, model, e.g. \"MBP 15 late 2013\", 6, 6s, \"8+ GSM\"", "in": "query", "name": "model", "schema": {"examples": ["iPhone 8"], "type": "string"}}, {"description": "Only available for clients running the Marvis Client app, os, e.g. Sierra, Yosemite, Windows 10", "in": "query", "name": "os", "schema": {"examples": ["Windows 10"], "type": "string"}}, {"$ref": "#/components/parameters/psk_id_query"}, {"description": "Only available for clients using PPSK authentication, the Name of the PSK", "in": "query", "name": "psk_name", "schema": {"examples": ["MyPPSK"], "type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"examples": ["MySSID"], "type": "string"}}, {"description": "Partial / full MAC address, hostname, username, psk_name or ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported", "in": "query", "name": "text", "schema": {"examples": ["5c5b530"], "type": "string"}}, {"description": "Partial / full username. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `johndoe*` and `*mycorp*` match `johndoe@mycorp.com`). Suffix-only wildcards (e.g. `*mycorp.com`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "username", "schema": {"examples": ["johndoe,johnd*", "johndoe", "johnd*", "*ohnd*"], "type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"examples": ["10"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 historical wireless client sessions across the organization, optionally grouped by `distinct` and filtered by AP, band, client attributes, SSID, WLAN, and time range.", "operationId": "countOrgWirelessClientsSessions", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_client_sessions_count_distinct"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "E.g. \"Mac\", \"iPhone\", \"Apple watch\"", "in": "query", "name": "client_family", "schema": {"examples": ["iPhone"], "type": "string"}}, {"description": "Filter results by client manufacturer, e.g. \"Apple\"", "in": "query", "name": "client_manufacture", "schema": {"examples": ["Apple"], "type": "string"}}, {"description": "Filter results by client model, e.g. \"8+\", \"XS\"", "in": "query", "name": "client_model", "schema": {"examples": ["iPhone 8"], "type": "string"}}, {"description": "E.g. \"Mojave\", \"Windows 10\", \"Linux\"", "in": "query", "name": "client_os", "schema": {"examples": ["Windows 10"], "type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"examples": ["MySSID"], "type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "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": "countOrgWirelessClientsSessions", "tags": ["Orgs Clients - Wireless"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/clients/sessions/search": {"get": {"description": "Search historical wireless client sessions across the organization with filters for AP, band, client family, manufacturer, model, OS, username, SSID, WLAN, PPSK, and time range.", "operationId": "searchOrgWirelessClientSessions", "parameters": [{"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`. Accepts multiple comma-separated values.", "example": "5,6", "in": "query", "name": "band", "schema": {"type": "string"}}, {"description": "E.g. \"Mac\", \"iPhone\", \"Apple watch\". Accepts multiple comma-separated values.", "in": "query", "name": "client_family", "schema": {"examples": ["Phone/Tablet/Wearable,Monitoring Device", "iPhone"], "type": "string"}}, {"description": "Filter results by client manufacturer, e.g. \"Apple\". Accepts multiple comma-separated values.", "in": "query", "name": "client_manufacture", "schema": {"examples": ["Hewlett Packard Enterprise,Unknown", "Apple"], "type": "string"}}, {"description": "Filter results by client model, e.g. \"8+\", \"XS\". Accepts multiple comma-separated values.", "in": "query", "name": "client_model", "schema": {"examples": ["iPhone 8,Aruba S0U52A", "iPhone 8"], "type": "string"}}, {"description": "Filter results by client username. Accepts multiple comma-separated values.", "in": "query", "name": "client_username", "schema": {"examples": ["john.doe,jane.doe", "john.doe"], "type": "string"}}, {"description": "E.g. \"Mojave\", \"Windows 10\", \"Linux\". Accepts multiple comma-separated values.", "in": "query", "name": "client_os", "schema": {"examples": ["iOS 16.7.16,Unknown", "Windows 10"], "type": "string"}}, {"description": "Filter results by SSID. Accepts multiple comma-separated values.", "in": "query", "name": "ssid", "schema": {"examples": ["Corp,Guest", "MySSID"], "type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"$ref": "#/components/parameters/psk_id_query"}, {"description": "Filter results by PSK name. Accepts multiple comma-separated values.", "in": "query", "name": "psk_name", "schema": {"examples": ["psk-a,psk-b", "MyPPSK"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": {"value": {"name": "New Org"}}}, "schema": {"$ref": "#/components/schemas/name_string"}}}, "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": "Download the organization certificate revocation list (CRL) file used to identify certificates that should no longer be trusted.", "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": "List org-level device profiles, which define reusable AP, switch, or gateway configuration subsets that can be applied to matching devices.", "operationId": "listOrgDeviceProfiles", "parameters": [{"description": "Filter results by one device profile type. Use a single value; comma-separated values are not supported. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"$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 an org-level device profile containing reusable AP, switch, or gateway configuration.", "operationId": "createOrgDeviceProfile", "requestBody": {"content": {"application/json": {"examples": {"deviceprofile_ap": {"value": {"aeroscout": {"enabled": false, "host": "aero.pvt.net", "locate_connected": true}, "led": {"brightness": 255, "enabled": true}, "name": "string", "ntp_servers": ["10.10.10.10"], "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}}}, "deviceprofile_hub": {"value": {"dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "name": "Demo", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}], "type": "gateway"}}}, "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": "createOrgDeviceProfile", "tags": ["Orgs Device Profiles"]}}, "/api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}": {"delete": {"description": "Delete an org-level device profile and remove that reusable device configuration object from the organization.", "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": "Retrieve the AP, switch, or gateway configuration stored in a specific org-level device profile.", "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 the AP, switch, or gateway configuration stored in an org-level device profile.", "operationId": "updateOrgDeviceProfile", "requestBody": {"content": {"application/json": {"examples": {"deviceprofile_ap": {"value": {"aeroscout": {"enabled": true, "host": "aero.pvt.net"}, "disable_eth1": true, "disable_module": true, "mesh": {"enabled": true, "group": 1, "role": "base"}, "name": "string", "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": 6, "disabled": true, "power": 8, "preamble": "auto"}, "band_24_usage": "24", "band_5": {"allow_rrm_disable": true, "antenna_mode": "default", "bandwidth": 20, "channel": 50, "disabled": true, "power_max": 8, "power_min": 15, "preamble": "auto"}, "scanning_enabled": true}, "type": "ap"}}, "deviceprofile_hub": {"value": {"dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "name": "ITParis", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "traffic_shaping": {"enabled": false}, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}, {"action": "deny", "idp": {"enabled": false}, "name": "ITParis-internet", "path_preference": "untrust", "services": ["internet_any"], "tenants": ["ITParis"]}], "type": "gateway"}}}, "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": "updateOrgDeviceProfile", "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": {"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": "unassignOrgDeviceProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "unassignOrgDeviceProfile", "tags": ["Orgs Device Profiles"]}}, "/api/v1/orgs/{org_id}/devices": {"get": {"description": "List devices in the organization, including APs, switches and gateways managed or monitored by Mist.", "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 organization device records, optionally grouped by `distinct` and filtered by device identifiers, model, LLDP attributes, Mist Edge, tunnel status, device type, and time range.", "operationId": "countOrgDevices", "parameters": [{"description": "Field used to group this count response. enum: `hostname`, `ip`, `lldp_mgmt_addr`, `lldp_port_id`, `lldp_system_desc`, `lldp_system_name`, `mac`, `model`, `mxedge_id`, `mxtunnel_status`, `site_id`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_devices_count_distinct"}}, {"description": "Partial / full hostname", "in": "query", "name": "hostname", "schema": {"examples": ["my-hostname"], "type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"description": "Filter results by device model. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP45,AP47D", "MR84"], "type": "string"}}, {"deprecated": true, "description": "for switches and gateways, to filter on managed/unmanaged devices. Deprecated in favour of mist_configured. enum: `true`, `false`", "in": "query", "name": "managed", "schema": {"examples": ["true"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"examples": ["10.0.0"], "type": "string"}}, {"$ref": "#/components/parameters/ip"}, {"description": "MxTunnel status, enum: `up`, `down`", "in": "query", "name": "mxtunnel_status", "schema": {"$ref": "#/components/schemas/count_org_devices_mxtunnel_status"}}, {"description": "Mist Edge id, if AP is connecting to a Mist Edge", "in": "query", "name": "mxedge_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"description": "Filter results by LLDP system name", "in": "query", "name": "lldp_system_name", "schema": {"examples": ["my-lldp-system"], "type": "string"}}, {"description": "Filter results by LLDP system description", "in": "query", "name": "lldp_system_desc", "schema": {"examples": ["my-lldp-system-description"], "type": "string"}}, {"description": "Filter results by LLDP port identifier", "in": "query", "name": "lldp_port_id", "schema": {"examples": ["ge-0/0/1"], "type": "string"}}, {"description": "LLDP management IP address", "in": "query", "name": "lldp_mgmt_addr", "schema": {"examples": ["10.4.2.3"], "type": "string"}}, {"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"$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": "countOrgDevices", "tags": ["Orgs Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/devices/events/count": {"get": {"description": "Count device event records across the organization, optionally grouped by `distinct` and filtered by site, AP, firmware, model, event text, event type, and time range.", "operationId": "countOrgDeviceEvents", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `apfw`, `model`, `org_id`, `site_id`, `text`, `timestamp`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_devices_events_count_distinct"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Filter results by AP firmware version", "in": "query", "name": "apfw", "schema": {"examples": ["10.0.0"], "type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"examples": ["AP43"], "type": "string"}}, {"description": "Filter results by event message text", "in": "query", "name": "text", "schema": {"examples": ["Device connected"], "type": "string"}}, {"$ref": "#/components/parameters/device_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": "countOrgDeviceEvents", "tags": ["Orgs Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/devices/events/search": {"get": {"description": "Search device event records across the organization with filters for MAC address, model, device type, event text, event type, additional event indices, and time range.", "operationId": "searchOrgDeviceEvents", "parameters": [{"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b53010101"], "type": "string"}}, {"description": "Filter results by device model. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["EX4100-48MP,AP17", "AP43"], "type": "string"}}, {"description": "Filter results by device type. Accepts multiple comma-separated values.", "example": "switch,ap", "in": "query", "name": "device_type", "schema": {"$ref": "#/components/schemas/device_type_with_all"}}, {"description": "Filter results by event message text", "in": "query", "name": "text", "schema": {"examples": ["Device connected"], "type": "string"}}, {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions). Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["SW_PORT_DOWN,AP_CONFIGURED"], "type": "string"}}, {"description": "Return last/recent event for passed in field", "in": "query", "name": "last_by", "schema": {"examples": ["port_id"], "type": "string"}}, {"description": "Keyword to include events from additional indices (e.g. ext_tunnel for prisma events)", "in": "query", "name": "includes", "schema": {"examples": ["ext_tunnel"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "Count device config history records across the organization, optionally grouped by `distinct` and filtered by device type and time range.", "operationId": "countOrgDeviceLastConfigs", "parameters": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"description": "Field used to group this count response. enum: `mac`, `name`, `site_id`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_devices_last_configs_count_distinct"}}, {"$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": "countOrgDeviceLastConfigs", "tags": ["Orgs Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/devices/last_config/search": {"get": {"description": "Search device config history records across the organization with filters for device type, MAC address, name, software version, certificate-expiry duration, and time range.", "operationId": "searchOrgDeviceLastConfigs", "parameters": [{"description": "Filter results by device type. enum: `ap`, `gateway`, `switch`, `mxedge`", "in": "query", "name": "device_type", "schema": {"$ref": "#/components/schemas/last_config_device_type"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b53010101"], "type": "string"}}, {"description": "Filter results by name. Accepts multiple comma-separated values.", "in": "query", "name": "name", "schema": {"examples": ["name-a,name-b", "My AP"], "type": "string"}}, {"description": "Filter results by software version. Accepts multiple comma-separated values.", "in": "query", "name": "version", "schema": {"examples": ["apfw-0.15.34615-noro-0a3c,apfw-0.15.34436-noro-d810", "10.0.0"], "type": "string"}}, {"description": "Duration for expiring cert queries (format: 2d/3h/172800 seconds)", "in": "query", "name": "cert_expiry_duration", "schema": {"examples": ["2d"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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.\n\nEach radio MAC can have up to 16 BSSIDs. These are derived by incrementing the least significant hexadecimal digit (last nibble) of the MAC address from 0 to F, while keeping the remaining bits unchanged.", "operationId": "listOrgApsMacs", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 organization devices with filters for AP radio attributes, gateway HA attributes, switch EVPN attributes, LLDP data, MAC address, IP address, model, software version, site, Mist Edge, and time range. Set `stats=true` to include device stats in the response.", "operationId": "searchOrgDevices", "parameters": [{"description": "When `type`==`ap`, Channel of band_24. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_24_channel", "schema": {"examples": ["1,64"], "type": "integer"}}, {"description": "When `type`==`ap`, Channel of band_5. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_5_channel", "schema": {"examples": ["153,108"], "type": "integer"}}, {"description": "When `type`==`ap`, Channel of band_6. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_6_channel", "schema": {"examples": ["197,221"], "type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_24. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_24_bandwidth", "schema": {"examples": ["0,20"], "type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_5. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_5_bandwidth", "schema": {"examples": ["20,40"], "type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_6. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_6_bandwidth", "schema": {"examples": ["80,40"], "type": "integer"}}, {"description": "When `type`==`ap`, Power of band_24. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_24_power", "schema": {"examples": ["0,17"], "type": "integer"}}, {"description": "When `type`==`ap`, Power of band_5. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_5_power", "schema": {"examples": ["17,11"], "type": "integer"}}, {"description": "When `type`==`ap`, Power of band_6. Accepts multiple comma-separated integer values.", "in": "query", "name": "band_6_power", "schema": {"examples": ["14,12"], "type": "integer"}}, {"description": "When `type`==`gateway`, true / false", "in": "query", "name": "clustered", "schema": {"type": "boolean"}}, {"description": "When `type`==`ap`, Port speed of eth0. Accepts multiple comma-separated integer values.", "in": "query", "name": "eth0_port_speed", "schema": {"examples": ["100,1000", 100, 1000], "type": "integer"}}, {"description": "When `type`==`switch`, EVPN topology id", "in": "query", "name": "evpntopo_id", "schema": {"format": "uuid", "type": "string"}}, {"description": "Partial / full Device external ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `1.2.3.*` and `*.2.3.*` match `1.2.3.4`). Suffix-only wildcards (e.g. `*.2.3.4`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "ext_ip", "schema": {"examples": ["1.2.3.4,1.2.3.*", "1.2.3.4", "1.2.3.*", "*2.3.*"], "type": "string"}}, {"description": "Partial / full Device hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-london*` and `*london*` match `my-london-1`). Suffix-only wildcards (e.g. `*london-1`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-london-1,my-london*", "my-london-1", "my-london*", "*london*"], "type": "string"}}, {"description": "Partial / full Device IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "ip", "schema": {"examples": ["10.100.10.54,10.100.10.*", "10.100.10.54", "10.100.10.*", "*100.10.*"], "type": "string"}}, {"description": "When `type`==`switch` or `type`==`gateway`, last configuration status", "in": "query", "name": "last_config_status", "schema": {"examples": ["success"], "type": "string"}}, {"description": "Last hostname of the device. Accepts multiple comma-separated values.", "in": "query", "name": "last_hostname", "schema": {"examples": ["ap-01,ap-02"], "type": "string"}}, {"description": "When `type`==`ap`, LLDP management IP address. Accepts multiple comma-separated values.", "in": "query", "name": "lldp_mgmt_addr", "schema": {"examples": ["192.0.2.10,192.0.2.11"], "type": "string"}}, {"description": "When `type`==`ap`, LLDP port id. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `ge-0/0/*` and `*-0/0/*` match `ge-0/0/30`). Suffix-only wildcards (e.g. `*switch-01`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "lldp_port_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"$ref": "#/components/parameters/partial_filter_lldp_system_desc"}, {"description": "When `type`==`ap`, LLDP system name. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-switch*` and `*switch*` match `my-switch-01`). Suffix-only wildcards (e.g. `*switch-01`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "lldp_system_name", "schema": {"examples": ["richmond-hill-switch,Phoenix_Switch"], "type": "string"}}, {"description": "Partial / full Device MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `001122*` and `*1122*` match `001122334455`). Suffix-only wildcards (e.g. `*4455`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff,aabbcc*", "aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, {"description": "Partial / full Device model. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `AP4*` and `*P4*` match `AP43`). Suffix-only wildcards (e.g. `*43`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP43,AP4*", "AP43", "AP4*", "*P4*"], "type": "string"}}, {"description": "When `type`==`ap`, Mist Edge id, if AP is connecting to a Mist Edge. Accepts multiple comma-separated values.", "in": "query", "name": "mxedge_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "format": "uuid", "type": "string"}}, {"description": "When `type`==`ap`, Comma separated list of Mist Edge id, if AP is connecting to a Mist Edge", "in": "query", "name": "mxedge_ids", "schema": {"type": "string"}}, {"description": "When `type`==`ap`, Mist Tunnel status used to filter results. enum: `down`, `up`", "in": "query", "name": "mxtunnel_status", "schema": {"$ref": "#/components/schemas/search_org_devices_mxtunnel_status"}}, {"description": "When `type`==`gateway`. enum: `node0`, `node1`", "in": "query", "name": "node", "schema": {"$ref": "#/components/schemas/ha_cluster_node_enum"}}, {"description": "When `type`==`gateway`, node0 MAC address", "in": "query", "name": "node0_mac", "schema": {"type": "string"}}, {"description": "When `type`==`gateway`, node1 MAC address", "in": "query", "name": "node1_mac", "schema": {"type": "string"}}, {"description": "When `type`==`ap`, whether the AP is power constrained.", "in": "query", "name": "power_constrained", "schema": {"type": "boolean"}}, {"description": "When `type`==`switch` or `type`==`gateway`, Key-value pairs where the key\nis the RADIUS server address and the value contains authentication statistics:\n * (string): IP address of the RADIUS server as the key\n * `auth_accepts` (long): Number of accepted authentication requests\n * `auth_rejects` (long): Number of rejected authentication requests\n * `auth_timeouts` (long): Number of authentication timeouts\n * `auth_server_status` (string): Status of the server. Possible values: `up`, `down`, `unreachable`", "in": "query", "name": "radius_stats", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "type": "string"}}, {"description": "Whether to return device stats", "in": "query", "name": "stats", "schema": {"default": false, "type": "boolean"}}, {"description": "When `type`==`gateway` (SSR only), version of 128T agent", "in": "query", "name": "t128agent_version", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/device_type"}, {"description": "Filter results by software version. Accepts multiple comma-separated values.", "in": "query", "name": "version", "schema": {"examples": ["0.15.34615,0.14.29967"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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/summary": {"get": {"description": "Return aggregate organization device counts by device category and assignment state.", "operationId": "listOrgDevicesSummary", "responses": {"200": {"$ref": "#/components/responses/OrgDevicesSummary"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgDevicesSummary", "tags": ["Orgs Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/devices/upgrade": {"get": {"description": "List organization-level device upgrade jobs, including the site-level upgrade jobs created under each organization upgrade.", "operationId": "listOrgDeviceUpgrades", "responses": {"200": {"$ref": "#/components/responses/OrgDeviceUpgradeList"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgDeviceUpgrades", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Start an organization-level device upgrade job across selected sites. The request selects device type, sites, models, firmware versions, and upgrade strategy; AP-specific and Junos-specific options apply only where supported.", "operationId": "upgradeOrgDevices", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/upgrade_org_devices"}}}}, "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": "upgradeOrgDevices", "tags": ["Utilities Upgrade"]}}, "/api/v1/orgs/{org_id}/devices/upgrade/{upgrade_id}": {"get": {"description": "Retrieve details for an organization-level device upgrade job, including per-site upgrade status and device targets.", "operationId": "getOrgDeviceUpgrade", "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": "getOrgDeviceUpgrade", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/upgrade_id"}]}, "/api/v1/orgs/{org_id}/devices/upgrade/{upgrade_id}/cancel": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/upgrade_id"}], "post": {"description": "Cancel an organization-level device upgrade job on a best-effort basis. Devices that have already completed the upgrade are not changed.", "operationId": "cancelOrgDeviceUpgrade", "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": "cancelOrgDeviceUpgrade", "tags": ["Utilities Upgrade"]}}, "/api/v1/orgs/{org_id}/devices/versions": {"get": {"description": "List available firmware versions for organization devices, optionally filtered by device type and model.", "operationId": "listOrgAvailableDeviceVersions", "parameters": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"description": "Fetch version for device model, use/combine with `type` as needed (for switch and gateway devices). Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP27,AP27E", "AP43"], "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": "listOrgAvailableDeviceVersions", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/events/search": {"get": {"description": "Search Org events\n\n\nSupported Event Types:\n- CRADLEPOINT_SYNC_FAILED\n- ORG_CA_CERT_ADDED\n- ORG_CA_CERT_REGENERATED", "operationId": "searchOrgEvents", "parameters": [{"description": "Filter results by type. Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["CRADLEPOINT_MAINTENANCE_COMPLETED,CRADLEPOINT_MAINTENANCE_STARTED"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/OrgEventsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgEvents", "tags": ["Orgs Events"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/events/system/count": {"get": {"description": "Count organization system event records, optionally grouped by `distinct` and filtered by time range.", "operationId": "countOrgSystemEvents", "parameters": [{"description": "Field used to group this count response", "in": "query", "name": "distinct", "schema": {"examples": ["site_id"], "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": "countOrgSystemEvents", "tags": ["Orgs Events"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/events/system/search": {"get": {"description": "Search organization system event records with time range, sorting, and pagination controls.", "operationId": "searchOrgSystemEvents", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/OrgSystemEventsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgSystemEvents", "tags": ["Orgs Events"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/evpn_topologies": {"get": {"description": "List EVPN topology records in the organization, optionally filtering for org-level, site-level, or all topologies with `for_site`.", "operationId": "listOrgEvpnTopologies", "parameters": [{"description": "Filter for org/site level EVPN topologies. enum: `any`, `false`, `true`", "in": "query", "name": "for_site", "schema": {"$ref": "#/components/schemas/mxedge_for_site"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 specified 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\n2. You can also use `core` / `distribution` to form a 2-tier EVPN topology where ESI-Lag is configured distribution to connect to access switches\n3. 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 switches 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\nFor 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 versus another", "operationId": "createOrgEvpnTopology", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "CC", "pod_names": {"1": "default", "2": "default"}, "switches": [{"mac": "5c5b35000003", "role": "collapsed-core"}, {"mac": "5c5b35000004", "role": "collapsed-core"}]}}}, "schema": {"$ref": "#/components/schemas/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 an EVPN topology from the organization by topology ID.", "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": "Retrieve the switch roles, links, and generation options for a specific EVPN topology.", "operationId": "getOrgEvpnTopology", "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": "getOrgEvpnTopology", "tags": ["Orgs EVPN Topologies"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/evpn_topology_id"}], "put": {"description": "Update an EVPN topology, including switch membership, switch roles, links, and generation options.", "operationId": "updateOrgEvpnTopology", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"overwrite": false, "switches": [{"mac": "5c5b35000003", "role": "collapsed-core"}, {"mac": "5c5b35000004", "role": "none"}]}}}, "schema": {"$ref": "#/components/schemas/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}/exports/e911_report": {"delete": {"description": "Disable automatic E911 AP BSSID report generation for the organization.", "operationId": "disableOrgE911Report", "responses": {"200": {"$ref": "#/components/responses/OrgE911Report"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "disableOrgE911Report", "tags": ["Orgs Reports"]}, "get": {"description": "Get the status of E911 AP BSSID reports and download URL if available.", "operationId": "getOrgE911Report", "responses": {"200": {"$ref": "#/components/responses/OrgE911Report"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgE911Report", "tags": ["Orgs Reports"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Enable automatic E911 AP BSSID report generation for the organization. Reports will be generated immediately and then every 24 hours.", "operationId": "enableOrgE911Report", "responses": {"200": {"$ref": "#/components/responses/OrgE911Report"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "enableOrgE911Report", "tags": ["Orgs Reports"]}}, "/api/v1/orgs/{org_id}/gatewaytemplates": {"get": {"description": "List organization gateway templates, which provide reusable WAN gateway configuration that can be applied to gateways at sites.", "operationId": "listOrgGatewayTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization gateway template with reusable WAN gateway networks, ports, routing, and service-policy configuration.\n\nGateway templates can be applied to multiple sites within the organization to provide consistent gateway configuration across sites.\nTo assign a gateway template to a site, use the [Update Site](/#operations/updateSiteInfo) endpoint and specify the gateway template ID in the `gatewaytemplate_id` field of the request body.", "operationId": "createOrgGatewayTemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "name": "ITParis", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "traffic_shaping": {"enabled": false}, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}, {"action": "deny", "idp": {"enabled": false}, "name": "ITParis-internet", "path_preference": "untrust", "services": ["internet_any"], "tenants": ["ITParis"]}], "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 an organization gateway template and remove that reusable gateway configuration object from the organization.", "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": "Retrieve the configuration stored in a specific organization gateway template.", "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 the configuration stored in an organization gateway template.", "operationId": "updateOrgGatewayTemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "name": "ITParis", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "traffic_shaping": {"enabled": false}, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}, {"action": "deny", "idp": {"enabled": false}, "name": "ITParis-internet", "path_preference": "untrust", "services": ["internet_any"], "tenants": ["ITParis"]}], "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": "List guest authorization records across the organization, including WLAN, SSID, authentication method, expiration, and guest identity details.", "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 organization guest authorization records, optionally grouped by `distinct` and filtered by time range.", "operationId": "countOrgGuestAuthorizations", "parameters": [{"description": "Field used to group this count response. enum: `auth_method`, `company`, `ssid`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_guests_count_distinct"}}, {"$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": "countOrgGuestAuthorizations", "tags": ["Orgs Guests"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/guests/search": {"get": {"description": "Search organization guest authorization records with filters for WLAN, SSID, authentication method, and time range.", "operationId": "searchOrgGuestAuthorization", "parameters": [{"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000000"], "type": "string"}}, {"description": "Filter results by authentication method", "in": "query", "name": "auth_method", "schema": {"examples": ["psk"], "type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"examples": ["Guest"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}], "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 a guest authorization record by guest MAC address.", "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": "Retrieve the guest authorization record associated with a guest MAC address.", "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 the organization guest authorization record for a guest MAC address, including authorization state, duration, WLAN, and guest identity fields.", "operationId": "updateOrgGuestAuthorization", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"company": "string", "email": "user@example.com", "mac": "string", "minutes": 1440, "name": "John Smith", "wlan_id": "6748cfa6-4e12-11e6-9188-0242ac110007"}}}, "schema": {"$ref": "#/components/schemas/guest_org"}}}}, "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": "List organization Intrusion Detection and Prevention (IDP) profiles, including their base profile and signature overwrite rules.", "operationId": "listOrgIdpProfiles", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization Intrusion Detection and Prevention (IDP) profile with a built-in base profile and optional signature overwrite rules.", "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 an organization Intrusion Detection and Prevention (IDP) profile by profile ID.", "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": "Retrieve the base profile and signature overwrite rules for a specific organization 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 an organization IDP profile, including its base profile and signature overwrite rules.", "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": {"$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": "updateOrgIdpProfile", "tags": ["Orgs IDP Profiles"]}}, "/api/v1/orgs/{org_id}/insights/marvisclient/{marvisclient_id}/marvisclient-metrics": {"get": {"description": "Return time-series metrics for a specific Marvis Client device. For the full list of supported metric field names and example values, refer to [List Insight Metrics](/#operations/listInsightMetrics) under `/api/v1/const/insight_metrics`.", "operationId": "getOrgMarvisClientInsights", "parameters": [{"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/MarvisClientInsights"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgMarvisClientInsights", "tags": ["Orgs Clients - Marvis"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"description": "Marvis Client device UUID", "in": "path", "name": "marvisclient_id", "required": true, "schema": {"format": "uuid", "type": "string"}}]}, "/api/v1/orgs/{org_id}/insights/sites-sle": {"get": {"description": "Return per-site Service-Level Expectation (SLE) scores for Wi-Fi, wired, or WAN service over the requested time window.", "operationId": "getOrgSitesSle", "parameters": [{"description": "Filter insights by SLE name. enum: `wan`, `wifi`, `wired`", "in": "query", "name": "sle", "schema": {"$ref": "#/components/schemas/org_site_sle_type"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Return organization-level insight data for the selected metric, such as all or worst sites, Mist Edge insights, or other supported insight metrics, over the requested time window.", "operationId": "getOrgSle", "parameters": [{"description": "See [List Insight Metrics](/#operations/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 \n\nStarting with the April release, Virtual Chassis devices in Mist will now use\na cloud-assigned virtual MAC address as the device ID, instead of the physical\nMAC address of the FPC0 member.\n\n\n**Retrieving the device ID or Site ID of a Virtual Chassis:**\n\n1. Use this API call with the query parameters `vc=true` and `mac` set to the MAC address of the VC member.\n\n2. In the response, check the `vc_mac` and `mac` fields:\n\n - If `vc_mac` is empty or not present, the device is not part of a Virtual Chassis.\n The `device_id` and `site_id` will be available in the device information.\n\n - If `vc_mac` differs from the `mac` field, the device is part of a Virtual Chassis\n but is not the device used to generate the Virtual Chassis ID. Use the `vc_mac` value with the [Get Org Inventory](/#operations/getOrgInventory)\n API call to retrieve the `device_id` and `site_id`.\n\n - If `vc_mac` matches the `mac` field, the device is the device used to generate the Virtual Chassis ID and he `device_id` and `site_id` will be available\n in the device information. \n This is the case if the device is the Virtual Chassis \"virtual device\" (MAC starting with `020003`) or if the device is the Virtual Chassis FPC0 and the Virtual Chassis is still using the FPC0 MAC address to generate the device ID.\n", "operationId": "getOrgInventory", "parameters": [{"description": "Filter results by device serial number. Accepts multiple comma-separated values.", "in": "query", "name": "serial", "schema": {"examples": ["PE3717390301,EY2523AN0523", "FXLH2015150025"], "type": "string"}}, {"description": "Filter results by device model. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["EX4300-48T,EX4100-48MP", "AP43"], "type": "string"}}, {"description": "Filter results by type. enum: `ap`, `gateway`, `switch`. Accepts multiple comma-separated values.", "example": "switch,ap", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b350e0001"], "type": "string"}}, {"description": "Filter results by one site identifier. Use a single value; comma-separated values are not supported", "in": "query", "name": "site_id", "schema": {"examples": ["4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "format": "uuid", "type": "string"}}, {"description": "Virtual Chassis MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "vc_mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b350e0001"], "type": "string"}}, {"description": "To display Virtual Chassis members", "in": "query", "name": "vc", "schema": {"default": false, "examples": [false], "type": "boolean"}}, {"description": "To display Unassigned devices", "in": "query", "name": "unassigned", "schema": {"default": true, "examples": [true], "type": "boolean"}}, {"description": "Filter on inventory last modified time, in epoch", "in": "query", "name": "modified_after", "schema": {"examples": [1703003296], "type": "integer"}}, {"description": "Filter results to devices that were last disconnected before this time, in epoch seconds", "in": "query", "name": "disconnected_before", "schema": {"examples": [1733522845], "type": "integer"}}, {"$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": "Claim devices into the organization inventory using order activation codes or device claim codes.", "operationId": "addOrgInventory", "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": {"$ref": "#/components/responses/OrgInventoryAdd"}, "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 inventory assignment for one or more devices, such as assigning them to a site, unassigning them, or deleting inventory records by MAC address or serial number.", "operationId": "updateOrgInventoryAssignment", "requestBody": {"content": {"application/json": {"examples": {"assign": {"value": {"disable_auto_config": false, "macs": ["5c5b350e0001"], "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/count": {"get": {"description": "Count organization inventory records, optionally grouped by `distinct` and filtered by device type, site, model, version, and status.", "operationId": "countOrgInventory", "parameters": [{"description": "Field used to group this count response. enum: `model`, `status`, `site_id`, `sku`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/inventory_count_distinct"}}, {"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by device model. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP45,BT11"], "type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"description": "Filter results by status. enum: `connected`, `disconnected`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/device_status_filter"}}, {"$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": "countOrgInventory", "tags": ["Orgs Inventory"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/inventory/create_ha_cluster": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create a gateway HA cluster from unassigned gateway inventory nodes and assign the cluster to the specified site.", "operationId": "createOrgGatewayHaCluster", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"disable_auto_config": true, "mist_configured": 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 Inventory"]}}, "/api/v1/orgs/{org_id}/inventory/delete_ha_cluster": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Delete HA Cluster\n\nAfter 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 Inventory"]}}, "/api/v1/orgs/{org_id}/inventory/reevaluate_auto_assignment": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Re-run organization inventory auto-assignment rules against devices that are eligible for automatic site 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 other model) are allowed.", "operationId": "replaceOrgDevices", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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}/inventory/search": {"get": {"description": "Search organization inventory records with filters for type, MAC address, model, name, site, serial number, Virtual Chassis master state, SKU, version, status, and text.", "operationId": "searchOrgInventory", "parameters": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"description": "Filter by MAC address. Partial matches may use `*` wildcards (e.g. `*5b35*` matches `5c5b350e0001` and `5c5b35000301`). Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b350e0001,*5b35*", "5c5b350e0001", "*5b35*"], "type": "string"}}, {"description": "Partial / full Device model. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `AP4*` and `*P4*` match `AP43`). Suffix-only wildcards (e.g. `*43`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP43,AP4*", "AP43", "AP4*", "*P4*"], "type": "string"}}, {"description": "Device name. Always a partial match (e.g. `london` will match `london-1`, `london-2`, `my-london-device`...). Accepts multiple comma-separated values.", "in": "query", "name": "name", "schema": {"examples": ["name-a,name-b", "london"], "type": "string"}}, {"description": "Filter inventory results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "format": "uuid", "type": "string"}}, {"description": "Device serial number. Partial match allowed with wildcard * (e.g. `*123*` will match `AB123CD`, `12345`, `XY123`). Accepts multiple comma-separated values.", "in": "query", "name": "serial", "schema": {"examples": ["AB123CD,*123*", "AB123CD", "*123*"], "type": "string"}}, {"description": "Filter inventory results by whether the device is the Virtual Chassis master", "in": "query", "name": "master", "schema": {"examples": ["true"], "type": "string"}}, {"description": "Device SKU. Partial match allowed with wildcard * (e.g. `*2300*` will match `EX2300-F-12P`). Accepts multiple comma-separated values.", "in": "query", "name": "sku", "schema": {"examples": ["EX2300-F-12P,*2300*", "EX2300-F-12P", "*2300*"], "type": "string"}}, {"description": "Device version. Partial match allowed with wildcard * (e.g. `2R3` will match `21.2R3-S3.5`). Accepts multiple comma-separated values.", "in": "query", "name": "version", "schema": {"examples": ["21.2R3-S3.5,*2R3*", "21.2R3-S3.5", "*2R3*"], "type": "string"}}, {"description": "Device status. enum: `connected`, `disconnected`. Accepts multiple comma-separated values.", "example": "connected,disconnected", "in": "query", "name": "status", "schema": {"type": "string"}}, {"description": "Wildcards for name, mac, serial", "in": "query", "name": "text", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/OrgInventorySearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgInventory", "tags": ["Orgs Inventory"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/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": {"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": "Cancel a pending organization admin invite by invite ID.", "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 a pending organization admin invite, including invitee identity and requested privileges.", "operationId": "updateOrgAdminInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "List organization devices connected to Juniper Support Insights (JSI), optionally filtered by model, serial number, or MAC address.", "operationId": "listOrgJsiDevices", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"examples": ["AP43"], "type": "string"}}, {"description": "Filter results by device serial number", "in": "query", "name": "serial", "schema": {"examples": ["FXLH2015150025"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["5c5b350e0001"], "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": "Return the outbound SSH registration command used to onboard Junos devices to Juniper Support Insights (JSI).", "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 a WebSocket-backed shell session for a JSI-connected device identified by MAC address.", "operationId": "createOrgJsiDeviceShellSession", "responses": {"200": {"$ref": "#/components/responses/WebsocketSessionWithUrl"}, "400": {"$ref": "#/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": "Start a software upgrade for a JSI-connected device identified by MAC address using the requested target version.", "operationId": "upgradeOrgJsiDevice", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"version": "3.1.5"}}}, "schema": {"$ref": "#/components/schemas/version_string"}}}}, "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": "This gets all devices purchased from the accounts associated with the Org \n * Fetch Install base devices for all linked accounts and associated account of the linked accounts. \n * The primary and the associated account ids will be queries from SFDC by passing the linked account \n * Returns only the device centric details of the Install base device. No customer specific information will be returned.", "operationId": "listOrgJsiPastPurchases", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"description": "Filter results by one or more device models. Supports comma-separated values", "in": "query", "name": "model", "schema": {"examples": ["AP43"], "type": "string"}}, {"description": "Filter results by device serial number", "in": "query", "name": "serial", "schema": {"examples": ["FXLH2015150025"], "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}/jsi/inventory/count": {"get": {"description": "Count devices purchased from the accounts associated with the Org", "operationId": "countOrgJsiAssetsAndContracts", "parameters": [{"description": "Field used to group this count response. enum: `account_id`, `claimed`, `has_support`, `end_of_sale_time`, `eos_time`, `version_time`, `model`, `sku`, `status`, `type`, `version`, `warranty_type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/jsi_inventory_count_distinct"}}, {"$ref": "#/components/parameters/limit"}], "responses": {"200": {"$ref": "#/components/responses/Count"}, "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": "countOrgJsiAssetsAndContracts", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/jsi/inventory/search": {"get": {"description": "This gets all devices purchased from the accounts associated with the Org \n * Fetch Install base devices for all linked accounts and associated account of the linked accounts. \n * The primary and the associated account ids will be queries from SFDC by passing the linked account \n * Returns only the device centric details of the Install base device. No customer specific information will be returned.", "operationId": "searchOrgJsiAssetsAndContracts", "parameters": [{"description": "Device claim status, `true` for claimed devices, `false` for all devices. Accepts multiple comma-separated boolean values.", "in": "query", "name": "claimed", "schema": {"examples": ["true,false", true], "type": "boolean"}}, {"description": "Filter results by device model. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["QFX10000-36Q,QFX10000-30C", "AP43"], "type": "string"}}, {"description": "Filter results by device serial number. Accepts multiple comma-separated values.", "in": "query", "name": "serial", "schema": {"examples": ["ACNP4666,ACNP6969", "FXLH2015150025"], "type": "string"}}, {"description": "Filter results by SKU. Accepts multiple comma-separated values.", "in": "query", "name": "sku", "schema": {"examples": ["QFX10000-36Q,QFX10000-30C", "EX2300"], "type": "string"}}, {"description": "Device status. enum: `all`, `connected`, `disconnected`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/device_status"}}, {"description": "Device warranty type used to filter Juniper Support Insight inventory. enum: `Standard Hardware Warranty`, `Enhanced Hardware Warranty`, `Dead On Arrival Warranty`, `Limited Lifetime Warranty`, `Software Warranty`, `Limited Lifetime Warranty for WLA`, `Warranty-JCPO EOL (DOA Not Included)`, `MIST Enhanced Hardware Warranty`, `MIST Standard Warranty`, `Determine Lifetime warranty`", "in": "query", "name": "warranty_type", "schema": {"$ref": "#/components/schemas/jsi_warranty_type"}}, {"description": "Filter devices with End Of Sale date after this date", "in": "query", "name": "end_of_sale_after", "schema": {"examples": ["2024-01-01"], "type": "string"}}, {"description": "Filter devices with End Of Sale date before this date", "in": "query", "name": "end_of_sale_before", "schema": {"examples": ["2025-12-31"], "type": "string"}}, {"description": "Filter devices with End Of Support date after this date", "in": "query", "name": "eos_after", "schema": {"examples": ["2024-01-01"], "type": "string"}}, {"description": "Filter devices with End Of Support date before this date", "in": "query", "name": "eos_before", "schema": {"examples": ["2025-12-31"], "type": "string"}}, {"description": "Filter devices with OS Version End Of Support date after this date", "in": "query", "name": "version_eos_after", "schema": {"examples": ["2024-01-01"], "type": "string"}}, {"description": "Filter devices with OS Version End Of Support date before this date", "in": "query", "name": "version_eos_before", "schema": {"examples": ["2025-12-31"], "type": "string"}}, {"description": "Indicates if the device is covered under active support contract. Accepts multiple comma-separated boolean values.", "in": "query", "name": "has_support", "schema": {"examples": ["true,false", true], "type": "boolean"}}, {"description": "To get the onboarded devices that are affected by the SIRT ID", "in": "query", "name": "sirt_id", "schema": {"examples": ["JSA12345"], "type": "string"}}, {"description": "To get the onboarded devices that are affected by the PBN ID", "in": "query", "name": "pbn_id", "schema": {"examples": ["PBN67890"], "type": "string"}}, {"description": "Wildcards for `serial`, `model`, `account_id`", "in": "query", "name": "text", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/JsiInventorySearch"}, "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": "searchOrgJsiAssetsAndContracts", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/jsi/pbn/count": {"get": {"description": "Get count of PBN advisories grouped by specified field", "operationId": "countOrgJsiPbn", "parameters": [{"description": "Field to group by enum: `versions`, `models`, `customer_risk`, `bug_type`", "in": "query", "name": "distinct", "required": true, "schema": {"$ref": "#/components/schemas/count_pbn_distinct"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/JsiPbnCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countOrgJsiPbn", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/jsi/pbn/search": {"get": {"description": "Text search for PBN (Problem Bug Notification) advisories. Search can be done on versions, models, customer_risk, id, and bug_type fields.", "operationId": "searchOrgJsiPbn", "parameters": [{"description": "OS versions to search for", "in": "query", "name": "versions", "schema": {"examples": ["20.4R3"], "type": "string"}}, {"description": "Device models to search for", "in": "query", "name": "models", "schema": {"type": "string"}}, {"description": "Customer risk level to filter by", "in": "query", "name": "customer_risk", "schema": {"type": "string"}}, {"description": "PBN ID to search for", "in": "query", "name": "id", "schema": {"examples": ["1403338"], "type": "string"}}, {"description": "Bug type to filter by", "in": "query", "name": "bug_type", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"$ref": "#/components/parameters/search_after"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/JsiPbnSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgJsiPbn", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/jsi/sirt/count": {"get": {"description": "Get count of SIRT advisories grouped by specified field", "operationId": "countOrgJsiSirt", "parameters": [{"description": "Field to group by. enum: `jsa_updated_date`, `models`, `severity`, `versions`", "in": "query", "name": "distinct", "required": true, "schema": {"$ref": "#/components/schemas/count_sirt_distinct"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/JsiSirtCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countOrgJsiSirt", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/jsi/sirt/search": {"get": {"description": "Search and get all the SIRT for the onboarded devices. Search can be done on severity, id, updated_after, updated_before, published_after, published_before, models, versions, and text fields.", "operationId": "searchOrgJsiSirt", "parameters": [{"description": "Filter results by severity", "in": "query", "name": "severity", "schema": {"type": "string"}}, {"description": "Filter results by identifier", "in": "query", "name": "id", "schema": {"examples": ["JSA100053"], "type": "string"}}, {"description": "JSA Updated date to be filtered after this date", "in": "query", "name": "updated_after", "schema": {"type": "string"}}, {"description": "JSA Updated date to be filtered before this date", "in": "query", "name": "updated_before", "schema": {"type": "string"}}, {"description": "JSA Published date to be filtered after this date", "in": "query", "name": "published_after", "schema": {"type": "string"}}, {"description": "JSA Published date to be filtered before this date", "in": "query", "name": "published_before", "schema": {"type": "string"}}, {"description": "Filter results by models", "in": "query", "name": "models", "schema": {"type": "string"}}, {"description": "Software version affected by the SIRT", "in": "query", "name": "versions", "schema": {"examples": ["20.4R3"], "type": "string"}}, {"description": "Wildcards search on os_version_affected, affected_models, severity, jsa_id", "in": "query", "name": "text", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/JsiSirtSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgJsiSirt", "tags": ["Orgs JSI"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/licenses": {"get": {"description": "Return the organization license entitlement, subscription, amendment, consumption, and available-license summary.", "operationId": "getOrgLicensesSummary", "responses": {"200": {"$ref": "#/components/responses/License"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgLicensesSummary", "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\nThis shows license usage (i.e. needed) based on the features enabled for the site.", "operationId": "getOrgLicensesBySite", "responses": {"200": {"$ref": "#/components/responses/LicenseUsageOrg"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgLicensesBySite", "tags": ["Orgs Licenses"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/logs": {"get": {"deprecated": true, "description": "Get List of change logs for the current Org", "operationId": "listOrgAuditLogsLegacy", "parameters": [{"description": "Filter results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "type": "string"}}, {"description": "Filter results by one or more administrator names or email addresses. Supports comma-separated values", "in": "query", "name": "admin_name", "schema": {"examples": ["John Doe"], "type": "string"}}, {"description": "Filter results by one or more message text values. Supports comma-separated values", "in": "query", "name": "message", "schema": {"examples": ["Created a new site"], "type": "string"}}, {"description": "Field used to sort results; a leading `-` indicates descending order. enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "in": "query", "name": "sort", "schema": {"$ref": "#/components/schemas/list_org_logs_sort"}}, {"$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/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": "listOrgAuditLogsLegacy", "tags": ["Orgs Logs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/logs/count": {"get": {"description": "Count organization audit log records, optionally grouped by `distinct` and filtered by administrator, site, message text, and time range.", "operationId": "countOrgAuditLogs", "parameters": [{"description": "Field used to group this count response. enum: `admin_id`, `admin_name`, `message`, `site_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_logs_count_distinct"}}, {"description": "Filter audit log results by administrator identifier", "in": "query", "name": "admin_id", "schema": {"examples": ["4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "format": "uuid", "type": "string"}}, {"description": "Filter audit log results by one or more administrator names. Supports comma-separated values", "in": "query", "name": "admin_name", "schema": {"examples": ["John Doe"], "type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "format": "uuid", "type": "string"}}, {"description": "Filter log results by message text", "in": "query", "name": "message", "schema": {"examples": ["Created a new site"], "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": "countOrgAuditLogs", "tags": ["Orgs Logs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/logs/search": {"get": {"description": "Get a list of change logs for the current Org", "operationId": "listOrgAuditLogs", "parameters": [{"description": "Filter results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "type": "string"}}, {"description": "Filter results by one or more administrator names or email addresses. Supports comma-separated values", "in": "query", "name": "admin_name", "schema": {"examples": ["John Doe"], "type": "string"}}, {"description": "Filter results by one or more message text values. Supports comma-separated values", "in": "query", "name": "message", "schema": {"examples": ["Created a new site"], "type": "string"}}, {"description": "Field used to sort results; a leading `-` indicates descending order. enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "in": "query", "name": "sort", "schema": {"$ref": "#/components/schemas/list_org_logs_sort"}}, {"$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/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": "listOrgAuditLogs", "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\n\n### CSV File Format\n```csv\nVendor AP name,Mist AP Mac\nUS Office AP-2 - 5c:5b:35:00:00:02,5c5b35000002\n```", "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}/marvisclients/events/count": {"get": {"description": "Count Marvis Client events by a distinct field.", "operationId": "countOrgMarvisClientEvents", "parameters": [{"description": "Field to count by. enum: `type`, `device_id`, `wifi_mac`, `wifi_ip`, `hostname`, `ssid`, `bssid`, `channel`, `pre_bssid`, `pre_channel`", "in": "query", "name": "distinct", "schema": {"default": "type", "type": "string"}}, {"description": "Filter by event type", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter by Marvis Client installation device UUID", "in": "query", "name": "device_id", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi MAC address", "in": "query", "name": "wifi_mac", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi IP address", "in": "query", "name": "wifi_ip", "schema": {"type": "string"}}, {"description": "Filter by device hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter by SSID involved in roam events", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter by BSSID the client roamed to", "in": "query", "name": "bssid", "schema": {"type": "string"}}, {"description": "Filter by channel the client roamed to", "in": "query", "name": "channel", "schema": {"type": "string"}}, {"description": "Filter by BSSID the client roamed from", "in": "query", "name": "pre_bssid", "schema": {"type": "string"}}, {"description": "Filter by channel the client roamed from", "in": "query", "name": "pre_channel", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/MarvisClientEventsCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countOrgMarvisClientEvents", "tags": ["Orgs Clients - Marvis"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/marvisclients/events/search": {"get": {"description": "Search Marvis Client events across the organization.", "operationId": "searchOrgMarvisClientEvents", "parameters": [{"description": "Filter by event type", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter by Marvis Client installation device UUID", "in": "query", "name": "device_id", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi MAC address", "in": "query", "name": "wifi_mac", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi IP address", "in": "query", "name": "wifi_ip", "schema": {"type": "string"}}, {"description": "Filter by device hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter by SSID involved in roam events", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter by BSSID the client roamed to", "in": "query", "name": "bssid", "schema": {"type": "string"}}, {"description": "Filter by channel the client roamed to", "in": "query", "name": "channel", "schema": {"type": "string"}}, {"description": "Filter by BSSID the client roamed from", "in": "query", "name": "pre_bssid", "schema": {"type": "string"}}, {"description": "Filter by channel the client roamed from", "in": "query", "name": "pre_channel", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/MarvisClientEventsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgMarvisClientEvents", "tags": ["Orgs Clients - Marvis"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/marvisinvites": {"get": {"description": "List Marvis Client onboarding invite profiles for the organization, including enrollment URLs and enabled telemetry, location, and synthetic-test capabilities.", "operationId": "listOrgMarvisClientInvites", "responses": {"200": {"$ref": "#/components/responses/MarvisClientsArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgMarvisClientInvites", "tags": ["Orgs Marvis Invites"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create a Marvis Client onboarding invite profile for the organization, defining the enabled telemetry, location, and synthetic-test capabilities.", "operationId": "createOrgMarvisClientInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"location": {"enabled": true}, "name": "Handhelds", "synthetic_test": {"enabled": true}, "telemetry": {"enabled": true}}}}, "schema": {"$ref": "#/components/schemas/marvis_client"}}}}, "responses": {"200": {"$ref": "#/components/responses/MarvisClient"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgMarvisClientInvite", "tags": ["Orgs Marvis Invites"]}}, "/api/v1/orgs/{org_id}/marvisinvites/{marvisinvite_id}": {"delete": {"description": "Delete a Marvis Client onboarding invite profile by ID.", "operationId": "deleteOrgMarvisClientInvite", "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": "deleteOrgMarvisClientInvite", "tags": ["Orgs Marvis Invites"]}, "get": {"description": "Retrieve a Marvis Client onboarding invite profile, including enrollment URL and enabled client capabilities.", "operationId": "getOrgMarvisClientInvite", "responses": {"200": {"$ref": "#/components/responses/MarvisClient"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgMarvisClientInvite", "tags": ["Orgs Marvis Invites"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/marvisinvite_id"}], "put": {"description": "Update a Marvis Client onboarding invite profile, including enabled telemetry, location, and synthetic-test capabilities.", "operationId": "updateOrgMarvisClientInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"location": {"enabled": true}, "name": "Handhelds", "synthetic_test": {"enabled": true}, "telemetry": {"enabled": true}}}}, "schema": {"$ref": "#/components/schemas/marvis_client"}}}}, "responses": {"200": {"$ref": "#/components/responses/MarvisClient"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgMarvisClientInvite", "tags": ["Orgs Marvis Invites"]}}, "/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 commands 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": "List Mist Edge clusters in the organization, which group one or more Mist Edge devices for tunneling, RadSec, and related edge services.", "operationId": "listOrgMxEdgeClusters", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a Mist Edge cluster with tunnel termination, RadSec, NAC,\nand management settings.\n\n\n**Note**: It is not recommended to combine multiple roles (tunnel termination, RadSec, NAC) on the same Mist Edge cluster", "operationId": "createOrgMxEdgeCluster", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string", "radsec": {"auth_servers": [{"host": "string", "port": 0}], "enabled": true}, "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 a Mist Edge cluster by cluster ID, removing its cluster configuration from the organization.", "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": "Retrieve configuration details for a specific Mist Edge cluster, including tunneling, RadSec, NAC, and management settings.", "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 a Mist Edge cluster's tunneling, RadSec, NAC, and management settings.", "operationId": "updateOrgMxEdgeCluster", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string", "radsec": {"auth_servers": [{"host": "string", "port": 0}], "enabled": true}, "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": "List Mist Edge appliances in the organization, optionally filtering for org-level, site-level, or all Mist Edges with `for_site`.", "operationId": "listOrgMxEdges", "parameters": [{"description": "Filter for org/site level Mist Edges. enum: `any`, `false`, `true`", "in": "query", "name": "for_site", "schema": {"$ref": "#/components/schemas/mxedge_for_site"}}, {"$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 a Mist Edge appliance configuration in the organization, including cluster assignment, management, services, and tunnel termination settings.", "operationId": "createOrgMxEdge", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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}}}}, "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 one or more Mist Edge appliances from the organization to a site by Mist Edge ID and site ID.", "operationId": "assignOrgMxEdgeToSite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Claim one or more Mist Edge appliances into the organization using their claim codes.", "operationId": "claimOrgMxEdge", "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/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 organization Mist Edge records, optionally grouped by `distinct` and filtered by Mist Edge, cluster, site, model, distro, tunnel termination version, and time range.", "operationId": "countOrgMxEdges", "parameters": [{"description": "Field used to group this count response. enum: `distro`, `model`, `mxcluster_id`, `site_id`, `tunterm_version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_mxedge_count_distinct"}}, {"description": "Filter results by Mist Edge identifier", "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": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Debian code name (buster, bullseye)", "in": "query", "name": "distro", "schema": {"type": "string"}}, {"description": "Filter results by tunnel termination version", "in": "query", "name": "tunterm_version", "schema": {"type": "string"}}, {"description": "Field used to sort results", "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"}], "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 Mist Edge event records across the organization, optionally grouped by `distinct` and filtered by Mist Edge, cluster, event type, service, and time range.", "operationId": "countOrgSiteMxEdgeEvents", "parameters": [{"description": "Field used to group this count response. enum: `mxcluster_id`, `mxedge_id`, `package`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_mxedge_events_count_distinct"}}, {"description": "Filter results by Mist Edge identifier", "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": "Filter results by service name", "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 Mist Edge event records across the organization with filters for Mist Edge, cluster, event type, service, component, and time range.", "operationId": "searchOrgMistEdgeEvents", "parameters": [{"description": "Filter results by Mist Edge identifier", "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": "Filter results by service name", "in": "query", "name": "service", "schema": {"type": "string"}}, {"description": "Filter results by component name", "in": "query", "name": "component", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort_last_seen_reverse"}, {"$ref": "#/components/parameters/search_after"}], "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 organization Mist Edge records with filters for hostname, Mist Edge, cluster, site, model, distro, tunnel termination version, and time range.", "operationId": "searchOrgMxEdges", "parameters": [{"description": "Partial / full Device hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-london*` and `*london*` match `my-london-1`). Suffix-only wildcards (e.g. `*london-1`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-london-1,my-london*", "my-london-1", "my-london*", "*london*"], "type": "string"}}, {"description": "Filter results by Mist Edge identifier. Accepts multiple comma-separated values.", "in": "query", "name": "mxedge_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "Mist edge cluster id. Accepts multiple comma-separated values.", "in": "query", "name": "mxcluster_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "Partial / full Device model. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `AP4*` and `*P4*` match `AP43`). Suffix-only wildcards (e.g. `*43`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "model", "schema": {"examples": ["AP43,AP4*", "AP43", "AP4*", "*P4*"], "type": "string"}}, {"description": "Debian code name (buster, bullseye)", "in": "query", "name": "distro", "schema": {"type": "string"}}, {"description": "Filter results by tunnel termination version", "in": "query", "name": "tunterm_version", "schema": {"type": "string"}}, {"description": "Mist edge site id", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Whether to return device stats, default is false", "in": "query", "name": "stats", "schema": {"type": "boolean"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort_last_seen_reverse"}, {"$ref": "#/components/parameters/search_after"}], "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 one or more Mist Edge appliances from their current site while keeping them in the organization.", "operationId": "unassignOrgMxEdgeFromSite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "List Mist Edge upgrade requests for the organization, including status, rollout strategy, target versions, and per-status target counts.", "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": "Schedule a Mist Edge upgrade for selected Mist Edges, using service target versions or an optional Linux distro upgrade with rollout strategy and canary settings.", "operationId": "upgradeOrgMxEdges", "requestBody": {"content": {"application/json": {"examples": {"Upgrade_MxEdge": {"value": {"allow_downgrades": {"mxagent": false, "tunterm": true}, "canary_phases": [5, 25, 50, 100], "channel": "stable", "max_failure_percentage": 5, "max_failures": [1, 1, 5, 5], "mxedge_ids": ["387804a7-3474-85ce-15a2-f9a9684c9c90"], "start_time": 1624399840, "strategy": "serial", "versions": {"mxagent": "latest", "radsecproxy": "", "tunterm": "default"}}}, "Upgrade_MxEdge_Distro": {"value": {"canary_phases": [5, 25, 50, 100], "distro": "buster", "max_failure_percentage": 5, "max_failures": [1, 1, 5, 5], "mxedge_ids": ["387804a7-3474-85ce-15a2-f9a9684c9c90"], "start_time": 1624399840, "strategy": "serial"}}}, "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": "Retrieve status, rollout strategy, target versions, and target counts for a specific Mist Edge upgrade request.", "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"}], "put": {"description": "Update a queued Mist Edge upgrade request, such as target versions, rollout strategy, start time, or target Mist Edge IDs. Only upgrades in `queued` state can be updated.", "operationId": "updateOrgMxEdgeUpgrade", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/mxedge_upgrade_multi"}}}, "description": "Request Body"}, "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": "updateOrgMxEdgeUpgrade", "tags": ["Utilities Upgrade"]}}, "/api/v1/orgs/{org_id}/mxedges/upgrade/{upgrade_id}/cancel": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/upgrade_id"}], "post": {"description": "Cancel a Mist Edge upgrade request on a best-effort basis. Mist Edges that have already been upgraded are not changed.", "operationId": "cancelOrgMxEdgeUpgrade", "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": "cancelOrgMxEdgeUpgrade", "tags": ["Utilities Upgrade"]}}, "/api/v1/orgs/{org_id}/mxedges/versions": {"get": {"description": "Retrieve available Mist Edge package versions by upgrade channel and distro.", "operationId": "getOrgMxEdgeUpgradeInfo", "parameters": [{"description": "Upgrade channel used to filter available versions. enum: `alpha`, `beta`, `stable`", "in": "query", "name": "channel", "schema": {"$ref": "#/components/schemas/get_org_mxedge_upgrade_info_channel"}}, {"description": "Filter results by distro", "in": "query", "name": "distro", "schema": {"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 a Mist Edge appliance record from the organization by Mist Edge ID.", "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": "Retrieve configuration and registration details for a specific Mist Edge appliance in the organization.", "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 a Mist Edge appliance configuration, including model, name, management IP, services, and tunnel termination settings.", "operationId": "updateOrgMxEdge", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"model": "ME-X1", "name": "me-gc1-01", "oob_ip_config": {"dns": ["8.8.8.8", "1.1.1.1"], "gateway": "10.3.172.9", "ip": "10.3.172.201", "netmask": "/24", "type": "static"}, "services": ["tunterm"], "tunterm_ip_config": {"gateway": "10.10.172.2", "ip": "10.10.172.201", "netmask": "/24"}, "tunterm_port_config": {"downstream_ports": ["0"], "separate_upstream_downstream": true, "upstream_port_vlan_id": "1010", "upstream_ports": ["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": "updateOrgMxEdge", "tags": ["Orgs MxEdges"]}}, "/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/image/{image_number}": {"delete": {"description": "Delete a numbered image attachment from a Mist Edge appliance.", "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": "Upload and attach an image file to a Mist Edge appliance. A Mist Edge can have up to three image attachments.", "operationId": "addOrgMxEdgeImage", "requestBody": {"content": {"multipart/form-data": {"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": "Restart the registration workflow for a Mist Edge replacement by disconnecting the currently registered appliance so another Mist Edge can 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 one or more TunTerm data ports on a Mist Edge, optionally setting the hold time between port bounces.", "operationId": "bounceOrgMxEdgeDataPorts", "parameters": [], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ports": ["0", "2"]}}, "Example2": {"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/tunterm/disconnect_aps": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/mxedge_id"}], "post": {"description": "Disconnect specific APs from the Mist Edge TunTerm service by AP MAC address.", "operationId": "disconnectOrgMxEdgeTuntermAps", "parameters": [], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"macs": ["5c5b353e4eb1", "5c5b353e4eb2"]}}}, "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": "disconnectOrgMxEdgeTuntermAps", "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"}, {"description": "enum: `mxagent`, `mxdas`, `mxnacedge`, `mxocproxy`, `radsecproxy`, `tunterm`", "in": "path", "name": "name", "required": true, "schema": {"$ref": "#/components/schemas/mxedge_service_name"}}, {"description": "Restart or start or stop", "in": "path", "name": "action", "required": true, "schema": {"$ref": "#/components/schemas/mxedge_service_action"}}], "post": {"description": "Start, stop, or restart a named Mist Edge service such as `tunterm`, `mxagent`, or `radsecproxy`.", "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": "Trigger upload of support files from a Mist Edge for troubleshooting.", "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": "Unregister a Mist Edge during a replacement workflow by disconnecting the currently registered appliance so another Mist Edge can 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}/mxedges/{mxedge_id}/vm_params": {"get": {"description": "Retrieve VM deployment parameters for a Mist Edge, including model, optional name, and base64 user data.", "operationId": "getOrgMxEdgeVmParams", "responses": {"200": {"$ref": "#/components/responses/MxEdgeVmParams"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgMxEdgeVmParams", "tags": ["Orgs MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/mxedge_id"}]}, "/api/v1/orgs/{org_id}/mxtunnels": {"get": {"description": "List organization Mist Tunnel configurations used to carry AP user VLANs to Mist Edge clusters.", "operationId": "listOrgMxTunnels", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization Mist Tunnel configuration, including hosting Mist Edge clusters, VLANs, heartbeat settings, and optional IPsec settings.", "operationId": "createOrgMxTunnel", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"cluster_ids": ["string"], "hello_interval": 60, "hello_retries": 7, "ipsec": {"dns_servers": ["string"], "enabled": true, "extra_routes": [{"dest": "string", "next_hop": "192.168.0.1"}], "split_tunnel": true, "use_mxedge": true}, "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 an organization Mist Tunnel configuration by Mist Tunnel ID.", "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": "Retrieve configuration details for a specific organization Mist Tunnel, including cluster, VLAN, heartbeat, IPsec, and preemption settings.", "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 an organization Mist Tunnel configuration, including cluster membership, VLANs, heartbeat settings, IPsec, and preemption behavior.", "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 NAC clients across the organization, optionally grouped by `distinct` and filtered by authentication, identity, endpoint, network, site, and time attributes.", "operationId": "countOrgNacClients", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `auth_type`, `device_mac`, `edr_managed`, `edr_provider`, `edr_status`, `family`, `hostname`, `idp_id`, `mfg`, `mdm_compliance`, `mdm_managed`, `mdm_provider`, `model`, `mxedge_id`, `nacrule_matched`, `nacrule_name`, `nacrule_id`, `nas_ip`, `nas_vendor`, `os`, `site_id`, `ssid`, `status`, `type`, `usermac_label`, `username`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_nac_clients_count_distinct"}}, {"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. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\"", "in": "query", "name": "auth_type", "schema": {"type": "string"}}, {"description": "Filter results by last 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": "Filter results by last SSID", "in": "query", "name": "last_ssid", "schema": {"type": "string"}}, {"description": "Username presented by the client", "in": "query", "name": "last_username", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "AP MAC connected to by client", "in": "query", "name": "last_ap", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Connection status of client i.e \"permitted\", \"denied, \"session_ended\"", "in": "query", "name": "last_status", "schema": {"type": "string"}}, {"description": "Client type i.e. \"wireless\", \"wired\" etc. Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["wired,wireless"], "type": "string"}}, {"description": "MDM compliance of client i.e \"compliant\", \"not compliant\"", "in": "query", "name": "mdm_compliance_status", "schema": {"type": "string"}}, {"description": "MDM provider of client\u2019s organization eg \"intune\", \"jamf\"", "in": "query", "name": "mdm_provider", "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": "countOrgNacClients", "tags": ["Orgs Clients - NAC"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/nac_clients/events/count": {"get": {"description": "Count NAC client events across the organization, optionally grouped by `distinct` and filtered by event type and time range.", "operationId": "countOrgNacClientEvents", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `auth_type`, `dryrun_nacrule_id`, `mac`, `nacrule_id`, `nas_vendor`, `ssid`, `type`, `username`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_nac_client_events_count_distinct"}}, {"description": "See [List Device Events Definitions](/#operations/listNacEventsDefinitions). Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["NAC_CLIENT_PERMIT,NAC_SESSION_STARTED"], "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": "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 authentication event records across the organization with filters for authentication, NAC rule, identity provider, RADIUS, network, endpoint, site, and time attributes.", "operationId": "searchOrgNacClientEvents", "parameters": [{"description": "See [List Device Events Definitions](/#operations/listNacEventsDefinitions). Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["NAC_CLIENT_PERMIT,NAC_SESSION_STARTED"], "type": "string"}}, {"description": "NAC Policy Rule ID, if matched. Accepts multiple comma-separated values.", "in": "query", "name": "nacrule_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "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. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\". Accepts multiple comma-separated values.", "in": "query", "name": "auth_type", "schema": {"examples": ["mab,eap-tls"], "type": "string"}}, {"description": "Filter results by VLAN ID. Accepts multiple comma-separated integer values.", "in": "query", "name": "vlan", "schema": {"examples": ["250,10"], "type": "integer"}}, {"description": "Vendor of NAS device", "in": "query", "name": "nas_vendor", "schema": {"type": "string"}}, {"description": "Filter results by BSSID", "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": "Username presented to the Identity Provider", "in": "query", "name": "idp_username", "schema": {"type": "string"}}, {"description": "RADIUS attributes returned by NAC to NAS derive", "in": "query", "name": "resp_attrs", "schema": {"$ref": "#/components/schemas/resp_attrs"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by username. Accepts multiple comma-separated values.", "in": "query", "name": "username", "schema": {"examples": ["john.doe,jane.doe"], "type": "string"}}, {"description": "Filter results by one site identifier. Use a single value; comma-separated values are not supported", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"description": "Filter results by whether the client is using a randomized MAC address. Accepts multiple comma-separated boolean values.", "in": "query", "name": "random_mac", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "Filter results by one MAC address. Use a single value; comma-separated values are not supported", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Labels derived from usermac entry", "in": "query", "name": "usermac_label", "schema": {"type": "string"}}, {"description": "Partial / full MAC address, username, device_mac or ap", "in": "query", "name": "text", "schema": {"type": "string"}}, {"description": "IP address of NAS device. Accepts multiple comma-separated values.", "in": "query", "name": "nas_ip", "schema": {"examples": ["192.0.2.10,192.0.2.11"], "type": "string"}}, {"description": "Vendor specific VLAN ID in RADIUS requests", "in": "query", "name": "ingress_vlan", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort_wcid"}, {"$ref": "#/components/parameters/search_after"}], "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 NAC client records across the organization with filters for authentication, endpoint posture, identity, network, NAC rule, site, and time attributes.", "operationId": "searchOrgNacClients", "parameters": [{"description": "MAC address of the AP the client is/was connected to", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"description": "Authentication type, e.g. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\". Accepts multiple comma-separated values.", "in": "query", "name": "auth_type", "schema": {"examples": ["mab,eap-tls"], "type": "string"}}, {"description": "Filter by certificate expiry within a specific duration from now (e.g., \"7d\" for 7 days, \"1m\" for 1 month). Accepts multiple comma-separated values.", "in": "query", "name": "cert_expiry_duration", "schema": {"examples": ["7d,1m", "7d", "1m"], "type": "string"}}, {"description": "Filters NAC clients that are integrated with EDR providers", "in": "query", "name": "edr_managed", "schema": {"type": "boolean"}}, {"description": "EDR provider used to filter NAC clients. enum: `crowdstrike`, `sentinelone`", "in": "query", "name": "edr_provider", "schema": {"$ref": "#/components/schemas/edr_provider"}}, {"description": "EDR status used to filter NAC clients. enum: `sentinelone_healthy`, `sentinelone_infected`, `crowdstrike_low`, `crowdstrike_medium`, `crowdstrike_high`, `crowdstrike_critical`, `crowdstrike_informational`", "in": "query", "name": "edr_status", "schema": {"$ref": "#/components/schemas/edr_status"}}, {"description": "Partial / full Client family (e.g. \"Phone/Tablet/Wearable\", \"Access Point\"). Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `Surveillance*` and `*urveillance*` match `Surveillance Camera`). Suffix-only wildcards (e.g. `*Camera`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "family", "schema": {"examples": ["Surveillance Camera,Surveillance*", "Surveillance Camera", "Surveillance*", "*urveillance*"], "type": "string"}}, {"description": "Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-everest-client,my-everest*", "my-everest-client", "my-everest*", "*everest*"], "type": "string"}}, {"description": "SSO ID, if present and used", "in": "query", "name": "idp_id", "schema": {"type": "string"}}, {"description": "Partial / full Client MAC address. Use a single value; comma-separated values are not supported. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, {"description": "MDM compliance of client i.e \"compliant\", \"not compliant\"", "in": "query", "name": "mdm_compliance", "schema": {"type": "string"}}, {"description": "MDM provider of client\u2019s organization eg \"intune\", \"jamf\"", "in": "query", "name": "mdm_provider", "schema": {"type": "string"}}, {"description": "Filters NAC clients that are managed by MDM providers", "in": "query", "name": "mdm_managed", "schema": {"type": "boolean"}}, {"description": "Partial / full Client manufacturer (e.g. \"apple\", \"cisco\", \"juniper\"). Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `Raspberry Pi*` and `*Pi*` match `Raspberry Pi Trading Ltd`). Suffix-only wildcards (e.g. `*Ltd`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "mfg", "schema": {"examples": ["Raspberry Pi Trading Ltd,Raspberry Pi*", "Raspberry Pi Trading Ltd", "Raspberry Pi*", "*Pi*"], "type": "string"}}, {"description": "Client model, e.g. \"iPhone 12\", \"MX100\"", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "NAC Policy Rule Name matched", "in": "query", "name": "nacrule_name", "schema": {"type": "string"}}, {"description": "NAC Policy Rule ID, if matched", "in": "query", "name": "nacrule_id", "schema": {"type": "string"}}, {"description": "NAC Policy Rule Matched", "in": "query", "name": "nacrule_matched", "schema": {"type": "boolean"}}, {"description": "Vendor of NAS device", "in": "query", "name": "nas_vendor", "schema": {"type": "string"}}, {"description": "IP address of NAS device. Accepts multiple comma-separated values.", "in": "query", "name": "nas_ip", "schema": {"examples": ["192.0.2.10,192.0.2.11"], "type": "string"}}, {"description": "Vendor specific VLAN ID in RADIUS requests", "in": "query", "name": "ingress_vlan", "schema": {"type": "string"}}, {"description": "Client OS, e.g. \"iOS 18.1\", \"Android\", \"Windows\", \"Linux\"", "in": "query", "name": "os", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Client connection status used to filter results. enum: `permitted`, `session_started`, `session_stopped`, `denied`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/nac_client_last_status"}}, {"description": "partial / full MAC address, last_username, device_mac, nas_ip or last_ap", "in": "query", "name": "text", "schema": {"type": "string"}}, {"description": "Client type i.e. \"wireless\", \"wired\" etc. Accepts multiple comma-separated values.", "in": "query", "name": "type", "schema": {"examples": ["wired,wireless"], "type": "string"}}, {"description": "Labels derived from usermac entry", "in": "query", "name": "usermac_label", "schema": {"$ref": "#/components/schemas/strings"}}, {"description": "Filter results by username", "in": "query", "name": "username", "schema": {"type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"type": "string"}}, {"description": "Filter results by one site identifier. Use a single value; comma-separated values are not supported", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort_wcid"}, {"$ref": "#/components/parameters/search_after"}], "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}/nac_clients/{client_mac}/coa": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/client_mac"}], "post": {"description": "Sends CoA (Change of Authorization) command to a NAC client.", "operationId": "sendOrgNacClientCoA", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_client_coa"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/NacClientCoa"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "sendOrgNacClientCoA", "tags": ["Orgs Clients - NAC"]}}, "/api/v1/orgs/{org_id}/nacportals": {"get": {"description": "List NAC portal configurations in the organization for guest portal, guest admin, or Marvis Client onboarding workflows.", "operationId": "listOrgNacPortals", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listOrgNacPortals", "tags": ["Orgs NAC Portals"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create a NAC portal configuration for guest access, guest administration, or Marvis Client certificate onboarding.", "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 an organization NAC portal configuration by NAC portal ID.", "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": "Retrieve configuration details for a specific NAC portal, including portal type, SSID, SSO, guest portal, certificate, and template settings.", "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 a NAC portal configuration, including portal type, SSID, SSO, guest portal, certificate, and template settings.", "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": "List recent SAML SSO failures for a NAC portal within a selected time range.", "operationId": "listOrgNacPortalSsoLatestFailures", "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/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}/portal_image": {"delete": {"description": "Delete the custom background image for a NAC portal. If no image is configured, the NAC portal uses the default background image.", "operationId": "deleteOrgNacPortalImage", "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": "deleteOrgNacPortalImage", "tags": ["Orgs NAC Portals"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/nacportal_id"}], "post": {"description": "Upload a custom background image for a NAC portal.", "operationId": "uploadOrgNacPortalImage", "requestBody": {"content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/psk_portal_image"}}}}, "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": "uploadOrgNacPortalImage", "tags": ["Orgs NAC Portals"]}}, "/api/v1/orgs/{org_id}/nacportals/{nacportal_id}/portal_template": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/nacportal_id"}], "put": {"description": "Update visual template settings for a NAC portal, including alignment, primary color, logo, and Powered by visibility.", "operationId": "updateOrgNacPortalTemplate", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_portal_template"}}}}, "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": "updateOrgNacPortalTemplate", "tags": ["Orgs NAC Portals"]}}, "/api/v1/orgs/{org_id}/nacportals/{nacportal_id}/saml_metadata": {"get": {"description": "Retrieve SAML service provider metadata for a NAC portal, including ACS URL, entity ID, logout URL, and metadata XML.", "operationId": "getOrgNacPortalSamlMetadata", "responses": {"200": {"$ref": "#/components/responses/SamlMetadata"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgNacPortalSamlMetadata", "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 NAC portal SAML service provider metadata as an XML document.\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": "downloadOrgNacPortalSamlMetadata", "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": "downloadOrgNacPortalSamlMetadata", "tags": ["Orgs NAC Portals"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/nacportal_id"}]}, "/api/v1/orgs/{org_id}/nacrules": {"get": {"description": "List organization NAC authentication policy rules with evaluation order.", "operationId": "listOrgNacRules", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a NAC authentication policy rule with match and not-match criteria, an allow or block action, optional result tags, and rule priority.", "operationId": "createOrgNacRule", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 an organization NAC authentication policy rule by rule ID.", "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": "Retrieve configuration details for a specific NAC authentication policy rule, including action, matching criteria, dry-run state, and priority.", "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 a NAC authentication policy rule, including match and not-match criteria, action, result tags, dry-run state, and priority.", "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": {"description": "NAC Tags are the building blocks to compose NAC Rules.\n\nThey can either appear in the `matching` / `not_matching` sections of a NAC Rule,\nin which case they play the role of classifiers, or they could appear in the `apply_tags`\nsection of a NAC Rule, in which case they influence the result.\n\nWhen the `type` field of a NAC Tag is `match`, it can be used as a classifier of a NAC Rule:\n - The `match` field specifies the attribute name and the `values` field specifies the list of\n attribute values to match on.\n - When multiple values are specified, they are treated as an OR condition between those values.\n This behavior can be changed by setting the `match_all` field to `true`, in which case it is\n treated as an AND condition between those values.\n - By default an exact match is performed. This behavior can be changed as follows:\n - Adding `*` at the beginning will perform a suffix match\n (ex: `*-staff` will match `foo-staff` and `bar-staff`)\n - Adding `*` at the end will perform a prefix match\n (ex: `foo-*` will match `foo-staff` and `foo-interns`)\n - Adding `*` at both ends will perform a substring match\n (ex: `*printer*` will match `hp-printer-bldg1`, `brother-printer-lab`)\n - Adding `!` at the beginning will perform a negation of the match\n (ex: `!ssid-guest` will match any string that is not `ssid-guest`)\n - Note: when negation should be used along with suffix/substring operation,\n `!` should always precede `*`\n (ex: `!*guest` will match any string that is not ending with `guest`)\n - Prepending the value with the keyword `regex=` followed by a regular expression will\n evaluate the match as a regex (instead of the wildcard behaviors above: prefix, suffix,\n substring, or exact match).\n (ex: `regex=^foo-(staff|interns)$` will match `foo-staff` and `foo-interns`)\n", "get": {"description": "List organization NAC tags, optionally filtering by tag type, name, or match attribute.", "operationId": "listOrgNacTags", "parameters": [{"description": "Filter results by type. enum: `egress_vlan_names`, `gbp_tag`, `match`, `radius_attrs`, `radius_group`, `radius_vendor_attrs`, `redirect_nacportal_id`, `session_timeout`, `username_attr`, `vlan`. Accepts multiple comma-separated values.", "example": "match,vlan", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter results by name. Accepts multiple comma-separated values.", "in": "query", "name": "name", "schema": {"examples": ["name-a,name-b"], "type": "string"}}, {"description": "if `type`==`match`, Type of NAC Tag. enum: `cert_cn`, `cert_eku`, `cert_issuer`, `cert_san`, `cert_serial`, `cert_sub`, `cert_template`, `client_mac`, `edr_status`, `gbp_tag`, `hostname`, `idp_role`, `ingress_vlan`, `mdm_status`, `nas_ip`, `radius_group`, `realm`, `ssid`, `user_name`, `usermac_label`. Accepts multiple comma-separated values.", "example": "ssid,idp_role", "in": "query", "name": "match", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a NAC tag used either as rule-matching criteria or as a result attribute returned when NAC allows access.", "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 an organization NAC tag by tag ID so it can no longer be used by NAC rules.", "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": "Retrieve configuration details for a specific NAC tag, including type, match values, RADIUS attributes, VLAN or session results, and portal redirection settings.", "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 a NAC tag, including matcher values or result attributes such as RADIUS attributes, VLAN, session timeout, username attribute, or portal redirection.", "operationId": "updateOrgNacTag", "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": "updateOrgNacTag", "tags": ["Orgs NAC Tags"]}}, "/api/v1/orgs/{org_id}/networks": {"get": {"description": "List organization-level Layer 3 network definitions used for service routes and gateway or network template configuration.", "operationId": "listOrgNetworks", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization network definition with subnet, gateway,\nVLAN, access, NAT, multicast, tenant, and VPN access settings used for service\nroutes and gateway or network template configuration.\n\n\nNetworks can be used\n- in the gateway configuration to define Layer 3 network settings and policies for traffic entering or leaving the gateway through a specific interface, such as a corporate LAN, guest Wi-Fi, or DMZ network.\n- in the service policies to allow or deny traffic matching the network or to apply specific inspection settings or steering rules.", "operationId": "createOrgNetwork", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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"}}, "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, "name": "string", "subnet": "192.168.70.0/24", "tenants": {"property1": {"addresses": ["10.10.10.10."]}, "property2": {"addresses": ["10.10.10.52"]}}, "vlan_id": 10, "vpn_access": {"property1": {"allow_ping": true, "destination_nat": {"property1": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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 an organization network definition by network ID so it can no longer be referenced by gateway or network template configuration.", "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": "Retrieve details for a specific organization network, including subnet, gateway, VLAN, access, NAT, multicast, tenant, and VPN access settings.", "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 an organization network definition, including subnet, gateway, VLAN, access, NAT, multicast, tenant, and VPN access settings.", "operationId": "updateOrgNetwork", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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"}}, "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, "name": "string", "subnet": "192.168.70.0/24", "tenants": {"property1": {"addresses": ["10.10.10.10"]}, "property2": {"addresses": ["10.10.10.52"]}}, "vlan_id": 10, "vpn_access": {"property1": {"allow_ping": true, "destination_nat": {"property1": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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": "List organization network templates that provide switch network, port, management, routing, NAC, and service configuration at the organization level.", "operationId": "listOrgNetworkTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Create an organization network template with network, port usage, switch management, routing, NAC, and service configuration at the organization level.\n\nNetwork templates can be applied to multiple sites within the organization to provide consistent network configuration across sites.\nTo assign a network template to a site, use the [Update Site](/#operations/updateSiteInfo) endpoint and specify the network template ID in the `networktemplate_id` field of the request body.", "operationId": "createOrgNetworkTemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"additional_config_cmds": ["set snmp community public"], "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"], "import_org_networks": ["ap"], "mist_nac": {"enabled": true, "network": "string"}, "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"], "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "storm_control": {"no_broadcast": false, "no_multicast": false, "no_registered_multicast": false, "no_unknown_unicast": false, "percentage": 80}, "stp_edge": true, "voip_network": "string"}}, "switch_mgmt": {"config_revert_timer": 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 an organization network template by template ID so it can no longer be applied to sites or site groups.", "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": "Retrieve details for a specific organization network template, including network, port usage, switch management, routing, NAC, and service defaults.", "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 an organization network template, including network, port usage, switch management, routing, NAC, and service defaults.", "operationId": "updateOrgNetworkTemplate", "parameters": [], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"additional_config_cmds": ["set snmp community public"], "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": {}, "import_org_networks": ["ap"], "mist_nac": {"enabled": true, "network": "string"}, "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"], "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "storm_control": {"no_broadcast": false, "no_multicast": false, "no_registered_multicast": false, "no_unknown_unicast": false, "percentage": 80}, "stp_edge": true, "voip_network": "string"}}, "switch_mgmt": {"config_revert_timer": 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"], "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"}}, "import_org_networks": ["ap"], "mist_nac": {"enabled": true, "network": "string"}, "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"], "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "storm_control": {"no_broadcast": false, "no_multicast": false, "no_registered_multicast": false, "no_unknown_unicast": false, "percentage": 80}, "stp_edge": true, "voip_network": "string"}}, "switch_mgmt": {"config_revert_timer": 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": "updateOrgNetworkTemplate", "tags": ["Orgs Network Templates"]}}, "/api/v1/orgs/{org_id}/ocdevices/outbound_ssh_cmd": {"get": {"description": "Get Org Juniper Devices command\n\nJuniper devices can be managed/adopted by Mist. Currently outbound-ssh + netconf is used.\nA few lines of CLI commands are generated per-Org, allowing the Juniper devices to phone home to Mist.", "operationId": "getOrgJuniperDevicesCommand", "parameters": [{"description": "Filter results by site identifier", "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": "List third-party devices across the organization, such as devices discovered or tracked outside the managed Mist device inventory.", "operationId": "listOrgOtherDevices", "parameters": [{"description": "Filter results by vendor", "in": "query", "name": "vendor", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by device serial number", "in": "query", "name": "serial", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by name", "in": "query", "name": "name", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Bulk assign or unassign third-party devices to or from a site by MAC address.", "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 third-party device events across the organization, optionally grouped by `distinct` and filtered by event type and time range.", "operationId": "countOrgOtherDeviceEvents", "parameters": [{"description": "Field used to group this count response. enum: `mac`, `site_id`, `type`, `vendor`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_otherdevices_events_count_distinct"}}, {"$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 third-party device events across the organization with filters for site, MAC address, attached device MAC address, model, vendor, event type, and time range.", "operationId": "searchOrgOtherDeviceEvents", "parameters": [{"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "MAC of attached device", "in": "query", "name": "device_mac", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by vendor", "in": "query", "name": "vendor", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/otherdevice_event_type"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 a third-party device record from the organization by device MAC address.", "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": "Retrieve details for a third-party device record, including vendor, model, serial, attached Mist device MAC address, site assignment, and state.", "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": "Manually update the site or attached Mist device association for a third-party device when automatic identification is unavailable.", "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": "Request a reboot for a third-party device by device MAC address.", "operationId": "rebootOrgOtherDevice", "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": "List organization packet capture sessions and generated capture files for the selected time range.", "operationId": "listOrgPacketCaptures", "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/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 the currently running organization packet capture and end its websocket output stream.", "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": "Retrieve the current organization packet capture status, including active capture targets and progress.", "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": "Start an organization-level packet capture for org-level Mist Edges\n\n**NOTE**: For packet captures of org level Mist Edges only. Use [Start Site Packet Capture](/#operations/startSitePacketCapture) for site level Mist Edges. \n\nThe output will be available through websocket. As there can be multiple commands 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\": \"/orgs/:org_id/pcaps\"\n}\n```\n#### Response (MxEdge)\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 \"lost_messages\": 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```\n#### Stop Response\n```json\n{\n \"event\": \"data\"\n \"channel\": \"/orgs/67970e46-4e12-11e6-9188-0242ac110007/pcaps\"\n \"data\": {\n \"capture_id\": \"a2f7374d-6a70-41fd-8a3f-71e42573baaf\",\n \"pcap_dict\": null\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, "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": "List Premium Analytics dashboard metadata and redirect URLs available to the organization.", "operationId": "listOrgPmaDashboards", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "List self-service PSK Portal configurations in the organization, including portal mode, SSID, authentication, expiry, and passphrase rules.", "operationId": "listOrgPskPortals", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a self-service PSK Portal configuration for issuing personal PSKs, including SSID, BYOD or admin mode, SSO or sponsor authentication, passphrase rules, and expiry settings.", "operationId": "createOrgPskPortal", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"auth": "sso", "expire_time": 262800, "expiry_notification_time": 2, "hide_psks_created_by_other_admins": false, "max_usage": 1, "name": "USR-test", "notify_expiry": false, "passphrase_rules": {"alphabets_enabled": true, "length": 8, "numerics_enabled": true, "symbols": "()[]{}_%@#&$", "symbols_enabled": true}, "ssid": "USR-test", "sso": {"idp_cert": "-----BEGIN CERTIFICATE-----\nMIIDqDCCApCgA...-----END CERTIFICATE-----", "idp_sign_algo": "sha256", "idp_sso_url": "https://dev-00000000.okta.com/app/dev-00000000/a6b88bec5ab7/sso/saml", "issuer": "http://www.okta.com/a6b88bec5ab7", "nameid_format": "email"}, "type": "byod", "vlan_id": 42}}}, "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": "List PSK Portal log entries in the organization for the selected time range.", "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/PskPortalLogsSearch"}, "400": {"$ref": "#/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 PSK Portal log entries across the organization, optionally grouped by `distinct` and filtered by time range.", "operationId": "countOrgPskPortalLogs", "parameters": [{"description": "Field used to group this count response. enum: `admin_id`, `admin_name`, `psk_id`, `psk_name`, `pskportal_id`, `user_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_psk_portal_logs_count_distinct"}}, {"$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": "countOrgPskPortalLogs", "tags": ["Orgs Psk Portals"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/pskportals/logs/search": {"get": {"description": "Search PSK Portal log entries across the organization with filters for PSK, portal, admin, SSO NameID, and time range.", "operationId": "searchOrgPskPortalLogs", "parameters": [{"description": "Filter PSK portal log results by PSK name", "in": "query", "name": "psk_name", "schema": {"type": "string"}}, {"description": "Filter PSK portal log results by PSK identifier", "in": "query", "name": "psk_id", "schema": {"type": "string"}}, {"description": "Filter PSK portal log results by PSK portal identifier", "in": "query", "name": "pskportal_id", "schema": {"type": "string"}}, {"description": "Filter results by identifier", "in": "query", "name": "id", "schema": {"format": "uuid", "type": "string"}}, {"description": "Filter audit log results by administrator name", "in": "query", "name": "admin_name", "schema": {"type": "string"}}, {"description": "Filter audit log results by administrator identifier", "in": "query", "name": "admin_id", "schema": {"type": "string"}}, {"description": "Filter results by name id", "in": "query", "name": "name_id", "schema": {"format": "uuid", "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/PskPortalLogsSearch"}, "400": {"$ref": "#/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 a PSK Portal configuration by portal ID, removing the self-service entry point for issuing PSKs through that 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": "Retrieve PSK Portal configuration details, including SSID, mode, authentication, SSO, passphrase, expiry, notification, and template URLs.", "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 a PSK Portal configuration, including SSID, mode, authentication, SSO, passphrase, expiry, notification, and template settings.", "operationId": "updateOrgPskPortal", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"auth": "sso", "expire_time": 262800, "expiry_notification_time": 2, "hide_psks_created_by_other_admins": false, "max_usage": 1, "name": "USR-test", "notify_expiry": false, "passphrase_rules": {"alphabets_enabled": true, "length": 8, "numerics_enabled": true, "symbols": "()[]{}_%@#&$", "symbols_enabled": true}, "sponsors": {"idp_cert": "-----BEGIN CERTIFICATE-----\nMIIDqDCCApCgA...-----END CERTIFICATE-----", "idp_sign_algo": "sha256", "idp_sso_url": "https://dev-00000000.okta.com/app/dev-00000000/a6b88bec5ab7/sso/saml", "issuer": "http://www.okta.com/a6b88bec5ab7", "nameid_format": "email"}, "ssid": "USR-test", "type": "byod", "vlan_id": "nu42ll"}}}, "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}/pskportals/{pskportal_id}/portal_image": {"delete": {"description": "Delete the custom background image for a PSK Portal. If no image is configured, the PSK Portal uses the default background image.", "operationId": "deleteOrgPskPortalImage", "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": "deleteOrgPskPortalImage", "tags": ["Orgs Psk Portals"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/pskportal_id"}], "post": {"description": "Upload a custom background image for a PSK Portal.", "operationId": "uploadOrgPskPortalImage", "requestBody": {"content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/psk_portal_image"}}}}, "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": "uploadOrgPskPortalImage", "tags": ["Orgs Psk Portals"]}}, "/api/v1/orgs/{org_id}/pskportals/{pskportal_id}/portal_template": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/pskportal_id"}], "put": {"description": "Update PSK Portal UI template settings, including alignment, color, logo, Powered by visibility, and Terms of Service text.", "operationId": "updateOrgPskPortalTemplate", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/psk_portal_template"}}}}, "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": "updateOrgPskPortalTemplate", "tags": ["Orgs Psk Portals"]}}, "/api/v1/orgs/{org_id}/psks": {"get": {"description": "List organization personal PSKs for WLAN access, optionally filtering by name, SSID, or role.", "operationId": "listOrgPsks", "parameters": [{"description": "Filter results by name. Accepts multiple comma-separated values.", "example": "psk-a,psk-b", "in": "query", "name": "name", "schema": {"type": "string"}}, {"description": "Filter results by SSID. Accepts multiple comma-separated values.", "in": "query", "name": "ssid", "schema": {"examples": ["Corp,Guest"], "type": "string"}}, {"description": "Filter PSK results by role. Accepts multiple comma-separated values.", "in": "query", "name": "role", "schema": {"examples": ["employee,contractor"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization personal PSK for WLAN access, including SSID, passphrase, usage mode, optional client MAC binding, role, VLAN, and expiration settings.\n\n\nWhen `usage`==`macs`, corresponding \"macs\" field will hold a list consisting of client MAC addresses ([\"xx:xx:xx:xx:xx\",...]) or mac patterns([\"xx:xx:*\",\"xx*\",...]) or both ([\"xx:xx:xx:xx:xx:xx\", \"xx:*\", ...]). This list is capped at 5000", "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 multiple organization personal PSKs in one request, including passphrase, usage mode, role, VLAN, expiration, and notification settings.", "operationId": "updateOrgMultiplePsks", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": [{"expire_time": 1614990263, "mac": "string", "max_usage": 0, "name": "string", "passphrase": "secretpsk", "ssid": "string", "usage": "multi", "vlan_id": 10}]}}, "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": "updateOrgMultiplePsks", "tags": ["Orgs Psks"]}}, "/api/v1/orgs/{org_id}/psks/delete": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Delete one or more organization PSKs by ID.\n\nThe request accepts a single PSK ID string or a list of PSK ID strings.\n**Warning**: If no PSK IDs are provided in the request, all organization PSKs will be deleted and clients will no longer be able to authenticate to any SSID with a PSK.", "operationId": "deleteOrgPskList", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/psk_id_list"}}}}, "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": "deleteOrgPskList", "tags": ["Orgs Psks"]}}, "/api/v1/orgs/{org_id}/psks/import": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Import organization PSKs from a CSV file or JSON payload.\n\n##\u00a0CSV File Format\n```\nPSK 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\nCommon,warehouse,foryoureyesonly,single,35,a31425f31278,0,student,1618594236\nJustin,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 an organization personal PSK by PSK ID so clients can no longer authenticate with that key.", "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": "Retrieve details for an organization personal PSK, including SSID, usage mode, MAC binding, role, VLAN, expiration, and notification settings.", "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 an organization personal PSK, including passphrase, usage mode, MAC binding, role, VLAN, expiration, and notification settings.", "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": "Remove the stored `old_passphrase` from a PSK after rotation. \nIf successful, the response returns the PSK with `old_passphrase` removed.", "operationId": "deleteOrgPskOldPassphrase", "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": "List organization RF templates used by RRM to apply radio settings across sites.", "operationId": "listOrgRfTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization RF template with 2.4, 5, and 6 GHz radio\nsettings, country code, scanning behavior, antenna gain, and model-specific\noverrides.\n\nTo assign a RF template to a site, use the [Update Site](/#operations/updateSiteInfo) endpoint and specify the RF template ID in the `rftemplate_id` field of the request body.", "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 an organization RF template by template ID so it can no longer be applied to sites.", "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": "Retrieve details for a specific organization RF template, including radio settings, country code, scanning behavior, antenna gain, and model-specific overrides.", "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 an organization RF template, including radio settings, country code, scanning behavior, antenna gain, and model-specific overrides.", "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 the display name of an SDK client registered in the organization.", "operationId": "updateSdkClient", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "John Smith"}}}, "schema": {"$ref": "#/components/schemas/name_string"}}}, "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 Clients - SDK"]}}, "/api/v1/orgs/{org_id}/sdkinvites": {"get": {"description": "List SDK invites configured for the organization. SDK invites are used to onboard mobile SDK clients and can define whether an invite is enabled, limited by usage quota, or scoped to a site.", "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 an SDK invite that mobile SDK clients can use to onboard into the organization. The invite can be enabled or disabled, limited by usage quota, and associated with a site.", "operationId": "createSdkInvite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 an SDK invite so it can no longer be used for mobile SDK client onboarding.", "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": "Return the configuration and status of an SDK invite, including enablement, expiration time, usage quota, and site scope.", "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 an SDK invite's onboarding settings, such as its display name, enabled state, expiration time, quota, or site association.", "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 the SDK invite to a recipient email address so the recipient can onboard a mobile SDK client.", "operationId": "sendSdkInviteEmail", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"email": "test@abc.com"}}}, "schema": {"$ref": "#/components/schemas/email_string"}}}, "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": "Download a QR code image for the SDK invite so it can be scanned by a mobile SDK client during onboarding.", "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 the SDK invite to a phone number by SMS so the recipient can onboard a mobile SDK client.", "operationId": "sendSdkInviteSms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "List SDK templates configured for the organization. SDK templates define visual customization for the mobile SDK experience, including branding images, colors, header text, and welcome messages.", "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 an SDK template that defines visual customization for the mobile SDK experience, including branding images, colors, header text, and welcome messages.", "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 an SDK visual customization template from the organization.", "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": "Return the visual customization settings for an SDK template, including branding text, image URLs, colors, default state, and site scope.", "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 an SDK template's visual customization settings, such as branding images, colors, header text, welcome message, default state, or site association.", "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}/secintelprofiles": {"get": {"description": "List organization SecIntel profiles. These profiles define protection levels for SecIntel feed categories such as command-and-control, infected host, and DNS.", "operationId": "listOrgSecIntelProfiles", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/SecIntelProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgSecIntelProfiles", "tags": ["Orgs SecIntel Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an organization SecIntel profile with category-specific protection levels for threat intelligence feeds.", "operationId": "createOrgSecIntelProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "secintel-custom", "profiles": [{"action": "default", "category": "CC"}]}}}, "schema": {"$ref": "#/components/schemas/secintel_profile"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/SecIntelProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgSecIntelProfile", "tags": ["Orgs SecIntel Profiles"]}}, "/api/v1/orgs/{org_id}/secintelprofiles/{secintelprofile_id}": {"delete": {"description": "Remove an organization SecIntel profile from the organization's available threat intelligence profile set.", "operationId": "deleteOrgSecIntelProfile", "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": "deleteOrgSecIntelProfile", "tags": ["Orgs SecIntel Profiles"]}, "get": {"description": "Return an organization SecIntel profile, including the protection level configured for each SecIntel feed category.", "operationId": "getOrgSecIntelProfile", "responses": {"200": {"$ref": "#/components/responses/SecIntelProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgSecIntelProfile", "tags": ["Orgs SecIntel Profiles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/secintelprofile_id"}], "put": {"description": "Update an organization SecIntel profile, including its display name and category-specific threat intelligence protection levels.", "operationId": "updateOrgSecIntelProfile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "secintel-custom", "profiles": [{"action": "default", "category": "CC"}]}}}, "schema": {"$ref": "#/components/schemas/secintel_profile"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/SecIntelProfile"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgSecIntelProfile", "tags": ["Orgs SecIntel Profiles"]}}, "/api/v1/orgs/{org_id}/secpolicies": {"get": {"description": "List organization security policies. Security policies define WLAN configuration baselines used to audit intended wireless settings against actual AP configuration.", "operationId": "listOrgSecPolicies", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 Security Policies"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an organization security policy containing WLAN configuration baselines for auditing site and AP configuration compliance.", "operationId": "createOrgSecPolicy", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string", "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"}], "allow_ipv6_ndp": true, "allow_mdns": false, "allow_ssdp": false, "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"}]}, "arp_filter": false, "auth": {"anticlog_threshold": 16, "eap_reauth": false, "enable_mac_auth": false, "key_idx": 1, "keys": ["string"], "multi_psk_only": false, "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": "10,20", "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": 1000, "client_limit_down_enabled": false, "client_limit_up": 512, "client_limit_up_enabled": false, "coa_servers": [{"disable_event_timestamp_check": false, "enabled": false, "ip": "1.2.3.4", "port": 3799, "secret": "testing456"}], "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"}, "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, "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"}, "interface": "all", "isolation": false, "l2_isolation": false, "legacy_overds": false, "limit_bcast": false, "limit_probe_response": true, "max_idletime": 1800, "mist_nac": {"enabled": false}, "no_static_dns": false, "no_static_ip": false, "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": "https://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", "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": "sha256", "sso_idp_sso_url": "string", "sso_issuer": "string", "sso_nameid_format": "email", "telstra_client_id": "string", "telstra_client_secret": "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_denied_hostnames": ["msg.snapchat.com"], "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": "custom", "vht": "03ff03ff03ff01ff"}, "5": {"ht": "00ff00ff00ff", "legacy": ["6", "9", "12", "18", "24b", "36", "48", "54"], "min_rssi": -70, "template": "custom", "vht": "03ff03ff03ff01ff"}}, "roam_mode": "NONE", "schedule": {"enabled": false, "hours": {"fri": "09:00-17:00", "mon": "09:00-17:00"}}, "sle_excluded": false, "ssid": "corporate", "use_eapol_v1": false, "vlan_enabled": false, "vlan_ids": [3, 4, 5], "vlan_pooling": 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": "createOrgSecPolicy", "tags": ["Orgs Security Policies"]}}, "/api/v1/orgs/{org_id}/secpolicies/{secpolicy_id}": {"delete": {"description": "Remove an organization security policy from the set available for assignment and configuration compliance checks.", "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 Security Policies"]}, "get": {"description": "Return an organization security policy, including the WLAN configuration baselines used for compliance auditing.", "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 Security Policies"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/secpolicy_id"}], "put": {"description": "Update an organization security policy, including its name and WLAN configuration baselines for compliance auditing.", "operationId": "updateOrgSecPolicy", "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": "updateOrgSecPolicy", "tags": ["Orgs Security Policies"]}}, "/api/v1/orgs/{org_id}/servicepolicies": {"get": {"description": "List organization-level service policies. Service policies match tenants to services or service groups and define the allow or deny action plus optional inspection controls.", "operationId": "listOrgServicePolicies", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization-level service policy that matches tenants\nto services and applies an allow or deny action with optional security inspection\nsettings.\n\n\nOrganization-level service policies can be imported in the gateway templates and gateway policies.", "operationId": "createOrgServicePolicy", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"action": "allow", "name": "string", "services": ["string"], "tenants": ["string"]}}}, "schema": {"$ref": "#/components/schemas/org_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": "Remove an organization-level service policy from the available policy set.", "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": "Return an organization-level service policy, including the matched tenants and services, action, local routing, path preference, and inspection settings.", "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 an organization-level service policy, including its tenant and service matches, action, local routing, path preference, or inspection settings.", "operationId": "updateOrgServicePolicy", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"action": "allow", "name": "string", "services": ["string"], "tenants": ["string"]}}}, "schema": {"$ref": "#/components/schemas/org_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": "List organization service definitions. Services describe applications, application categories, URLs, hostnames, subnets, or custom protocol and port match criteria used by gateway and SSR policies.", "operationId": "listOrgServices", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization service definition with the match criteria\nused by gateway and SSR policies, such as applications, URLs, hostnames,\nsubnets, or custom protocol and port rules.\n\n\nServices can be user in the service policies to allow or deny traffic matching the service or to apply specific inspection settings or steering rules.", "operationId": "createOrgService", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"addresses": ["0.0.0.0/0"], "app_key": "string", "name": "string", "network_id": "d6797cf4-42b9-4cad-8591-9dd91c3f0fc3", "specs": [{"port_range": "8080,8443", "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": "Remove an organization service definition from the available service catalog.", "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": "Return an organization service definition, including its matching mode, match values, traffic classification, and optional SSR path-selection thresholds.", "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 an organization service definition, including its matching mode, match values, traffic classification, or optional SSR path-selection thresholds.", "operationId": "updateOrgService", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"addresses": ["string"], "app_categories": ["string"], "apps": ["string"], "dscp": 0, "failover_policy": "revertible", "hostnames": ["string"], "max_jitter": 0, "max_latency": 0, "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": "Return organization-wide settings, including feature flags, automatic device assignment rules, management connectivity, packet capture, security controls, and integration configuration.", "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 organization-wide settings such as automatic device assignment rules, management connectivity, packet capture, password policy, security controls, tags, and integration options.", "operationId": "updateOrgSettings", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/org_setting"}}}, "description": "Request Body"}, "responses": {"200": {"content": {"application/json": {"examples": {"Example": {"value": {"auto_device_naming": {"enable": true, "rules": [{"match_device": "ap", "prefix": "MIST-", "src": "lldp_port_desc"}]}, "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"}, "device_cert": {"cert": "string", "key": "string"}, "disable_pcap": true, "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, "expiry_in_days": 365, "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": "Clear the organization wireless client blocklist by removing all blocked client MAC addresses.", "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": "Replace the organization wireless client blocklist with the supplied client MAC addresses. The list can contain up to 1000 MAC addresses; retrieve the current list from the `blacklist_url` field in organization settings.", "operationId": "createOrgWirelessClientsBlocklist", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Remove the Cradlepoint integration configuration from the organization.", "operationId": "deleteOrgCradlepointConnection", "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": "deleteOrgCradlepointConnection", "tags": ["Orgs Integration Cradlepoint"]}, "get": {"description": "Test the current Cradlepoint integration configuration and return whether the most recent integration status is active or inactive.", "operationId": "testOrgCradlepointConnection", "responses": {"200": {"$ref": "#/components/responses/TestCradlepoint"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "testOrgCradlepointConnection", "tags": ["Orgs Integration Cradlepoint"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Configure the Cradlepoint integration by storing Cradlepoint API and ECM credentials and setting 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 Integration Cradlepoint"]}, "put": {"description": "Update the stored Cradlepoint API and ECM credentials and the LLDP-based device linking option used by 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 Integration Cradlepoint"]}}, "/api/v1/orgs/{org_id}/setting/cradlepoint/sync": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Trigger a Cradlepoint device synchronization with Mist. When LLDP linking is enabled, Mist also uses Cradlepoint LLDP data to associate routers with Mist sites and devices.", "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 Integration Cradlepoint"]}}, "/api/v1/orgs/{org_id}/setting/jse/info": {"get": {"description": "Return the JSE organizations associated with the configured account. Use the returned organization names when selecting JSE provider options for secure edge tunnels.", "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 Integration JSE"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/setting/jse/setup": {"delete": {"description": "Remove the JSE integration configuration from the organization.", "operationId": "deleteOrgJseIntegration", "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": "deleteOrgJseIntegration", "tags": ["Orgs Integration JSE"]}, "get": {"description": "Return the JSE integration configuration, including the cloud hostname, integration username, and associated JSE organization names.", "operationId": "getOrgJseIntegration", "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": "getOrgJseIntegration", "tags": ["Orgs Integration JSE"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Configure the JSE integration with the JSE cloud hostname and integration-user credentials. In JSE, use a custom role with read access to `service_location` and read-write access to site and IPsec profile APIs, then create and activate the integration user and service locations.", "operationId": "setupOrgJseIntegration", "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": "setupOrgJseIntegration", "tags": ["Orgs Integration JSE"]}}, "/api/v1/orgs/{org_id}/setting/juniper/link_accounts": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Link a Juniper account to the organization using Juniper account credentials. Linked accounts are returned in organization settings and can be used by Juniper integrations.", "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 Integration Juniper"]}}, "/api/v1/orgs/{org_id}/setting/juniper/unlink_account": {"delete": {"description": "Unlink a Juniper customer account from the organization. The `linked_by` field is required only when multiple linked accounts share the same account name.", "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 Integration Juniper"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/setting/mist_nac_crls": {"get": {"description": "List uploaded NAC CRL files for the organization, including file IDs, issuer names, upload timestamps, and download URLs.", "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": "Upload a NAC Certificate Revocation List (CRL) file in PEM or DER format. This multipart request supports one CRL file per issuer; uploading another file for the same issuer replaces 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 an uploaded NAC CRL file identified by the file ID assigned when the CRL was uploaded.", "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/mist_scep": {"delete": {"description": "Disable Mist SCEP for the organization and return the updated read-only SCEP settings.", "operationId": "disableOrgMistScep", "responses": {"200": {"$ref": "#/components/responses/OrgScep"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "disableOrgMistScep", "tags": ["Orgs SCEP"]}, "get": {"description": "Return Mist SCEP settings for the organization, including enabled and suspended status, configured certificate providers, and generated enrollment or webhook URLs.", "operationId": "getOrgMistScep", "responses": {"200": {"$ref": "#/components/responses/OrgScep"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgMistScep", "tags": ["Orgs SCEP"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "put": {"description": "Update Mist SCEP settings for the organization, including enabled state, suspension state, and certificate providers.", "operationId": "updateOrgMistScep", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"enabled": true}}}, "schema": {"$ref": "#/components/schemas/org_setting_scep"}}}}, "responses": {"200": {"$ref": "#/components/responses/OrgScep"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgMistScep", "tags": ["Orgs SCEP"]}}, "/api/v1/orgs/{org_id}/setting/mist_scep/client_certs": {"get": {"description": "List Mist SCEP client certificates issued for the organization. Results can be filtered by common name, certificate provider, serial number, device ID, or time range.", "operationId": "listOrgIssuedClientCertificates", "parameters": [{"description": "Filter by certificate common name (e.g. user UPN or device identifier)", "in": "query", "name": "common_name", "schema": {"type": "string"}}, {"description": "Filter by MDM or certificate provider that issued the certificate. Accepts multiple comma-separated values.", "in": "query", "name": "cert_provider", "schema": {"type": "string"}}, {"description": "Filter by certificate serial number. Accepts multiple comma-separated values.", "in": "query", "name": "serial_number", "schema": {"type": "string"}}, {"description": "Filter by device identifier associated with the certificate. Accepts multiple comma-separated values.", "in": "query", "name": "device_id", "schema": {"type": "string"}}, {"description": "Filter by certificate expiry time, in epoch seconds", "in": "query", "name": "expire_time", "schema": {"type": "integer"}}, {"description": "Filter by certificate issuance time, in epoch seconds", "in": "query", "name": "created_time", "schema": {"type": "integer"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/IssuedClientCertificates"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgIssuedClientCertificates", "tags": ["Orgs SCEP"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/setting/mist_scep/client_certs/revoke": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Revoke issued Mist SCEP client certificates by certificate serial number.", "operationId": "revokeOrgIssuedClientCertificates", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"serial_numbers": ["13 00 13 03 23 EE D5 84 01"]}}}, "schema": {"$ref": "#/components/schemas/client_cert_serial_numbers"}}}}, "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": "revokeOrgIssuedClientCertificates", "tags": ["Orgs SCEP"]}}, "/api/v1/orgs/{org_id}/setting/pcap_bucket/setup": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Start custom packet capture bucket setup by saving the bucket name and having Mist write a `MIST_TOKEN` file to the bucket. Complete ownership verification with the verify endpoint by submitting the token contents.", "operationId": "setOrgCustomBucket", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 ownership of a custom packet capture bucket by submitting the token read from the `MIST_TOKEN` file. If verification succeeds, Mist creates a `VERIFIED` file in the bucket.", "operationId": "verifyOrgCustomBucket", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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/skyatp/secintel_allowlist": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "put": {"description": "Update the Sky ATP SecIntel allowlist with domain and IP address entries for the organization.", "operationId": "udpateOrgAtpAllowedList", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"domains": [{"comment": "restricted", "value": "unsafe.xxx"}], "ips": [{"comment": "nas", "value": "10.1.3.5"}]}}}, "schema": {"$ref": "#/components/schemas/skyatp_list"}}}}, "responses": {"200": {"$ref": "#/components/responses/SkyAtpList"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "udpateOrgAtpAllowedList", "tags": ["Orgs Integration SkyATP"]}}, "/api/v1/orgs/{org_id}/setting/skyatp/secintel_blocklist": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "put": {"description": "Update the Sky ATP SecIntel blocklist with domain and IP address entries for the organization.", "operationId": "udpateOrgAtpBlockedList", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"domains": [{"comment": "restricted", "value": "unsafe.xxx"}], "ips": [{"comment": "nas", "value": "10.1.3.5"}]}}}, "schema": {"$ref": "#/components/schemas/skyatp_list"}}}}, "responses": {"200": {"$ref": "#/components/responses/SkyAtpList"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "udpateOrgAtpBlockedList", "tags": ["Orgs Integration SkyATP"]}}, "/api/v1/orgs/{org_id}/setting/skyatp/setup": {"delete": {"description": "Remove the Sky ATP integration configuration from the organization.", "operationId": "deleteOrgSkyAtpIntegration", "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": "deleteOrgSkyAtpIntegration", "tags": ["Orgs Integration SkyATP"]}, "get": {"description": "Return the Sky ATP integration configuration, including linked realm information and generated SecIntel allowlist and blocklist URLs.", "operationId": "getOrgSkyAtpIntegration", "responses": {"200": {"$ref": "#/components/responses/AccountSkyAtpInfo"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgSkyAtpIntegration", "tags": ["Orgs Integration SkyATP"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Configure the Sky ATP integration by linking or creating the Sky ATP realm with the supplied cloud, realm, username, and password. The integration enables Security Intelligence and Advanced Anti-Malware features, with SecIntel configuration for command-and-control, DNS feeds, infected hosts, blocklists, and allowlists.", "operationId": "setupOrgAtpIntegration", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"cloud_name": "www.amerskyatp.com", "password": "foryoureyesonly", "realm": "mist-team", "username": "john@abc.com"}}}, "schema": {"$ref": "#/components/schemas/account_skyatp_config"}}}}, "responses": {"200": {"$ref": "#/components/responses/AccountSkyAtpInfo"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "setupOrgAtpIntegration", "tags": ["Orgs Integration SkyATP"]}, "put": {"description": "Update Sky ATP SecIntel feed configuration, including the third-party threat feeds enabled for the organization.", "operationId": "udpateOrgAtpIntegration", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"secintel": {"third_party_threat_feeds": ["block_list"]}}}}, "schema": {"$ref": "#/components/schemas/account_skyatp_data"}}}}, "responses": {"200": {"$ref": "#/components/responses/AccountSkyAtpData"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "udpateOrgAtpIntegration", "tags": ["Orgs Integration SkyATP"]}}, "/api/v1/orgs/{org_id}/setting/zscaler/setup": {"delete": {"description": "Remove the Zscaler integration configuration from the organization.", "operationId": "deleteOrgZscalerIntegration", "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": "deleteOrgZscalerIntegration", "tags": ["Orgs Integration Zscaler"]}, "get": {"description": "Return the Zscaler integration configuration, including Zscaler Internet Access cloud name, partner key, and partner administrator username.", "operationId": "getOrgZscalerIntegration", "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": "getOrgZscalerIntegration", "tags": ["Orgs Integration Zscaler"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Configure the Zscaler integration with the Zscaler Internet Access cloud name, partner key, and partner administrator credentials used by Mist.", "operationId": "setupOrgZscalerIntegration", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"cloud_name": "zscalerbeta.net", "partner_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": "setupOrgZscalerIntegration", "tags": ["Orgs Integration Zscaler"]}}, "/api/v1/orgs/{org_id}/setting/{app_name}/link_accounts": {"get": {"description": "Return linked-account status for the specified organization OAuth application and the authorization URL used to start account linking.", "operationId": "getOrgOauthAppLinkedStatus", "parameters": [{"description": "Mist portal url to which backend needs to redirect after successful 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": {"$ref": "#/components/schemas/oauth_app_name"}}], "post": {"description": "Add a linked account for the specified OAuth application using the app-specific account configuration payload.", "operationId": "addOrgOauthAppAccounts", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/account_oauth_add"}}}}, "responses": {"200": {"$ref": "#/components/responses/OauthAppLink"}, "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"]}}, "/api/v1/orgs/{org_id}/setting/{app_name}/link_accounts/{account_id}": {"delete": {"description": "Remove a linked account authorization for the specified OAuth application and account ID.", "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": {"$ref": "#/components/schemas/oauth_app_name"}}, {"$ref": "#/components/parameters/account_id"}], "put": {"description": "Update app-specific settings for a linked OAuth application account, such as Zoom or Teams guest redaction settings or a Zoom daily API request quota.", "operationId": "updateOrgOauthAppAccount", "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": "updateOrgOauthAppAccount", "tags": ["Orgs Linked Applications"]}}, "/api/v1/orgs/{org_id}/sitegroups": {"get": {"description": "List site groups configured in the organization. A site group collects site IDs so sites can be managed or referenced as a group.", "operationId": "listOrgSiteGroups", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a site group in the organization with a display name and optional site membership.", "operationId": "createOrgSiteGroup", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Remove a site group from the organization.", "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": "Return a site group, including its display name and the site IDs included in the 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 the display name used to identify a site group in the organization.", "operationId": "updateOrgSiteGroup", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string"}}}, "schema": {"$ref": "#/components/schemas/name_string"}}}, "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": "List sites in the organization. Site records include location metadata, timezone, site group membership, and template or policy associations.", "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 a site in the organization with location metadata, timezone, site group membership, and optional template or policy associations.", "operationId": "createOrgSite", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"address": "1601 S. Deanza Blvd., Cupertino, CA, 95014", "alarmtemplate_id": "684dfc5c-fe77-2290-eb1d-ef3d677fe168", "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 organization sites grouped by a distinct site attribute, such as country code, site name, feature flags, or enabled services.", "operationId": "countOrgSites", "parameters": [{"description": "Field used to group this count response. enum: `analytic_enabled`, `app_waking`, `asset_enabled`, `auto_upgrade_enabled`, `auto_upgrade_version`, `country_code`, `honeypot_enabled`, `id`, `locate_unconnected`, `mesh_enabled`, `name`, `remote_syslog_enabled`, `rogue_enabled`, `rtsa_enabled`, `vna_enabled`, `wifi_enabled`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_sites_count_distinct"}}, {"$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": "countOrgSites", "tags": ["Orgs Sites"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/sites/search": {"get": {"description": "Search organization sites with filters for feature flags, country code, identifiers, names, upgrade settings, and other site attributes. Supports pagination and sorting.", "operationId": "searchOrgSites", "parameters": [{"description": "If Advanced Analytic feature is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "analytic_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "If App Waking feature is enabled", "in": "query", "name": "app_waking", "schema": {"type": "boolean"}}, {"description": "If Asset Tracking is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "asset_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "Filter results by whether automatic upgrades are enabled", "in": "query", "name": "auto_upgrade_enabled", "schema": {"type": "boolean"}}, {"description": "Filter results by automatic upgrade version. Accepts multiple comma-separated values.", "in": "query", "name": "auto_upgrade_version", "schema": {"examples": ["custom,stable"], "type": "string"}}, {"description": "Filter results by country code. Accepts multiple comma-separated values.", "in": "query", "name": "country_code", "schema": {"examples": ["CA,FR"], "type": "string"}}, {"description": "If Honeypot detection is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "honeypot_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "Filter results by identifier. Accepts multiple comma-separated values.", "in": "query", "name": "id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "If unconnected client are located. Accepts multiple comma-separated boolean values.", "in": "query", "name": "locate_unconnected", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "If Mesh feature is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "mesh_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "Partial / full Site name. Case insensitive. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-site*` and `*site*` match `my-site-01`). Suffix-only wildcards (e.g. `*site-01`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "name", "schema": {"examples": ["my-site-01,my-site*", "my-site-01", "my-site*", "*site*"], "type": "string"}}, {"description": "If Rogue detection is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "rogue_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "If Remote Syslog is enabled", "in": "query", "name": "remote_syslog_enabled", "schema": {"type": "boolean"}}, {"description": "If managed mobility feature is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "rtsa_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "If Virtual Network Assistant is enabled. Accepts multiple comma-separated boolean values.", "in": "query", "name": "vna_enabled", "schema": {"examples": ["true,false"], "type": "boolean"}}, {"description": "If Wi-Fi 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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 floorplan data into a site from a multipart upload. The upload includes an Ekahau or iBwave floorplan file, optional import options JSON, and optional AP name-mapping CSV; matching inventory can be assigned to the site and APs placed when names or MAC addresses match.", "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\n\"file\": a binary file, option: .esx\n\"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": "List site templates configured in the organization. Site templates contain automatic upgrade settings and variables available to WLAN configuration.", "operationId": "listOrgSiteTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 a site template with automatic upgrade settings and template\nvariables available to WLAN configuration.\n\nTo assign a Site template to a site, use the [Update Site](/#operations/updateSiteInfo) endpoint and specify the Site template ID in the `sitetemplate_id` field of the request body.'", "operationId": "createOrgSiteTemplate", "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": "createOrgSiteTemplate", "tags": ["Orgs Site Templates"]}}, "/api/v1/orgs/{org_id}/sitetemplates/{sitetemplate_id}": {"delete": {"description": "Remove a site template from the organization.", "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": "Return a site template, including automatic upgrade settings and template variables available to WLAN configuration.", "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 a site template's automatic upgrade settings and template variables available to WLAN configuration.", "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}/ssl_proxy_cert": {"get": {"description": "Return the PEM-encoded SSL proxy certificate for the organization, used by SSL proxy inspection.", "operationId": "getOrgSslProxyCert", "responses": {"200": {"$ref": "#/components/responses/OrgSslProxyCert"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgSslProxyCert", "tags": ["Orgs Cert"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/ssoroles": {"get": {"description": "List organization SSO role definitions that map identity-provider role assertions to organization, site, or site group privilege scopes.", "operationId": "listOrgSsoRoles", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listOrgSsoRoles", "tags": ["Orgs SSO Roles"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an organization SSO role definition with a display name and the privileges granted when the role is matched during SSO.", "operationId": "createOrgSsoRole", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string", "privileges": [{"org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "role": "admin", "scope": "org"}, {"role": "read", "scope": "site", "site_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1"}, {"org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "role": "read", "scope": "sitegroup", "sitegroup_id": "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 an organization SSO role definition so it can no longer grant privileges during SSO.", "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": "Return one organization SSO role definition, including its display name and granted privileges.", "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 an organization SSO role definition, including its display name and granted privileges.", "operationId": "updateOrgSsoRole", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "string", "privileges": [{"org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "role": "admin", "scope": "org"}, {"role": "read", "scope": "site", "site_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1"}, {"org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "role": "read", "scope": "sitegroup", "sitegroup_id": "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": "List SSO identity provider configurations defined for this organization.", "operationId": "listOrgSsos", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 an organization SSO identity provider configuration, including provider settings and role-handling behavior.", "operationId": "createOrgSso", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"custom_logout_url": "string", "idp_cert": "string", "idp_sign_algo": "sha256", "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 an organization SSO identity provider configuration so it can no longer be used for administrator login.", "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": "Return one organization SSO identity provider configuration, including provider settings and generated SSO URLs.", "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 an organization SSO identity provider configuration, such as IdP URLs, certificates, issuer, NameID format, and unmatched-role handling.", "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}/delete_admins": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/sso_id"}], "post": {"description": "Remove SSO-linked organization administrator accounts by email for this SSO profile.", "operationId": "deleteOrgSsoAdmins", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"emails": ["john@abc.com", "may@abc.com"]}}}, "schema": {"$ref": "#/components/schemas/sso_delete_admins"}}}, "description": "Request Body"}, "responses": {"200": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/sso_delete_admins_response"}}}, "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": "deleteOrgSsoAdmins", "tags": ["Orgs SSO"]}}, "/api/v1/orgs/{org_id}/ssos/{sso_id}/failures": {"get": {"description": "List recent authentication failures for this organization SSO configuration, including failure details and captured SAML assertion data when available.", "operationId": "listOrgSsoLatestFailures", "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/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": "Return generated SAML service provider metadata for this organization SSO configuration as JSON.", "operationId": "getOrgSamlMetadata", "responses": {"200": {"$ref": "#/components/responses/SamlMetadata"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgSamlMetadata", "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 generated SAML service provider metadata XML for this\norganization SSO configuration. Use this XML to configure the identity provider\nwith Mist service-provider details such as entity ID, ACS URL, logout URL,\nNameID format, and requested attributes.\n\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": "downloadOrgSamlMetadata", "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": "downloadOrgSamlMetadata", "tags": ["Orgs SSO"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/sso_id"}]}, "/api/v1/orgs/{org_id}/ssr/export_idtokens": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Export SSR ID tokens for the requested device MAC addresses so they can be imported into Conductor during SSR onboarding.", "operationId": "exportOrgSsrIdTokens", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/mac_addresses"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/SsrExportIdTokens"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "exportOrgSsrIdTokens", "tags": ["Orgs Devices - SSR"]}}, "/api/v1/orgs/{org_id}/ssr/register_cmd": {"get": {"description": "Return the registration token and conductor or router commands used to register SSR routers with Mist. The optional TTL controls token validity, and asset IDs can restrict registration to specific assets.", "operationId": "getOrgSsrRegistrationCommands", "parameters": [{"description": "Token validity duration in seconds. Defaults to 1 year (31536000 seconds)", "in": "query", "name": "ttl", "schema": {"examples": [31536000], "type": "integer"}}, {"description": "When specified restricts registration to listed assets only. Prefer HTTP body over headers for this parameter, especially with long lists to avoid header size limits.", "in": "query", "name": "asset_ids", "schema": {"$ref": "#/components/schemas/strings"}}], "responses": {"200": {"$ref": "#/components/responses/RouterSsrRegisterCmd"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgSsrRegistrationCommands", "tags": ["Orgs Devices - SSR"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/ssr/upgrade": {"get": {"description": "List SSR firmware upgrade jobs for the organization, including status, rollout strategy, target versions, release channel, and device counts.", "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": "Create an SSR firmware upgrade job for selected devices, with firmware version or channel, rollout strategy, and optional download or reboot timing.", "operationId": "upgradeOrgSsrs", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": {"get": {"description": "Return detailed status for an SSR firmware upgrade job, including target device IDs grouped by upgrade status.", "operationId": "getOrgSsrUpgrade", "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": "getOrgSsrUpgrade", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/upgrade_id"}], "post": {"description": "Cancel an SSR firmware upgrade job on a best-effort basis. Devices that have already upgraded are not changed.", "operationId": "cancelOrgSsrUpgrade", "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": "List SSR firmware versions available for upgrade, optionally filtered by release channel and one or more SSR MAC addresses.", "operationId": "listOrgAvailableSsrVersions", "parameters": [{"$ref": "#/components/parameters/ssr_version_channel"}, {"description": "Optional. MAC address, or comma separated MAC address list.", "in": "query", "name": "mac", "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": "Return an organization statistics summary, including device, inventory, and site counts, connected and disconnected device counts, organization group membership, and SLE summaries.", "operationId": "getOrgStats", "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": "List BLE asset location and advertisement statistics for the organization over an optional time window, including map coordinates, RSSI, zones, and iBeacon or Eddystone fields.", "operationId": "listOrgAssetsStats", "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/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 - Assets"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/assets/count": {"get": {"description": "Count organization asset statistics grouped by a distinct asset attribute, such as MAC address, site, map, iBeacon UUID, iBeacon major, or iBeacon minor.", "operationId": "countOrgAssetsByDistanceField", "parameters": [{"description": "Field used to group this count response. enum: `ibeacon_major`, `ibeacon_minor`, `ibeacon_uuid`, `mac`, `map_id`, `site_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_asset_count_distinct"}}, {"$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": "countOrgAssetsByDistanceField", "tags": ["Orgs Stats - Assets"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/assets/search": {"get": {"description": "Search BLE asset statistics with filters for site, MAC address, asset name, map, iBeacon or Eddystone identifiers, reporting AP MAC address, RSSI, beam, and time range. Supports pagination and sorting.", "operationId": "searchOrgAssets", "parameters": [{"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter asset results by reporting device name", "in": "query", "name": "device_name", "schema": {"type": "string"}}, {"description": "Filter results by name. Accepts multiple comma-separated values.", "in": "query", "name": "name", "schema": {"examples": ["name-a,name-b"], "type": "string"}}, {"description": "Filter results by map identifier", "in": "query", "name": "map_id", "schema": {"type": "string"}}, {"description": "Filter asset results by iBeacon UUID. Accepts multiple comma-separated values.", "in": "query", "name": "ibeacon_uuid", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "Filter asset results by iBeacon major value. Accepts multiple comma-separated values.", "in": "query", "name": "ibeacon_major", "schema": {"examples": ["59788,902"], "type": "string"}}, {"description": "Filter asset results by iBeacon minor value. Accepts multiple comma-separated values.", "in": "query", "name": "ibeacon_minor", "schema": {"examples": ["8385,4432"], "type": "string"}}, {"description": "Filter asset results by Eddystone UID namespace", "in": "query", "name": "eddystone_uid_namespace", "schema": {"type": "string"}}, {"description": "Filter asset results by Eddystone UID instance", "in": "query", "name": "eddystone_uid_instance", "schema": {"type": "string"}}, {"description": "Filter asset results by Eddystone URL", "in": "query", "name": "eddystone_url", "schema": {"type": "string"}}, {"description": "Filter asset results by reporting AP MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "ap_mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter asset results by beam value. Accepts multiple comma-separated integer values.", "in": "query", "name": "beam", "schema": {"examples": ["2,6"], "type": "integer"}}, {"description": "Filter asset results by RSSI value. Accepts multiple comma-separated integer values.", "in": "query", "name": "rssi", "schema": {"examples": ["-69,-74"], "type": "integer"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Assets"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/bgp_peers/count": {"get": {"description": "Count by Distinct Attributes of Org BGP Stats", "operationId": "countOrgBgpStats", "parameters": [{"description": "Filter peer results by state", "in": "query", "name": "state", "schema": {"examples": ["established"], "type": "string"}}, {"description": "Field used to group this count response", "in": "query", "name": "distinct", "schema": {"examples": ["site_id"], "type": "string"}}, {"$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": "countOrgBgpStats", "tags": ["Orgs Stats - BGP Peers"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/bgp_peers/search": {"get": {"description": "Search Org BGP Stats", "operationId": "searchOrgBgpStats", "parameters": [{"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter peer results by neighbor MAC address", "in": "query", "name": "neighbor_mac", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter peer results by VRF name. Accepts multiple comma-separated values.", "in": "query", "name": "vrf_name", "schema": {"examples": ["default,vpn_OrgOverlay"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - BGP Peers"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/devices": {"get": {"description": "Get List of Org Devices stats\nThis API renders some high-level device stats, pagination is assumed and returned in response header (as the response is an array)", "operationId": "listOrgDevicesStats", "parameters": [{"description": "Filter results by one device type. Use a single value; comma-separated values are not supported. enum: `all`, `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_enum_with_all"}}, {"description": "Filter results by status. enum: `all`, `connected`, `disconnected`. Accepts multiple comma-separated values.", "example": "disconnected,connected", "in": "query", "name": "status", "schema": {"type": "string"}}, {"description": "Filter results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter results by evpntopo id", "in": "query", "name": "evpntopo_id", "schema": {"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/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 Stats - Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/marvisclients": {"delete": {"description": "Delete Marvis Client", "operationId": "deleteOrgMarvisClient", "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": "deleteOrgMarvisClient", "tags": ["Orgs Clients - Marvis"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/marvisclients/count": {"get": {"description": "Count Marvis Client stats records by a distinct field.", "operationId": "countOrgMarvisClientsStats", "parameters": [{"description": "Field to count by. enum: `device_id`, `wifi_mac`, `wifi_ip`, `hostname`, `model`, `mfg`, `serial`, `os_type`, `os_version`", "in": "query", "name": "distinct", "schema": {"default": "os_type", "type": "string"}}, {"description": "Filter by Marvis Client installation device UUID", "in": "query", "name": "device_id", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi MAC address", "in": "query", "name": "wifi_mac", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi IP address", "in": "query", "name": "wifi_ip", "schema": {"type": "string"}}, {"description": "Filter by device hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter by device manufacturer", "in": "query", "name": "mfg", "schema": {"type": "string"}}, {"description": "Filter by device serial number", "in": "query", "name": "serial", "schema": {"type": "string"}}, {"description": "Filter by device OS type or platform", "in": "query", "name": "os_type", "schema": {"type": "string"}}, {"description": "Filter by device OS version", "in": "query", "name": "os_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/StatsMarvisClientsCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countOrgMarvisClientsStats", "tags": ["Orgs Stats - Marvis Clients"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/marvisclients/search": {"get": {"description": "Search Marvis Client stats records across the organization.", "operationId": "searchOrgMarvisClientsStats", "parameters": [{"description": "Filter by Marvis Client installation device UUID", "in": "query", "name": "device_id", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi MAC address", "in": "query", "name": "wifi_mac", "schema": {"type": "string"}}, {"description": "Filter by device Wi-Fi IP address", "in": "query", "name": "wifi_ip", "schema": {"type": "string"}}, {"description": "Filter by device hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter by device manufacturer", "in": "query", "name": "mfg", "schema": {"type": "string"}}, {"description": "Filter by device serial number", "in": "query", "name": "serial", "schema": {"type": "string"}}, {"description": "Filter by device OS type or platform", "in": "query", "name": "os_type", "schema": {"type": "string"}}, {"description": "Filter by device OS version", "in": "query", "name": "os_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/StatsMarvisClientsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgMarvisClientsStats", "tags": ["Orgs Stats - Marvis Clients"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/mxedges": {"get": {"description": "Get List of Org MxEdge Stats", "operationId": "listOrgMxEdgesStats", "parameters": [{"description": "Filter for site level Mist Edges. enum: `any`, `true`, `false`", "in": "query", "name": "for_site", "schema": {"$ref": "#/components/schemas/for_site"}}, {"$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/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 - MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/mxedges/{mxedge_id}": {"get": {"description": "Get Org MxEdge Details Stats", "operationId": "getOrgMxEdgeStats", "parameters": [{"description": "Filter results by whether the object is scoped to a site", "in": "query", "name": "for_site", "schema": {"default": false, "type": "boolean"}}], "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 - MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/mxedge_id"}]}, "/api/v1/orgs/{org_id}/stats/ospf_peers/count": {"get": {"description": "Count OSPF peer stats by distinct attribute name", "operationId": "countOrgOspfStats", "parameters": [{"description": "Field used to group this count response. enum: `site_id`, `org_id`, `mac`, `peer_ip`, `port_id`, `state`, `vrf_name`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/ospf_peer_stats_count_distinct"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "countOrgOspfStats", "tags": ["Orgs Stats - Ospf"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/ospf_peers/search": {"get": {"description": "Search OSPF Neighbor Stats", "operationId": "searchOrgOspfStats", "parameters": [{"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter peer results by VRF name", "in": "query", "name": "vrf_name", "schema": {"type": "string"}}, {"description": "Filter peer results by peer IP address", "in": "query", "name": "peer_ip", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/OspfPeersStatsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgOspfStats", "tags": ["Orgs Stats - Ospf"]}, "parameters": [{"$ref": "#/components/parameters/org_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 Stats - Other Devices"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/device_mac"}]}, "/api/v1/orgs/{org_id}/stats/ports/count": {"get": {"description": "Count by Distinct Attributes of Switch/Gateway Ports at the Org level", "operationId": "countOrgSwOrGwPorts", "parameters": [{"description": "Field used to group this count response. enum: `full_duplex`, `mac`, `neighbor_mac`, `neighbor_port_desc`, `neighbor_system_name`, `poe_disabled`, `poe_mode`, `poe_on`, `port_id`, `port_mac`, `speed`, `up`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_ports_count_distinct"}}, {"description": "Indicates full or half duplex", "in": "query", "name": "full_duplex", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b350e0410"], "type": "string"}}, {"description": "Chassis identifier of the chassis type listed", "in": "query", "name": "neighbor_mac", "schema": {"examples": ["5c5b350e0410"], "type": "string"}}, {"description": "Description supplied by the system on the interface E.g. \"GigabitEthernet2/0/39\"", "in": "query", "name": "neighbor_port_desc", "schema": {"examples": ["ge-2/0/39"], "type": "string"}}, {"description": "Name supplied by the system on the interface E.g. neighbor system name E.g. \"Kumar-Acc-SW.mist.local\"", "in": "query", "name": "neighbor_system_name", "schema": {"examples": ["Kumar-Acc-SW.mist.local"], "type": "string"}}, {"description": "Is the POE configured not be disabled.", "in": "query", "name": "poe_disabled", "schema": {"examples": [false], "type": "boolean"}}, {"description": "POE mode depending on class E.g. \"802.3at\"", "in": "query", "name": "poe_mode", "schema": {"examples": ["802.3at"], "type": "string"}}, {"description": "Is the device attached to POE", "in": "query", "name": "poe_on", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"examples": ["ge-2/0/39"], "type": "string"}}, {"description": "Filter results by port MAC address", "in": "query", "name": "port_mac", "schema": {"examples": ["5c5b350e0410"], "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": {"examples": [15.4], "type": "number"}}, {"description": "Filter results by transmitted packet count", "in": "query", "name": "tx_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received packet count", "in": "query", "name": "rx_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received byte count", "in": "query", "name": "rx_bytes", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmit rate", "in": "query", "name": "tx_bps", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by receive rate", "in": "query", "name": "rx_bps", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmitted multicast packet count", "in": "query", "name": "tx_mcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmitted broadcast packet count", "in": "query", "name": "tx_bcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received multicast packet count", "in": "query", "name": "rx_mcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received broadcast packet count", "in": "query", "name": "rx_bcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by port speed", "in": "query", "name": "speed", "schema": {"examples": [1000000000], "type": "integer"}}, {"description": "STP state used to filter port results when `up`==`true`. enum: `\"\"`, `blocking`, `disabled`, `forwarding`, `learning`, `listening`", "in": "query", "name": "stp_state", "schema": {"$ref": "#/components/schemas/port_stp_state"}}, {"description": "STP role used to filter port results when `up`==`true`. enum: `\"\"`, `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`", "in": "query", "name": "stp_role", "schema": {"$ref": "#/components/schemas/port_stp_role"}}, {"description": "Authentication state used to filter port results when `up`==`true` and the port has an authenticator role. enum: `\"\"`, `authenticated`, `authenticating`, `held`, `init`", "in": "query", "name": "auth_state", "schema": {"$ref": "#/components/schemas/port_auth_state"}}, {"description": "Indicates if interface is up", "in": "query", "name": "up", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["72771e6a-6f5e-4de4-a5b9-1266c4197811"], "format": "uuid", "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": "countOrgSwOrGwPorts", "tags": ["Orgs Stats - Ports"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/ports/search": {"get": {"description": "Search Switch / Gateway Ports Stats.\nReturns a list of switch/gateway ports stats that match the search criteria.\n\nThe response provide current/last port status and statistics within the hour.\nTraffic information (Tx/Rx) are cumulative counters since the last device reboot.", "operationId": "searchOrgSwOrGwPorts", "parameters": [{"description": "Type of device. enum: `switch`, `gateway`, `all`. Accepts multiple comma-separated values.", "example": "gateway,switch", "in": "query", "name": "device_type", "schema": {"type": "string"}}, {"description": "Authentication state used to filter port results when `up`==`true` and the port has an authenticator role. enum: `\"\"`, `authenticated`, `authenticating`, `held`, `init`", "in": "query", "name": "auth_state", "schema": {"$ref": "#/components/schemas/port_auth_state"}}, {"description": "Indicates full or half duplex", "in": "query", "name": "full_duplex", "schema": {"type": "boolean"}}, {"description": "LTE IMSI value, Check for null/empty", "in": "query", "name": "lte_imsi", "schema": {"examples": ["310260000000001"], "type": "string"}}, {"description": "LTE ICCID value, Check for null/empty", "in": "query", "name": "lte_iccid", "schema": {"examples": ["89014103211118510720"], "type": "string"}}, {"description": "LTE IMEI value, Check for null/empty", "in": "query", "name": "lte_imei", "schema": {"examples": ["123456789012345"], "type": "string"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Chassis identifier of the chassis type listed. Accepts multiple comma-separated values.", "in": "query", "name": "neighbor_mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Description supplied by the system on the interface E.g. \"GigabitEthernet2/0/39\". Accepts multiple comma-separated values.", "in": "query", "name": "neighbor_port_desc", "schema": {"examples": ["ge-0-2,ge-0-1"], "type": "string"}}, {"description": "Name supplied by the system on the interface E.g. neighbor system name E.g. \"Kumar-Acc-SW.mist.local\". Accepts multiple comma-separated values.", "in": "query", "name": "neighbor_system_name", "schema": {"examples": ["sdwan-newyork,toronto-srx-2_node1"], "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. \"802.3at\"", "in": "query", "name": "poe_mode", "schema": {"type": "string"}}, {"description": "Is the device attached to POE", "in": "query", "name": "poe_on", "schema": {"type": "boolean"}}, {"description": "PoE priority used to filter switch port results. enum: `low`, `high`", "in": "query", "name": "poe_priority", "schema": {"$ref": "#/components/schemas/poe_priority"}}, {"description": "Filter results by port identifier. Accepts multiple comma-separated values.", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/1,ge-0/0/2"], "type": "string"}}, {"description": "Filter results by port MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "port_mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter results by port speed", "in": "query", "name": "speed", "schema": {"type": "integer"}}, {"description": "STP state used to filter port results when `up`==`true`. enum: `\"\"`, `blocking`, `disabled`, `forwarding`, `learning`, `listening`", "in": "query", "name": "stp_state", "schema": {"$ref": "#/components/schemas/port_stp_state"}}, {"description": "STP role used to filter port results when `up`==`true`. enum: `\"\"`, `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`", "in": "query", "name": "stp_role", "schema": {"$ref": "#/components/schemas/port_stp_role"}}, {"description": "Indicates if interface is up", "in": "query", "name": "up", "schema": {"type": "boolean"}}, {"description": "Optic Slot Partnumber, Check for null/empty", "in": "query", "name": "xcvr_part_number", "schema": {"examples": ["SFP-10G-SR"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Ports"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/sites": {"get": {"description": "Get List of Org Site Stats", "operationId": "listOrgSiteStats", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/SitesArrayStats"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgSiteStats", "tags": ["Orgs Stats - Sites"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/tunnels/count": {"get": {"description": "Count by Distinct Attributes of Mist Tunnels Stats", "operationId": "countOrgTunnelsStats", "parameters": [{"description": "Field used to group tunnel statistics count results. enum: `ap`, `auth_algo`, `encrypt_algo`, `ike_version`, `ip`, `last_event`, `mac`, `mxcluster_id`, `mxedge_id`, `node`, `peer_host`, `peer_ip`, `peer_mxedge_id`, `protocol`, `remote_ip`, `remote_port`, `site_id`, `state`, `tunnel_name`, `up`, `wxtunnel_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_tunnel_count_distinct"}}, {"description": "Filter results by type. enum: `wan`, `wxtunnel`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/org_tunnel_type_count"}}, {"$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": "countOrgTunnelsStats", "tags": ["Orgs Stats - Tunnels"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/tunnels/search": {"get": {"description": "By default the endpoint returns only `wxtunnel` type stats, to get `wan` type stats\nyou need to specify `type=wan` in the query parameters.\n\n\nTunnel types:\n- `wxtunnel` (default) - A WxLan Tunnel (WxTunnel) are used to create a secure connection between Juniper Mist Access Points and third-party VPN concentrators using protocols such as L2TPv3 or dmvpn.\n- `wan` - A WAN Tunnel is a secure connection between two Gateways, typically used for site-to-site or mesh connectivity. It can be configured with various protocols and encryption methods.\n\n\nIf `type` is not specified or `type`==`wxtunnel`, the following parameters are supported:\n- `mxcluster_id` - the MX cluster ID\n- `site_id` - the site ID\n- `wxtunnel_id` - the WX tunnel ID\n- `ap` - the AP MAC address\n\n\nIf `type`==`wan`, the following parameters are supported:\n- `mac` - the MAC address of the WAN device\n- `node` - the node ID\n- `peer_ip` - the peer IP address\n- `peer_host` - the peer host name\n- `ip` - the IP address of the WAN device\n- `tunnel_name` - the name of the tunnel\n- `protocol` - the protocol used for the tunnel\n- `auth_algo` - the authentication algorithm used for the tunnel\n- `encrypt_algo` - the encryption algorithm used for the tunnel\n- `ike_version` - the IKE version used for the tunnel\n- `up` - the status of the tunnel (up or down)\n", "operationId": "searchOrgTunnelsStats", "parameters": [{"description": "Filter results by mxcluster id when `type`==`wxtunnel`", "in": "query", "name": "mxcluster_id", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by wxtunnel id when `type`==`wxtunnel`", "in": "query", "name": "wxtunnel_id", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address when `type`==`wxtunnel`", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"description": "Filter results by MAC address when `type`==`wan`", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by node when `type`==`wan`", "in": "query", "name": "node", "schema": {"type": "string"}}, {"description": "Filter results by peer ip when `type`==`wan`", "in": "query", "name": "peer_ip", "schema": {"type": "string"}}, {"description": "Filter results by peer host when `type`==`wan`", "in": "query", "name": "peer_host", "schema": {"type": "string"}}, {"description": "Filter results by IP address when `type`==`wan`", "in": "query", "name": "ip", "schema": {"type": "string"}}, {"description": "Filter results by tunnel name when `type`==`wan`", "in": "query", "name": "tunnel_name", "schema": {"type": "string"}}, {"description": "Filter results by protocol when `type`==`wan`", "in": "query", "name": "protocol", "schema": {"type": "string"}}, {"description": "Filter results by auth algo when `type`==`wan`", "in": "query", "name": "auth_algo", "schema": {"type": "string"}}, {"description": "Filter results by encrypt algo when `type`==`wan`", "in": "query", "name": "encrypt_algo", "schema": {"type": "string"}}, {"description": "Filter results by ike version when `type`==`wan`", "in": "query", "name": "ike_version", "schema": {"type": "string"}}, {"description": "Filter results by up when `type`==`wan`", "in": "query", "name": "up", "schema": {"type": "string"}}, {"description": "Filter results by type. enum: `wan`, `wxtunnel`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/tunnel_type"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration_5m"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Tunnels"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/stats/vpn_peers/count": {"get": {"description": "Count by Distinct Attributes of Org Peer Path Stats", "operationId": "countOrgPeerPathStats", "parameters": [{"description": "Field used to group this count response", "in": "query", "name": "distinct", "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": "countOrgPeerPathStats", "tags": ["Orgs Stats - VPN Peers"]}, "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": [{"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202"], "type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "VPN implementation type used to filter the results. enum: `ipsec`, `svr`. Accepts multiple comma-separated values.", "example": "svr,ipsec", "in": "query", "name": "type", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - VPN Peers"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/subscriptions": {"delete": {"description": "Unsubscribe from Org Alarms/Reports\nSubscriptions 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 Alarms"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Subscribe to Org Alarms/Reports\nSubscriptions 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 Alarms"]}}, "/api/v1/orgs/{org_id}/templates": {"get": {"description": "Get List of Org WLAN Templates", "operationId": "listOrgTemplates", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"value": {"name": "Cloned"}}}, "schema": {"$ref": "#/components/schemas/name_string"}}}, "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": {"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 by Distinct Attributes of Org Tickets", "operationId": "countOrgTickets", "parameters": [{"description": "Field used to group this count response. enum: `status`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_tickets_count_distinct"}}, {"$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": "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": {"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}/attachments": {"parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/ticket_id"}], "post": {"description": "Get Org ticket Attachment", "operationId": "UploadOrgTicketAttachment", "requestBody": {"content": {"multipart/form-data": {"schema": {"$ref": "#/components/schemas/ticket_upload_attachments_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": "UploadOrgTicketAttachment", "tags": ["Orgs Tickets"]}}, "/api/v1/orgs/{org_id}/tickets/{ticket_id}/attachments/{attachment_id}": {"get": {"description": "Get Org ticket Attachment", "operationId": "GetOrgTicketAttachment", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/TicketAttachment"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "GetOrgTicketAttachment", "tags": ["Orgs Tickets"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/ticket_id"}, {"$ref": "#/components/parameters/attachment_id"}]}, "/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 for maximum of last 7 days from current time. See search APIs for device information:\n- [search Device](/#operations/searchOrgDevices)\n- [search Wireless Client](/#operations/searchOrgWirelessClients)\n- [search Wired Client](/#operations/searchOrgWiredClients)\n- [search Wan Client](/#operations/searchOrgWanClients)\n\n**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. enum: `wan`, `wired`, `wireless`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/troubleshoot_type"}}], "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}/uisettings": {"get": {"description": "List the Orgs UI settings/databoard", "operationId": "listOrgUiSettings", "responses": {"200": {"$ref": "#/components/responses/OrgUiSettingsArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listOrgUiSettings", "tags": ["Orgs UI Settings"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create an Org UI settings/databoard", "operationId": "createOrgUiSettings", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"description": "AP related stats", "isCustomDataboard": true, "name": "AP Stats", "purpose": "marvisdashboard", "tiles": [{"description": "User typed tile descr", "isAutoTitle": true, "name": "List top 10 APs by bandwidth", "nl_query": "List top 10 APs by bandwidth", "position": {"col": 1, "colSpan": 2, "row": 1, "rowSpan": 1}}]}}}, "schema": {"$ref": "#/components/schemas/org_ui_settings"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/OrgUiSettings"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createOrgUiSettings", "tags": ["Orgs UI Settings"]}}, "/api/v1/orgs/{org_id}/uisettings/{uisetting_id}": {"delete": {"description": "Delete an Org UI settings", "operationId": "deleteOrgUiSetting", "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": "deleteOrgUiSetting", "tags": ["Orgs UI Settings"]}, "get": {"description": "Get an Org UI settings/databoard", "operationId": "getOrgUiSetting", "responses": {"200": {"$ref": "#/components/responses/OrgUiSettings"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getOrgUiSetting", "tags": ["Orgs UI Settings"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/uisetting_id"}], "post": {"description": "Org UI settings/databoard", "operationId": "updateOrgUiSetting", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"description": "AP related stats", "isCustomDataboard": true, "name": "AP Stats", "purpose": "marvisdashboard", "tiles": [{"description": "User typed tile descr", "isAutoTitle": true, "name": "List top 10 APs by bandwidth", "nl_query": "List top 10 APs by bandwidth", "position": {"col": 1, "colSpan": 2, "row": 1, "rowSpan": 1}}]}}}, "schema": {"$ref": "#/components/schemas/org_ui_settings"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/OrgUiSettings"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgUiSetting", "tags": ["Orgs UI Settings"]}}, "/api/v1/orgs/{org_id}/usermacs": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create Org User MACs\n\n### Usermacs import CSV file format\nmac,labels,vlan,notes \n921b638445cd,\"bldg1,flor1\",vlan-100 \n721b638445ef,\"bldg2,flor2\",vlan-101,Canon Printers \n721b638445ee,\"bldg3,flor3\",vlan-102 \n921b638445ce,\"bldg4,flor4\",vlan-103 \n921b638445cf,\"bldg5,flor5\",vlan-104", "operationId": "createOrgUserMac", "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": "createOrgUserMac", "tags": ["Orgs User MACs"]}, "put": {"description": "Update Multiple Org User MACs. Accepts a JSON array of user MAC objects where `id` is required for each entry.", "operationId": "updateOrgMultipleUserMacs", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/user_macs"}}}}, "responses": {"200": {"$ref": "#/components/responses/UserMacsUpdate"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "updateOrgMultipleUserMacs", "tags": ["Orgs User MACs"]}}, "/api/v1/orgs/{org_id}/usermacs/count": {"get": {"description": "Count by Distinct Attributes of User MACs", "operationId": "countOrgUserMacs", "parameters": [{"description": "Attribute to count by. enum: `mac`, `name`, `labels`, `org_id`", "in": "query", "name": "distinct", "required": true, "schema": {"$ref": "#/components/schemas/count_usermac_distinct"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/UserMacsCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countOrgUserMacs", "tags": ["Orgs User MACs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/usermacs/delete": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Delete Multiple Org User MACs", "operationId": "deleteOrgMultipleUserMacs", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/usermacs_id"}}}, "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": "deleteOrgMultipleUserMacs", "tags": ["Orgs User MACs"]}}, "/api/v1/orgs/{org_id}/usermacs/import": {"parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Import Org User MACs. Accepts JSON or CSV upload.\n\n**JSON \u2014 Array form** (asynchronous by default):\n```json\n[\n {\"mac\": \"921b638445cd\", \"labels\": [\"label1\"], \"vlan\": \"vlan-1\"},\n {\"mac\": \"721b638445ef\", \"labels\": [\"label2\", \"label3\"], \"notes\": \"mac address refers to Canon printers\"}\n]\n```\n\n**CSV upload**: multipart/form-data with `file` field.\n\n### CSV file format\n```csv\nmac,labels,vlan,notes,name,radius_group\n921b638445cd,\"bldg1,flor1\",vlan-100\n721b638445ef,\"bldg2,flor2\",vlan-101,Canon Printers\n721b638445ee,\"bldg3,flor3\",vlan-102,Printer2,VIP\n921b638445ce,\"bldg4,flor4\",vlan-103\n921b638445cf,\"bldg5,flor5\",vlan-104\n```", "operationId": "importOrgUserMacs", "requestBody": {"content": {"application/json": {"examples": {"ArrayForm": {"value": [{"labels": ["label1"], "mac": "921b638445cd", "vlan": "vlan-1"}, {"labels": ["label2", "label3"], "mac": "721b638445ef", "notes": "mac address refers to Canon printers"}, {"labels": ["label4"], "mac": "721b638445ee"}, {"labels": ["label5", "label6", "label7"], "mac": "921b638445ce"}, {"mac": "921b638445cf", "vlan": "vlan-100"}]}}, "schema": {"$ref": "#/components/schemas/user_macs"}}, "multipart/form-data": {"schema": {"properties": {"file": {"description": "CSV file containing user MAC entries to import", "format": "binary", "type": "string"}}, "required": ["file"], "type": "object"}}}}, "responses": {"200": {"$ref": "#/components/responses/UserMacImport"}, "400": {"$ref": "#/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"]}}, "/api/v1/orgs/{org_id}/usermacs/search": {"get": {"description": "Search Org User MACs", "operationId": "searchOrgUserMacs", "parameters": [{"$ref": "#/components/parameters/partial_filter_mac_usermac"}, {"description": "Optional, array of strings of labels", "in": "query", "name": "labels", "schema": {"$ref": "#/components/schemas/search_org_user_macs_labels"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"$ref": "#/components/parameters/sort"}], "responses": {"200": {"$ref": "#/components/responses/UserMacsArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchOrgUserMacs", "tags": ["Orgs User MACs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}]}, "/api/v1/orgs/{org_id}/usermacs/{usermac_id}": {"delete": {"description": "Delete Org User MAC", "operationId": "deleteOrgUserMac", "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": "deleteOrgUserMac", "tags": ["Orgs User MACs"]}, "get": {"description": "Get Org User MAC", "operationId": "getOrgUserMac", "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": "getOrgUserMac", "tags": ["Orgs User MACs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/usermac_id"}], "put": {"description": "Update Org User MAC", "operationId": "updateOrgUserMac", "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": "updateOrgUserMac", "tags": ["Orgs User MACs"]}}, "/api/v1/orgs/{org_id}/vars/search": {"get": {"description": "Search vars\n\nExample: /api/v1/orgs/{org_id}/vars/search?vars=*", "operationId": "searchOrgVars", "parameters": [{"description": "Filter results by site identifier. Accepts multiple comma-separated values.", "in": "query", "name": "site_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"], "type": "string"}}, {"description": "Filter variable results by variable name. Accepts multiple comma-separated values.", "in": "query", "name": "var", "schema": {"examples": ["guest_end,guest_net"], "type": "string"}}, {"description": "Filter results by source. enum: `deviceprofile`, `site`", "in": "query", "name": "src", "schema": {"$ref": "#/components/schemas/var_source"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "listOrgVpns", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listOrgVpns", "tags": ["Orgs VPNs"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}], "post": {"description": "Create Org VPN", "operationId": "createOrgVpn", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "createOrgVpn", "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": "Get Org Vpn", "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": {"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": [{"description": "Field used to group this count response. enum: `hostname`, `ip`, `mac`, `mfg`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_wan_clients_events_count_distinct"}}, {"$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 by Distinct Attributes of Org WAN Clients", "operationId": "countOrgWanClients", "parameters": [{"description": "Field used to group this count response. enum: `hostname`, `ip`, `mac`, `mfg`, `network`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_wan_clients_count_distinct"}}, {"$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": "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"}, {"$ref": "#/components/parameters/partial_filter_mac_client"}, {"$ref": "#/components/parameters/partial_filter_hostname_client"}, {"$ref": "#/components/parameters/partial_filter_ip_client"}, {"$ref": "#/components/parameters/partial_filter_mfg_client"}, {"description": "Filter results by NAC rule identifier", "in": "query", "name": "nacrule_id", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"examples": ["72771e6a-6f5e-4de4-a5b9-1266c4197811"], "format": "uuid", "type": "string"}}, {"description": "Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "hostname", "schema": {"examples": ["my-everest-client,my-everest*", "my-everest-client", "my-everest*", "*everest*"], "type": "string"}}, {"description": "Partial / full Client IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "ip", "schema": {"examples": ["10.100.10.54,10.100.10.*", "10.100.10.54", "10.100.10.*", "*100.10.*"], "type": "string"}}, {"description": "Filter results by source IP address", "in": "query", "name": "ip_src", "schema": {"examples": ["dhcp"], "type": "string"}}, {"description": "Filter results by MAC address. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101,5c5b53020202", "5c5b53010101"], "type": "string"}}, {"description": "Filter results by manufacturer. Accepts multiple comma-separated values.", "in": "query", "name": "mfg", "schema": {"examples": ["Unknown,Juniper Networks"], "type": "string"}}, {"description": "Partial / full Name of the network the client is/was connected to. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-corp*` and `*corp*` match `my-corp-network`). Suffix-only wildcards (e.g. `*corp`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "network", "schema": {"examples": ["my-corp-network,my-corp*", "my-corp-network", "my-corp*", "*corp*"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": "**N.B**. For org webhooks, only alarms/audits/client-info/client-join/client-sessions/device_events/device-updowns/mxedge_events Infrastructure topics are supported.\n\n\nWebhook defines a webhook, modeled after [github\\u2019s model](https://developer.github.com/webhooks/).\n\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\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", "operationId": "createOrgWebhook", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/webhook"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/Webhook"}, "400": {"$ref": "#/components/responses/HTTP400Webhook"}, "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/count": {"get": {"description": "Count Org Webhooks deliveries\n\n\nTopics Supported:\n- alarms\n- audits\n- device-updowns\n- occupancy-alerts\n- ping", "operationId": "countOrgWebhooksDeliveries", "parameters": [{"description": "Filter webhook delivery results by error message", "in": "query", "name": "error", "schema": {"type": "string"}}, {"description": "Filter webhook delivery results by HTTP status code", "in": "query", "name": "status_code", "schema": {"type": "integer"}}, {"description": "Webhook delivery status used to filter results. enum: `failure`, `success`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/webhook_delivery_status"}}, {"description": "Webhook topic used to filter results. enum: `alarms`, `audits`, `device-updowns`, `occupancy-alerts`, `ping`", "in": "query", "name": "topic", "schema": {"$ref": "#/components/schemas/webhook_delivery_topic"}}, {"description": "Field used to group this count response. enum: `status`, `status_code`, `topic`, `webhook_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/webhook_delivery_distinct"}}, {"$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": "countOrgWebhooksDeliveries", "tags": ["Orgs Webhooks"]}, "parameters": [{"$ref": "#/components/parameters/org_id"}, {"$ref": "#/components/parameters/webhook_id"}]}, "/api/v1/orgs/{org_id}/webhooks/{webhook_id}/events/search": {"get": {"description": "Search Org Webhooks deliveries\n\n\nTopics Supported:\n- alarms\n- audits\n- device-updowns\n- occupancy-alerts\n- ping", "operationId": "searchOrgWebhooksDeliveries", "parameters": [{"description": "Filter webhook delivery results by error message", "in": "query", "name": "error", "schema": {"type": "string"}}, {"description": "Filter webhook delivery results by HTTP status code", "in": "query", "name": "status_code", "schema": {"type": "integer"}}, {"description": "Webhook delivery status used to filter results. enum: `failure`, `success`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/webhook_delivery_status"}}, {"description": "Webhook topic used to filter results. enum: `alarms`, `audits`, `device-updowns`, `occupancy-alerts`, `ping`", "in": "query", "name": "topic", "schema": {"$ref": "#/components/schemas/webhook_delivery_topic"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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\n\nNote: For list of available `type` values, please refer to [List Client Events Definitions](/#operations/listClientEventsDefinitions)", "operationId": "countOrgWiredClients", "parameters": [{"description": "Field used to group this count response. enum: `device_mac`, `mac`, `port_id`, `site_id`, `type`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/org_wired_clients_count_distinct"}}, {"$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": "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\n\nNote: For list of available `type` values, please refer to [List Client Events Definitions](/#operations/listClientEventsDefinitions)", "operationId": "searchOrgWiredClients", "parameters": [{"description": "Filter results by auth state", "in": "query", "name": "auth_state", "schema": {"type": "string"}}, {"description": "Filter results by authentication method. Accepts multiple comma-separated values.", "in": "query", "name": "auth_method", "schema": {"examples": ["server_reject,mac_auth"], "type": "string"}}, {"description": "Filter results by client learning source. enum: `lldp`, `mac`. Accepts multiple comma-separated values.", "example": "lldp,mac", "in": "query", "name": "source", "schema": {"type": "string"}}, {"description": "Filter results by site identifier", "in": "query", "name": "site_id", "schema": {"type": "string"}}, {"description": "Filter results by one or more gateway or switch MAC addresses where the client has connected. Supports comma-separated values", "in": "query", "name": "device_mac", "schema": {"type": "string"}}, {"description": "Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported. Accepts multiple comma-separated values.", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff,aabbcc*", "aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, {"description": "Filter results by one or more port identifiers where the client has connected. Supports comma-separated values", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter results by one or more VLAN IDs. Supports comma-separated values", "in": "query", "name": "vlan", "schema": {"examples": ["1", "1,2"], "type": "string"}}, {"description": "Filter results by one or more IPv4 addresses. Supports comma-separated values", "in": "query", "name": "ip", "schema": {"examples": ["192.168.1.1", "192.168.1.1,192.168.1.2"], "type": "string"}}, {"description": "Filter results by manufacturer. Accepts multiple comma-separated values.", "in": "query", "name": "manufacture", "schema": {"examples": ["Unknown,GIFA"], "type": "string"}}, {"description": "Partial / full Client MAC address, hostname or username. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*ddeeff`) are not supported", "in": "query", "name": "text", "schema": {"type": "string"}}, {"description": "Filter results by NAC rule identifier", "in": "query", "name": "nacrule_id", "schema": {"type": "string"}}, {"description": "Filter results by DHCP hostname. Accepts multiple comma-separated values.", "in": "query", "name": "dhcp_hostname", "schema": {"examples": ["client-a,client-b"], "type": "string"}}, {"description": "Filter results by DHCP FQDN", "in": "query", "name": "dhcp_fqdn", "schema": {"type": "string"}}, {"description": "Filter results by DHCP client identifier. Accepts multiple comma-separated values.", "in": "query", "name": "dhcp_client_identifier", "schema": {"examples": ["MAC address a8f7d982288f,MAC address 5c5b351e120c"], "type": "string"}}, {"description": "DHCP Vendor Class Identifier. Accepts multiple comma-separated values.", "in": "query", "name": "dhcp_vendor_class_identifier", "schema": {"examples": ["Mist AP34-WW,Mist BT11-WW"], "type": "string"}}, {"description": "Filter results by DHCP request parameters. Accepts multiple comma-separated values.", "in": "query", "name": "dhcp_request_params", "schema": {"examples": ["1 121 3 6 12 15 28 42 43 180,1 3 6 12 15 28 42 43 180"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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}/wired_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 Wired client", "operationId": "reauthOrgDot1xWiredClient", "responses": {"200": {"$ref": "#/components/responses/ReauthWiredClient"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "reauthOrgDot1xWiredClient", "tags": ["Utilities LAN"]}}, "/api/v1/orgs/{org_id}/wlans": {"get": {"description": "Get List of Org Wlans", "operationId": "listOrgWlans", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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/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": "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": {"allow_ipv6_ndp": true, "allow_mdns": false, "allow_ssdp": false, "arp_filter": false, "band_steer": false, "band_steer_force_band5": false, "bands": ["24", "5"], "block_blacklist_clients": false, "bonjour": {"additional_vlan_ids": "10,20", "enabled": false, "services": {"airplay": {"radius_groups": ["teachers"], "scope": "same_ap"}}}, "client_limit_down": 1000, "client_limit_down_enabled": false, "client_limit_up": 512, "client_limit_up_enabled": false, "disable_11ax": false, "disable_ht_vht_rates": false, "disable_uapsd": false, "disable_v1_roam_notify": false, "disable_v2_roam_notify": false, "disable_wmm": false, "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, "hide_ssid": false, "hostname_ie": false, "ssid": "demo"}}}, "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\n\n#### Sponsor Email Template\nSponsor Email Template supports following template variables:\n\n| **Name** | **Description** |\n| --- | --- |\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| company | Renders value of the Company field |\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) |", "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/limit"}, {"$ref": "#/components/parameters/page"}], "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"], "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, "order": 1, "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/{wxrule_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/wxrule_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"], "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, "order": 1, "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/limit"}, {"$ref": "#/components/parameters/page"}], "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Start password recovery for an administrator account. This public endpoint does not require authentication. When the request is accepted, Mist sends an email containing a recovery link such as `https://manage.mist.com/verify/recover?token=:token`. If CAPTCHA is required, include the CAPTCHA response token and provider flavor in the request body.", "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"}}, "security": [], "summary": "recoverPassword", "tags": ["Admins Recover Password"]}}, "/api/v1/recover/verify/{token}": {"parameters": [{"$ref": "#/components/parameters/token"}], "post": {"description": "Verify a password recovery token from the recovery email. This public endpoint does not require authentication. When the token is valid, the user is authenticated for the recovery flow so the client can prompt for and submit a new password.", "operationId": "verifyRecoverPassword", "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"}}, "security": [], "summary": "verifyRecoverPassword", "tags": ["Admins Recover Password"]}}, "/api/v1/register": {"post": {"description": "Register a new administrator account and initial organization. This public endpoint does not require authentication. Mist sends a verification email containing a link such as `/verify/register?token={token}`; use [Verify Registration](/#operations/verifyRegistration) to complete registration with that token.\n\nUse [Get Registration Information](/#operations/getAdminRegistrationInfo) before submitting this request to determine whether CAPTCHA is required, which CAPTCHA provider to render, and which public site key to use. If CAPTCHA is required, include the provider response token in `recaptcha` and the provider name in `recaptcha_flavor`.", "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": "https://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/admin_invite"}}}, "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"}}, "security": [], "summary": "registerNewAdmin", "tags": ["Admins"]}}, "/api/v1/register/recaptcha": {"get": {"description": "Return the public CAPTCHA settings required for administrator registration. This public endpoint does not require authentication. Use the returned `flavor`, `required`, and `sitekey` values to render the correct CAPTCHA challenge before calling [Register New Admin](/#operations/registerNewAdmin).", "operationId": "getAdminRegistrationInfo", "parameters": [{"description": "Filter login settings by reCAPTCHA flavor. enum: `google`, `hcaptcha`", "in": "query", "name": "recaptcha_flavor", "schema": {"$ref": "#/components/schemas/recaptcha_flavor"}}], "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"}}, "security": [], "summary": "getAdminRegistrationInfo", "tags": ["Admins"]}}, "/api/v1/register/verify/{token}": {"parameters": [{"$ref": "#/components/parameters/token"}], "post": {"description": "Verify a new administrator registration using the token from the registration email. This public endpoint does not require authentication. A successful verification creates a login session and may also apply a pending invitation; the response indicates whether an invitation could not be applied automatically.", "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"}}, "security": [], "summary": "verifyRegistration", "tags": ["Admins"]}}, "/api/v1/self": {"delete": {"description": "To delete ones account and every associated with it. The effects:\n\nthe account would be deleted\nany orphaned Org (that only has this account as admin) will be deleted\nalong 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": {"value": {"email": "john.smith@mycorp.net", "first_name": "John", "last_name": "Smith", "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\nNote that the key is only available during creation time.", "operationId": "createApiToken", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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/login_failures": {"get": {"description": "Get a list of failed login attempts across all Orgs for the current admin", "operationId": "getSelfLoginFailures", "responses": {"200": {"$ref": "#/components/responses/LoginFailures"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSelfLoginFailures", "tags": ["Self Account"]}}, "/api/v1/self/logs": {"get": {"description": "Get List of change logs across all Orgs for current admin\nAudit logs records all administrative activities done by current admin across all orgs", "operationId": "listSelfAuditLogs", "parameters": [{"description": "Filter results by message text", "in": "query", "name": "message", "schema": {"examples": ["Created a new site"], "type": "string"}}, {"description": "Field used to sort results; a leading `-` indicates descending order. enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "in": "query", "name": "sort", "schema": {"$ref": "#/components/schemas/list_org_logs_sort"}}, {"$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/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": [{"description": "Callback URL to forward to after the OAuth login flow", "in": "query", "name": "forward", "schema": {"examples": ["https://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": {"value": {"code": "4/S9tegDeLkrYg0L9pWNXV4cgMVbbr3SR9t693A2kSHzw"}}}, "schema": {"$ref": "#/components/schemas/code_string"}}}, "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": "Secret response format. If `by`==`qrcode`, returns the secret as a QR code image. enum: `qrcode`", "in": "query", "name": "by", "schema": {"$ref": "#/components/schemas/mfa_secret_type"}}], "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": {"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\nWe require the user to verify that they actually own the email address they intend to change it to.\n\nAfter 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\n\nUpon 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\n\n**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": {"value": {"email": "new@mistsys.com"}}}, "schema": {"$ref": "#/components/schemas/email_string"}}}, "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/self/usage": {"get": {"description": "Get the status of the API usage for the current user or API Token", "operationId": "getSelfApiUsage", "responses": {"200": {"$ref": "#/components/responses/ApiUsage"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSelfApiUsage", "tags": ["Self Account"]}}, "/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": "Provides information about the site, including its name, address,\ntimezone, and associated templates. This endpoint is useful for retrieving\nthe current configuration and details of a specific site.", "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": "Updates the configuration and metadata for an existing site. \n\n\nThis endpoint allows modification of site properties including location details (address, coordinates, timezone), template associations (alarm, network, RF, security policy templates), site group memberships, and general information (name, notes).\n\n\nAll fields are optional and only provided fields will be updated.", "operationId": "updateSiteInfo", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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}/aamwprofiles/derived": {"get": {"description": "Get the list of derived Advanced Anti Malware Profile (SkyAtp) for a site", "operationId": "listSiteAAMWProfilesDerived", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/AvProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteAAMWProfilesDerived", "tags": ["Sites Advanced Anti Malware Profiles"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/alarms/ack": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Ack multiple Site Alarms", "operationId": "AckSiteMultipleAlarms", "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": "AckSiteMultipleAlarms", "tags": ["Sites Alarms"]}}, "/api/v1/sites/{site_id}/alarms/ack_all": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Ack all Site Alarms\n\n**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_string"}}}}, "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 alarms for a site, optionally grouped by the `distinct` field and filtered by time range. Use [Count Org Alarms](/#operations/countOrgAlarms) to count alarms across the organization.", "operationId": "countSiteAlarms", "parameters": [{"description": "Field used to group this count response. enum: `acked`, `group`, `severity`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/alarm_count_distinct"}}, {"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"}}, {"description": "Filter alarm results by whether the alarm has been acknowledged", "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/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": "countSiteAlarms", "tags": ["Sites Alarms"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/alarms/search": {"get": {"description": "Search alarms for a site with filters for alarm group, severity, type, acknowledgement state, acknowledgement admin, and time range. Use [Search Org Alarms](/#operations/searchOrgAlarms) to search alarms across the organization.", "operationId": "searchSiteAlarms", "parameters": [{"$ref": "#/components/parameters/alarm_group"}, {"$ref": "#/components/parameters/alarm_severity"}, {"description": "Filter alarms by alarm type. Accepts multiple values separated by comma. Use [List Alarm Definitions](/#operations/listAlarmDefinitions) to get the list of possible alarm types", "in": "query", "name": "type", "schema": {"examples": ["infra_dhcp_failure,missing_vlan"], "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"}}, {"description": "Filter alarm results by whether the alarm has been acknowledged", "in": "query", "name": "acked", "schema": {"type": "boolean"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "unackSiteMultipleAlarms", "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": "unackSiteMultipleAlarms", "tags": ["Sites Alarms"]}}, "/api/v1/sites/{site_id}/alarms/unack_all": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Unack all Site Alarms\n\n**N.B.**: Batch size for multiple alarm ack and unack has to be less or or equal to 1000.", "operationId": "unackSiteAllAlarms", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"note": "maintenance window"}}}, "schema": {"$ref": "#/components/schemas/note_string"}}}, "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": "unackSiteAllAlarms", "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_string"}}}, "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_string"}}}, "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}/analyze_spectrum": {"get": {"description": "Get the running spectrum analysis for a site", "operationId": "getSiteRunningSpectrumAnalysis", "responses": {"200": {"$ref": "#/components/responses/RunningSpectrumAnalysis"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteRunningSpectrumAnalysis", "tags": ["Sites Spectrum Analysis"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Initiate a spectrum analysis for a site\n\n\nThe output will be available through websocket. As there can be multiple command\nissued against the same device at the same time and the output all goes through\nthe same websocket stream, session is introduced for demux.\n\n\n\n#### Subscribe to Device Command outputs\n\n`WS /api-ws/v1/stream`\n\n\n```json { \"subscribe\": \"/sites/{site_id}/analyze_spectrum\" } ```\n\n#### Example output from ws stream\n\n```json\n{\n \"event\": \"data\",\n \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/analyze_spectrum\",\n \"data\": {\n \"session\": \"session_id\",\n\n \"fft_samples\": [\n {\n \"frequency\": 2437.0,\n \"rssi / signal ?\": -93\n },\n ...\n ],\n\n \"channel_usage\": [\n {\n \"channel\": 36,\n \"noise\": -78,\n\n \"wifi\": 0.13,\n \"non_wifi\": 0.08\n },\n ...\n ]\n }\n} \n```\n", "operationId": "initiateSiteAnalyzeSpectrum", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"band": "5", "channels": [36, 40, 44, 48], "device_id": "00000000-0000-0000-1000-5c5b35bd76bb", "duration": 600, "format": "stream"}}}, "schema": {"$ref": "#/components/schemas/spectrum_analysis"}}}, "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": "initiateSiteAnalyzeSpectrum", "tags": ["Sites Spectrum Analysis"]}}, "/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": "List Site Anomaly Events", "operationId": "listSiteAnomalyEvents", "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": "listSiteAnomalyEvents", "tags": ["Sites Anomaly"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/metric"}]}, "/api/v1/sites/{site_id}/apply_auto_map_assignment": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Apply (accept) auto map assignment results for a site. Devices are associated with their assigned maps. Omit `map_ids` or provide an empty list to accept all pending assignments; provide specific `map_ids` for a partial accept.", "operationId": "applySiteAutoMapAssignment", "requestBody": {"content": {"application/json": {"examples": {"Accept_All": {"value": {}}, "Accept_Specific_Maps": {"value": {"map_ids": ["d3c42998-9012-4859-9743-6b9bee475309", "f7a21456-7891-4abc-def0-123456789abc"]}}}, "schema": {"$ref": "#/components/schemas/auto_map_assignment_request"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AutoMapAssignmentApply"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "applySiteAutoMapAssignment", "tags": ["Sites Auto Map Assignment"]}}, "/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 the list of derived AP Templates for a site", "operationId": "listSiteApTemplatesDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"type": "boolean"}}], "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": "listSiteApTemplatesDerived", "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": "createSiteAssetFilter", "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": "createSiteAssetFilter", "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": "List assets for a site. Use [List Org Assets](/#operations/listOrgAssets) to retrieve assets across the organization.", "operationId": "listSiteAssets", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "Import 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": "Whether to replace existing assets with the same MAC address during import. enum: `False`, `True`", "in": "query", "name": "upsert", "schema": {"$ref": "#/components/schemas/import_site_assets_upsert"}}], "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}/assets/{asset_id}/image": {"delete": {"description": "Delete Site Asset Image", "operationId": "deleteSiteAssetImage", "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": "deleteSiteAssetImage", "tags": ["Sites Assets"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/asset_id"}], "post": {"description": "Attach Image to Site Asset", "operationId": "attachSiteAssetImage", "requestBody": {"content": {"multipart/form-data": {"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": "attachSiteAssetImage", "tags": ["Sites Assets"]}}, "/api/v1/sites/{site_id}/auto_map_assignment": {"delete": {"description": "Cancel an in-progress auto map assignment operation for the site. Validates that auto map assignment is currently running, notifies all APs to fetch new configuration, and sends a cancel command to the orchestration service.", "operationId": "cancelSiteAutoMapAssignment", "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"description": "Auto map assignment not in progress"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "cancelSiteAutoMapAssignment", "tags": ["Sites Auto Map Assignment"]}, "get": {"description": "Get the current status of auto map assignment for the site.", "operationId": "getSiteAutoMapAssignmentStatus", "responses": {"200": {"$ref": "#/components/responses/AutoMapAssignmentInfo"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteAutoMapAssignmentStatus", "tags": ["Sites Auto Map Assignment"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Start the auto map assignment process for a site. The service automatically assigns APs to maps based on BLE ranging data and requires at least 3 APs with compatible firmware and model support for BLE.\n\nRepeated POST requests while a site assignment is still running will be rejected.", "operationId": "startSiteAutoMapAssignment", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/auto_map_assignment"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AutoMapAssignment"}, "400": {"description": "Auto map assignment already in progress"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "startSiteAutoMapAssignment", "tags": ["Sites Auto Map Assignment"]}}, "/api/v1/sites/{site_id}/avprofiles/derived": {"get": {"description": "Get the list of derived Antivirus Profiles for a site", "operationId": "listSiteAntivirusProfilesDerived", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/AvProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteAntivirusProfilesDerived", "tags": ["Sites Antivirus Profiles"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/beacons": {"get": {"description": "Get List of Site Beacons", "operationId": "listSiteBeacons", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"value": {"eddystone_instance": "string", "eddystone_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "ibeacon_minor": 1, "ibeacon_uuid": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "mac": "string", "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": "deleteSiteBeacon", "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": "deleteSiteBeacon", "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": "updateSiteBeacon", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"eddystone_instance": "string", "eddystone_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "ibeacon_minor": 1, "ibeacon_uuid": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "mac": "string", "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": "updateSiteBeacon", "tags": ["Sites Beacons"]}}, "/api/v1/sites/{site_id}/clear_auto_map_assignment": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Clear (reject) auto map assignment results for a site without applying them. The cached assignment results are cleared. Omit `map_ids` or provide an empty list to reject all pending assignments; provide specific `map_ids` for a partial reject.", "operationId": "clearSiteAutoMapAssignment", "requestBody": {"content": {"application/json": {"examples": {"Clear_All": {"value": {}}, "Clear_Specific_Maps": {"value": {"map_ids": ["d3c42998-9012-4859-9743-6b9bee475309", "f7a21456-7891-4abc-def0-123456789abc"]}}}, "schema": {"$ref": "#/components/schemas/auto_map_assignment_request"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/AutoMapAssignmentClear"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "clearSiteAutoMapAssignment", "tags": ["Sites Auto Map Assignment"]}}, "/api/v1/sites/{site_id}/clients/count": {"get": {"description": "Count wireless clients for a site, optionally grouped by the `distinct` field and filtered by client attributes and time range. Use [Count Org Wireless Clients](/#operations/countOrgWirelessClients) to count wireless clients across the organization.", "operationId": "countSiteWirelessClients", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`", "example": "hostname", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_clients_count_distinct"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/ip"}, {"description": "Filter client results by VLAN ID", "in": "query", "name": "vlan", "schema": {"type": "string"}}, {"description": "Filter results by hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter client results by operating system", "in": "query", "name": "os", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter client results by device type", "in": "query", "name": "device", "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": "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": {"examples": {"Example": {"value": ["5c5b350e0001", "5c5b350e0003"]}}, "schema": {"$ref": "#/components/schemas/strings"}}}, "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 wireless client events for a site, optionally grouped by the `distinct` field and filtered by event attributes and time range. Use [Count Org Wireless Client Events](/#operations/countOrgWirelessClientEvents) to count wireless client events across the organization.", "operationId": "countSiteWirelessClientEvents", "parameters": [{"description": "Field used to group this count response. enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`", "example": "type", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_client_events_count_distinct"}}, {"$ref": "#/components/parameters/client_event_type"}, {"description": "Reason code filter for association and disassociation events", "in": "query", "name": "reason_code", "schema": {"type": "integer"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_proto"}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_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/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": "Search wireless client events for a site with filters for event type, AP, SSID, WLAN, radio band, and time range. Use [Search Org Wireless Client Events](/#operations/searchOrgWirelessClientEvents) to search wireless client events across the organization.", "operationId": "searchSiteWirelessClientEvents", "parameters": [{"$ref": "#/components/parameters/client_event_type"}, {"description": "Reason code filter for association and disassociation events", "in": "query", "name": "reason_code", "schema": {"type": "integer"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_proto"}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"type": "string"}}, {"description": "Filter results by NAC rule identifier", "in": "query", "name": "nacrule_id", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 connected to a site with filters for client identity, AP, SSID, VLAN, radio band, and time range. Fuzzy matching with `*` is supported on `mac`, `hostname`, `device`, `os`, and `model`, for example `/clients/search?device=Mac*&hostname=jerry`. Use [Search Org Wireless Clients](/#operations/searchOrgWirelessClients) to search wireless clients across the organization.", "operationId": "searchSiteWirelessClients", "parameters": [{"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Comma separated list of Radio band (e.g. `24,5`). enum: `24`, `5`, `6`", "in": "query", "name": "band", "schema": {"examples": ["5"], "type": "string"}}, {"description": "Comma separated list of Device type (e.g. `Mac,iPhone`). Case sensitive", "in": "query", "name": "device", "schema": {"examples": ["iPhone"], "type": "string"}}, {"$ref": "#/components/parameters/partial_filter_hostname_client"}, {"$ref": "#/components/parameters/partial_filter_ip_client"}, {"$ref": "#/components/parameters/partial_filter_mac_client"}, {"description": "Only available for clients running the Marvis Client app, model, e.g. \"MBP 15 late 2013\", 6, 6s, \"8+ GSM\"", "in": "query", "name": "model", "schema": {"examples": ["iPhone 8"], "type": "string"}}, {"description": "Only available for clients running the Marvis Client app, os, e.g. Sierra, Yosemite, Windows 10", "in": "query", "name": "os", "schema": {"examples": ["Windows 10"], "type": "string"}}, {"$ref": "#/components/parameters/psk_id_query"}, {"description": "Only available for clients using PPSK authentication, the Name of the PSK", "in": "query", "name": "psk_name", "schema": {"examples": ["MyPPSK"], "type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"examples": ["MySSID"], "type": "string"}}, {"description": "Partial / full MAC address, hostname, username, psk_name or ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*client`) are not supported", "in": "query", "name": "text", "schema": {"examples": ["5c5b530"], "type": "string"}}, {"$ref": "#/components/parameters/partial_search_username"}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"examples": ["10"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 wireless client sessions for a site, optionally grouped by the `distinct` field and filtered by AP, SSID, WLAN, client attributes, and time range. Use [Count Org Wireless Client Sessions](/#operations/countOrgWirelessClientsSessions) to count wireless client sessions across the organization.", "operationId": "countSiteWirelessClientSessions", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `client_family`, `client_manufacture`, `client_model`, `client_os`, `mac`, `ssid`, `wlan_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_client_sessions_count_distinct"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "E.g. \"Mac\", \"iPhone\", \"Apple watch\"", "in": "query", "name": "client_family", "schema": {"type": "string"}}, {"description": "Filter results by client manufacturer, e.g. \"Apple\"", "in": "query", "name": "client_manufacture", "schema": {"type": "string"}}, {"description": "Filter results by client model, e.g. \"8+\", \"XS\"", "in": "query", "name": "client_model", "schema": {"type": "string"}}, {"description": "E.g. \"Mojave\", \"Windows 10\", \"Linux\"", "in": "query", "name": "client_os", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_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/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 wireless client sessions for a site with filters for AP, SSID, WLAN, client attributes, PSK, and time range. Use [Search Org Wireless Client Sessions](/#operations/searchOrgWirelessClientSessions) to search wireless client sessions across the organization.", "operationId": "searchSiteWirelessClientSessions", "parameters": [{"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "E.g. \"Mac\", \"iPhone\", \"Apple watch\"", "in": "query", "name": "client_family", "schema": {"type": "string"}}, {"description": "Filter results by client manufacturer, e.g. \"Apple\"", "in": "query", "name": "client_manufacture", "schema": {"type": "string"}}, {"description": "Filter results by client model, e.g. \"8+\", \"XS\"", "in": "query", "name": "client_model", "schema": {"type": "string"}}, {"description": "Filter results by client username", "in": "query", "name": "client_username", "schema": {"type": "string"}}, {"description": "E.g. \"Mojave\", \"Windows 10\", \"Linux\"", "in": "query", "name": "client_os", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/psk_id_query"}, {"description": "Filter results by 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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Wireless 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": "Filter results by type, e.g. MARVIS_EVENT_CLIENT_DHCP_STUCK", "in": "query", "name": "type", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/dot11_proto"}, {"$ref": "#/components/parameters/dot11_band"}, {"description": "Filter available versions by release channel", "in": "query", "name": "channel", "schema": {"type": "string"}}, {"description": "Filter results by WLAN identifier", "in": "query", "name": "wlan_id", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "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/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": "Get the list of derived Device Profiles for a 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": "List devices in a site. Use [List Org Devices](/#operations/listOrgDevices) to retrieve devices across the organization, or [Search Org Devices](/#operations/searchOrgDevices) when filters are needed.", "operationId": "listSiteDevices", "parameters": [{"description": "Filter results by type", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_with_all"}}, {"$ref": "#/components/parameters/name"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listSiteDeviceRadioChannels", "parameters": [{"description": "Country code for the site (for AP config generation), in [two-character](https://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": "listSiteDeviceRadioChannels", "tags": ["Sites Devices - Wireless"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/devices/clear_pending_version": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Clear device pending fw version (Available on Junos OS EX2300-, EX3400-, EX4000-, EX4100-, EX4400- devices)", "operationId": "clearSiteMultipleDevicePendingVersion", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"device_ids": ["00000000-0000-0000-1000-5c5b35584a6f", "00000000-0000-0000-1000-5c5b350ea3b3"]}}}, "schema": {"$ref": "#/components/schemas/devices_ids"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"content": {"application/json": {"examples": {"cannot-clear-pending-version-on-an-offline-device": {"value": "cannot clear pending version on an offline device"}, "clear-pending-version-not-supported": {"value": "clear-pending-fw-version 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": "clearSiteMultipleDevicePendingVersion", "tags": ["Utilities LAN"]}}, "/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": [{"description": "Field used to group this count response", "in": "query", "name": "distinct", "schema": {"type": "string"}}, {"description": "Filter results by 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": "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": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"description": "Filter results by 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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "Count devices for a site, optionally grouped by the `distinct` field and filtered by device inventory attributes and time range. Use [Count Org Devices](/#operations/countOrgDevices) to count devices across the organization.", "operationId": "countSiteDevices", "parameters": [{"description": "Field used to group this count response. enum: `hostname`, `lldp_mgmt_addr`, `lldp_port_id`, `lldp_system_desc`, `lldp_system_name`, `map_id`, `model`, `mxedge_id`, `mxtunnel_status`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_devices_count_distinct"}}, {"description": "Filter results by hostname", "in": "query", "name": "hostname", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"description": "Filter AP results by Mist Tunnel status", "in": "query", "name": "mxtunnel_status", "schema": {"type": "string"}}, {"description": "Filter results by Mist Edge identifier", "in": "query", "name": "mxedge_id", "schema": {"type": "string"}}, {"description": "Filter AP results by LLDP system name", "in": "query", "name": "lldp_system_name", "schema": {"type": "string"}}, {"description": "Filter AP results by LLDP system description", "in": "query", "name": "lldp_system_desc", "schema": {"type": "string"}}, {"description": "Filter AP results by LLDP port identifier", "in": "query", "name": "lldp_port_id", "schema": {"type": "string"}}, {"description": "Filter AP results by LLDP management IP address", "in": "query", "name": "lldp_mgmt_addr", "schema": {"type": "string"}}, {"description": "Filter results by map identifier", "in": "query", "name": "map_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/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": "Count device events for a site, optionally grouped by the `distinct` field and filtered by event attributes and time range. Use [Count Org Device Events](/#operations/countOrgDeviceEvents) to count device events across the organization.", "operationId": "countSiteDeviceEvents", "parameters": [{"description": "Field used to group this count response. enum: `mac`, `model`, `type`, `type_code`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_device_events_count_distinct"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/device_event_type"}, {"description": "Filter results by event type code", "in": "query", "name": "type_code", "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": "countSiteDeviceEvents", "tags": ["Sites Devices"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/devices/events/search": {"get": {"description": "Search device events for a site with filters for MAC address, model, event type, message text, and time range. Use [Search Org Device Events](/#operations/searchOrgDeviceEvents) to search device events across the organization.", "operationId": "searchSiteDeviceEvents", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by event message text", "in": "query", "name": "text", "schema": {"examples": ["Device connected"], "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"}}, {"description": "Keyword to include events from additional indices (e.g. ext_tunnel for prisma events)", "in": "query", "name": "includes", "schema": {"examples": ["ext_tunnel"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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/gbp_tag": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Set GBP Tag for multiple devices", "operationId": "setSiteDevicesGbpTag", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/devices_gbp_tag"}}}, "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": "setSiteDevicesGbpTag", "tags": ["Sites Devices"]}}, "/api/v1/sites/{site_id}/devices/import": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Import Information for Multiple Devices\n\nCSV format:\n```csv\nmac,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\n5c5b53010101,\"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\n```", "operationId": "importSiteDevices", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ap_import_json"}}, "multipart/form-data": {"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": [{"description": "Field used to group this count response. enum: `mac`, `name`, `site_id`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_device_last_config_count_distinct"}}, {"$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": "countSiteDeviceLastConfig", "tags": ["Sites Devices"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/devices/last_config/search": {"get": {"description": "Search last known device configuration records for a site with filters for device type, MAC address, name, software version, certificate expiry, and time range. Use [Search Org Device Last Configs](/#operations/searchOrgDeviceLastConfigs) to search last known device configuration records across the organization.", "operationId": "searchSiteDeviceLastConfigs", "parameters": [{"description": "Duration for expiring cert queries (format: 2d/3h/172800 seconds)", "in": "query", "name": "cert_expiry_duration", "schema": {"examples": ["2d"], "type": "string"}}, {"description": "Filter results by device type. enum: `ap`, `gateway`, `switch`, `mxedge`", "in": "query", "name": "device_type", "schema": {"$ref": "#/components/schemas/last_config_device_type"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"description": "Filter results by name", "in": "query", "name": "name", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Devices to reprovision itself again.", "operationId": "reprovisionSiteAllDevices", "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": "reprovisionSiteAllDevices", "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": {"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": "restartSiteMultipleDevices", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"device_ids": ["00000000-0000-0000-1000-5c5b35584a6f", "00000000-0000-0000-1000-5c5b350ea3b3"]}}, "Example2": {"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": "restartSiteMultipleDevices", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/restore_backup_version": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Restore device backup fw version (Available on Junos OS EX4000-, EX4100-, EX4400- devices)", "operationId": "restoreSiteMultipleDeviceBackupVersion", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"device_ids": ["00000000-0000-0000-1000-5c5b35584a6f", "00000000-0000-0000-1000-5c5b350ea3b3"]}}}, "schema": {"$ref": "#/components/schemas/devices_ids"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"content": {"application/json": {"examples": {"cannot-restore-backup-version-on-an-offline-device": {"value": "snapshot not supported"}, "restore-backup-fw-version-not-supported": {"value": "cannot snapshot an offline device"}}, "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": "restoreSiteMultipleDeviceBackupVersion", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/search": {"get": {"description": "Search devices in a site with filters for device type, identifiers, model, software version, radio settings, LLDP details, and other inventory attributes. Use [Search Org Devices](/#operations/searchOrgDevices) to search devices across the organization.", "operationId": "searchSiteDevices", "parameters": [{"description": "When `type`==`ap`, Channel of band_24", "in": "query", "name": "band_24_channel", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Channel of band_5", "in": "query", "name": "band_5_channel", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Channel of band_6", "in": "query", "name": "band_6_channel", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_24", "in": "query", "name": "band_24_bandwidth", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_5", "in": "query", "name": "band_5_bandwidth", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Bandwidth of band_6", "in": "query", "name": "band_6_bandwidth", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Power of band_24", "in": "query", "name": "band_24_power", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Power of band_5", "in": "query", "name": "band_5_power", "schema": {"type": "integer"}}, {"description": "When `type`==`ap`, Power of band_6", "in": "query", "name": "band_6_power", "schema": {"type": "integer"}}, {"description": "When `type`==`gateway`, true / false", "in": "query", "name": "clustered", "schema": {"type": "boolean"}}, {"description": "When `type`==`ap`, Port speed of eth0", "in": "query", "name": "eth0_port_speed", "schema": {"examples": [100, 1000], "type": "integer"}}, {"description": "When `type`==`switch`, EVPN topology id", "in": "query", "name": "evpntopo_id", "schema": {"format": "uuid", "type": "string"}}, {"$ref": "#/components/parameters/partial_filter_ext_ip"}, {"$ref": "#/components/parameters/partial_filter_hostname_device"}, {"$ref": "#/components/parameters/partial_filter_ip_device"}, {"description": "When `type`==`switch` or `type`==`gateway`, last configuration status", "in": "query", "name": "last_config_status", "schema": {"examples": ["success"], "type": "string"}}, {"description": "Last hostname of the device.", "in": "query", "name": "last_hostname", "schema": {"type": "string"}}, {"description": "When `type`==`ap`, LLDP management IP address", "in": "query", "name": "lldp_mgmt_addr", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/partial_filter_lldp_port_id"}, {"$ref": "#/components/parameters/partial_filter_lldp_system_desc"}, {"$ref": "#/components/parameters/partial_filter_lldp_system_name"}, {"$ref": "#/components/parameters/partial_filter_mac_device"}, {"$ref": "#/components/parameters/partial_filter_model"}, {"description": "When `type`==`ap`, Mist Edge id, if AP is connecting to a Mist Edge", "in": "query", "name": "mxedge_id", "schema": {"format": "uuid", "type": "string"}}, {"description": "When `type`==`ap`, Comma separated list of Mist Edge id, if AP is connecting to a Mist Edge", "in": "query", "name": "mxedge_ids", "schema": {"type": "string"}}, {"description": "When `type`==`ap`, Mist Tunnel status used to filter results. enum: `down`, `up`", "in": "query", "name": "mxtunnel_status", "schema": {"$ref": "#/components/schemas/search_site_devices_mxtunnel_status"}}, {"description": "When `type`==`gateway`. enum: `node0`, `node1`", "in": "query", "name": "node", "schema": {"$ref": "#/components/schemas/ha_cluster_node_enum"}}, {"description": "When `type`==`gateway`, node0 MAC address", "in": "query", "name": "node0_mac", "schema": {"type": "string"}}, {"description": "When `type`==`gateway`, node1 MAC address", "in": "query", "name": "node1_mac", "schema": {"type": "string"}}, {"description": "When `type`==`ap`, whether the AP is power constrained", "in": "query", "name": "power_constrained", "schema": {"type": "boolean"}}, {"description": "When `type`==`switch` or `type`==`gateway`, Key-value pairs where the key\nis the RADIUS server address and the value contains authentication statistics:\n * (string): IP address of the RADIUS server as the key\n * `auth_accepts` (long): Number of accepted authentication requests\n * `auth_rejects` (long): Number of rejected authentication requests\n * `auth_timeouts` (long): Number of authentication timeouts\n * `auth_server_status` (string): Status of the server. Possible values: `up`, `down`, `unreachable`", "in": "query", "name": "radius_stats", "schema": {"type": "string"}}, {"description": "Whether to return device stats", "in": "query", "name": "stats", "schema": {"default": false, "type": "boolean"}}, {"description": "When `type`==`gateway` (SSR only), version of 128T agent", "in": "query", "name": "t128agent_version", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/device_type"}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Field used to sort results; a leading `-` indicates descending order. enum: `mac`, `model`, `sku`, `timestamp`", "in": "query", "name": "sort", "schema": {"$ref": "#/components/schemas/search_site_devices_sort"}}, {"description": "Field used to sort results in descending order. enum: `mac`, `model`, `sku`, `timestamp`", "in": "query", "name": "desc_sort", "schema": {"$ref": "#/components/schemas/search_site_devices_desc_sort"}}, {"$ref": "#/components/parameters/search_after"}], "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\n\nNote that only the devices that are connected will be restarted.", "operationId": "sendSiteDevicesArbitraryBleBeacon", "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": "sendSiteDevicesArbitraryBleBeacon", "tags": ["Utilities Location"]}}, "/api/v1/sites/{site_id}/devices/upgrade": {"get": {"description": "List device upgrade operations for a site, optionally filtered by upgrade status. Use [List Org Device Upgrades](/#operations/listOrgDeviceUpgrades) to retrieve device upgrade operations across the organization.", "operationId": "listSiteDeviceUpgrades", "parameters": [{"description": "Filter results by status. enum: `cancelled`, `completed`, `created`, `downloaded`, `downloading`, `failed`, `queued`, `upgrading`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/upgrade_device_status"}}], "responses": {"200": {"$ref": "#/components/responses/UpgradeSiteDevicesList"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteDeviceUpgrades", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Upgrade Site Device\n\n**Note**: this call doesn\u2019t guarantee the devices to be upgraded right away (they may be offline)", "operationId": "upgradeSiteDevices", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/upgrade_site_devices"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/UpgradeId"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "upgradeSiteDevices", "tags": ["Utilities Upgrade"]}}, "/api/v1/sites/{site_id}/devices/upgrade/{upgrade_id}": {"get": {"description": "Get Site Device Upgrade", "operationId": "getSiteDeviceUpgrade", "responses": {"200": {"$ref": "#/components/responses/SiteDeviceUpgrade"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteDeviceUpgrade", "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 on Multiple Device", "operationId": "upgradeSiteDevicesBios", "requestBody": {"content": {"application/json": {"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": "upgradeSiteDevicesBios", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/upgrade_fpga": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Upgrade Bios on Multiple Device", "operationId": "upgradeSiteDevicesFpga", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/upgrade_fpga_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": "upgradeSiteDevicesFpga", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/versions": {"get": {"description": "List firmware versions available for devices in a site, optionally filtered by device type and model. Use [List Org Available Device Versions](/#operations/listOrgAvailableDeviceVersions) to retrieve available device versions across the organization.", "operationId": "listSiteAvailableDeviceVersions", "parameters": [{"description": "Filter results by type. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, {"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": {"value": {"password": "NUKETHESITE"}}}, "schema": {"$ref": "#/components/schemas/utils_zeroize_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}": {"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 commands 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 Switch/Gateway.\n\n **Note:** Ports starting with vme, ae, irb, and HA control ports (for SSR only) are not supported\n\nThe output will be available through websocket. As there can be multiple commands 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": "bounceDevicePort", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ports": ["ge-0/0/0", "ge-0/0/1"]}}}, "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": "bounceDevicePort", "tags": ["Utilities Common"]}}, "/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 commands 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": {"value": {"port": "ge-0/0/0"}}}, "schema": {"$ref": "#/components/schemas/utils_cable_tests"}}}}, "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 'reachability' of the RADIUS server. \n\nUtilize Juniper EX switch(to which an AP is connected to) radius test capabilities to get details on the RADIUS Server 'availability'.\n\n\n\n#### Subscribe to Device Command outputs\n\n`WS /api-ws/v1/stream`\n\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n\n#### Example output from ws stream\n\n```json\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/00000000-0000-0000-1000-2093390b3580/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/2093390b3580/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"6043daff-884e-48bc-aa9a-810d268aceb1\\\", \\\"raw\\\": \\\" Reason : fail\\\"}}\"\n}\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/00000000-0000-0000-1000-2093390b3580/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/2093390b3580/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"6043daff-884e-48bc-aa9a-810d268aceb1\\\", \\\"raw\\\": \\\" Test complete. Exiting\\\"}}\"\n}\n```", "operationId": "startSiteSwitchRadiusSyntheticTest", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"password": "string", "profile": "dot1x", "user": "string"}}}, "schema": {"$ref": "#/components/schemas/synthetictest_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": ["Sites 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 ARP cache for SSR, SRX and Switch\n\nClear the entire ARP cache or a subset if arguments are provided.\n\n*Note*: port_id is optional if neither vlan nor ip is specified", "operationId": "clearSiteSsrArpCache", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_clear_arp"}}}}, "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": "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": {"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": "clearBpduErrorsFromPortsOnSwitch", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_clear_bpdu"}}}}, "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"description": "Ports not specified"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "clearBpduErrorsFromPortsOnSwitch", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/clear_dot1x": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Clear Dot1x Session. The output will be available through websocket.", "operationId": "clearSiteDeviceDot1xSession", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ports": ["ge-0/0/0"]}}}, "schema": {"$ref": "#/components/schemas/clear_dot1x_session"}}}, "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": "clearSiteDeviceDot1xSession", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/clear_mac_table": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Clear MAC Table from the Device.\n\nThe output will be available through websocket. As there can be multiple commands 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": "clearSiteDeviceMacTable", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_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": "clearSiteDeviceMacTable", "tags": ["Utilities Common"]}}, "/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": {"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}/clear_pending_version": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Clear device pending fw version (Available on Junos OS EX2300-, EX3400-, EX4000-, EX4100-, EX4400- devices)", "operationId": "clearSiteDevicePendingVersion", "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"content": {"application/json": {"examples": {"cannot-clear-pending-version-on-an-offline-device": {"value": "cannot clear pending version on an offline device"}, "clear-pending-version-not-supported": {"value": "clear-pending-fw-version 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": "clearSiteDevicePendingVersion", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/clear_policy_hit_count": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Clear application policy hit counts for the specified policy.", "operationId": "clearSiteDevicePolicyHitCount", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"policy_name": "http"}}}, "schema": {"$ref": "#/components/schemas/clear_policy_hit_count"}}}}, "responses": {"200": {"$ref": "#/components/responses/WebsocketSessionWithUrl"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "clearSiteDevicePolicyHitCount", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/clear_session": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Clear session", "operationId": "clearSiteDeviceSession", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"port_id": "ge-0/0/1.10"}}}, "schema": {"$ref": "#/components/schemas/utils_clear_session"}}}}, "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": "clearSiteDeviceSession", "tags": ["Utilities WAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/config_cmd": {"get": {"description": "Get Config CLI Commands\nFor 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.\n\nOnce 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, "type": "boolean"}}], "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"]}, "get": {"description": "Delete HA Cluster", "operationId": "GetSiteDeviceHaClusterNode", "responses": {"200": {"$ref": "#/components/responses/GatewayCluster"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "GetSiteDeviceHaClusterNode", "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\n4. 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\n2. 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\nFrom 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)\n3. 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)\n3. 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 enable 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\n6. 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#### 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\n3. 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 enable 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\n6. 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\n6. 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\nUsually 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": {"value": {"nodes": [{"mac": "aff827549235"}, {"mac": "8396cd006c8c"}]}}}, "schema": {"$ref": "#/components/schemas/gateway_cluster"}}}}, "responses": {"200": {"$ref": "#/components/responses/GatewayCluster"}, "400": {"$ref": "#/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"]}}, "/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": {"$ref": "#/components/schemas/device_iot_config"}}}, "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": "API Calls delete all the existing port config local overrides, and reapply the configured planed at the device level \n(with site / template heritance).", "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": "API Calls to add port config local overrides. This can be used by Switch Port Operators or Helpdesk administrators\nto change a Switch Port configuration without having to change the switch configuration.\n\n\nThe local overrides configured for the switchports with `no_local_overwrite`==`true` won't be applied to the switch configuration. \n\n\n> NOTE:\n>\n> When using the API Call, it is required to put send all overrides in the PUT request Payload, even the existing once. \n>\n> The current overrides can be retrieved with the API Call [Get Site Device](/#operations/getSiteDevice). The local overrides will show up separately from the `port_config` in the `local_port_config` so it can be easily identified (and cleared)", "operationId": "updateSiteLocalSwitchPortConfig", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"ge-0/0/0-1": {"poe_disabled": true, "usage": "iot"}}}}, "schema": {"$ref": "#/components/schemas/local_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": "### Access Points\nLocate an Access Point by blinking it's LED.\nIt is a persisted state that has to be stopped by calling Stop Locating API\n\n### Switches\nLocate a Switch by blinking all port LEDs. \nBy default, request is sent to `master` switch and LEDs will keep flashing for 5 minutes.\nIn case of virtual chassis (VC) the desired member mac has to be passed in the request payload. \nAt anypoint, only one VC member can be requested to flash the LED. \nTo stop LED flashing before the duration ends /unlocate API request can be made. \nIf /unlocate API is not called LED will continue to flash on device for the given duration. \nDefault duration is 5 minutes and 120 minutes is the maximum.", "operationId": "startSiteLocateDevice", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/locate_switch"}}}}, "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 Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/monitor_traffic": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Monitor traffic on switches and SRX.\n * JUNOS uses cmd \"monitor interface \" to monitor traffic on particular \n * JUNOS uses cmd \"monitor interface traffic\" to monitor traffic on all ports", "operationId": "monitorSiteDeviceTraffic", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_monitor_traffic"}}}}, "responses": {"200": {"$ref": "#/components/responses/WebsocketSessionWithUrl"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "monitorSiteDeviceTraffic", "tags": ["Utilities Common"]}}, "/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 commands 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": {"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 correct 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.\n\n\nThe output will be available through websocket.\n\nAs there can be multiple commands issued against the same Device at the same\ntime and the output all goes through the same websocket stream, session is\nintroduced for demux.\n\n\n\n#### Subscribe to Device Command outputs\n\n\n`WS /api-ws/v1/stream`\n\n\n```json\n\n{ \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\" }\n\n```\n\n\n\n#### Example output from ws stream\n\n\n```json\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/00000000-0000-0000-1000-0200010edbca/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/0200010edbca/cmd\\\",\\\"data\\\": {\\\"session\\\": \\\"356b2150-7307-4165-8411-52794c1ee8b0\\\",\\\"raw\\\": \\\"Releasing dhcp...\\\"}}\"\n}\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-3ba4-4cf5-8af2-a8d7b85087ac/devices/00000000-0000-0000-1000-0200010edbca/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/0200010edbca/cmd\\\",\\\"data\\\": {\\\"session\\\": \\\"356b2150-7307-4165-8411-52794c1ee8b0\\\",\\\"raw\\\": \\\"Successfully released DHCP lease.\\\"}}\"\n}\n```", "operationId": "releaseSiteSsrDhcpLease", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"port_id": "ge-0/0/1.10"}}}, "schema": {"$ref": "#/components/schemas/utils_release_dhcp"}}}}, "responses": {"200": {"$ref": "#/components/responses/WebsocketSession"}, "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}/release_dhcp_leases": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Releases an active DHCP lease.", "operationId": "releaseSiteDeviceDhcpLease", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"port_id": "ge-0/0/1.10"}}}, "schema": {"$ref": "#/components/schemas/utils_release_dhcp_leases"}}}}, "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": "releaseSiteDeviceDhcpLease", "tags": ["Utilities Common"]}}, "/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 something 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": {"value": {"root_password": "ef8070ef8f924edb592e1819ed64b31172ab8de9d5cde75d3f46acd9506202ab9b1cbb97e381c5aa11037f17e5ed7b4b609461cd813d944670549d410ef82f2e"}}}, "schema": {"$ref": "#/components/schemas/root_password_string"}}}, "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.\n\nThe output will be available through websocket. As there can be multiple commands 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}/restore_backup_version": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Restore device backup fw version (Available on Junos OS EX4000-, EX4100-, EX4400- devices)", "operationId": "restoreSiteDeviceBackupVersion", "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"content": {"application/json": {"examples": {"cannot-restore-backup-version-on-an-offline-device": {"value": "cannot restore backup version on an offline device"}, "restore-backup-fw-version-not-supported": {"value": "restore-backup-fw-version 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": "restoreSiteDeviceBackupVersion", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/run_top": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Run top command on switches and SRX. The output will be available through websocket. \n\nAs there can be multiple commands 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```", "operationId": "runSiteSrxTopCommand", "responses": {"200": {"$ref": "#/components/responses/WebsocketSessionWithUrl"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "runSiteSrxTopCommand", "tags": ["Utilities WAN"]}}, "/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": {"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}/set_vc_port_mode": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Change VCP port mode\n\n\nSome switch model allows changing VCP port behaviors, e.g. - use them as regular network ports - change vcp protocol Note, this command will reboot the switch", "operationId": "changeSiteSwitchVcPortMode", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"mode": "network"}}}, "schema": {"$ref": "#/components/schemas/vc_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": "changeSiteSwitchVcPortMode", "tags": ["Sites Devices - Wired - Virtual Chassis"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/shell": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Create Shell Session", "operationId": "createSiteDeviceShellSession", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/shell_node"}}}}, "responses": {"200": {"$ref": "#/components/responses/WebsocketSessionWithUrl"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createSiteDeviceShellSession", "tags": ["Utilities Common"]}}, "/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.\n\nThe output will be available through websocket. As there can be multiple commands 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": "showSiteDeviceArpTable", "requestBody": {"content": {"application/json": {"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": "showSiteDeviceArpTable", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_bgp_summary": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get BGP Summary from SSR, SRX and Switch.\n\n\nThe output will be available through websocket. As there can be multiple commands 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```\n\n##### Example output from ws stream\n```\nTue 2024-04-23 16:36:06 UTC\nRetrieving bgp entries...\nBGP table version is 354, local router ID is 10.224.8.16, vrf id 0\nDefault local pref 100, local AS 65000\nStatus codes: s suppressed, d damped, h history, * valid, > best, = multipath,\n i internal, r RIB_failure, S Stale, R Removed\nNexthop codes: @NNN nexthop's vrf id, < announce-nh-self\nOrigin codes: i - IGP, e - EGP, ? - incomplete\nRPKI validation codes: V valid, I invalid, N Not found\n\n Network Next Hop Metric LocPrf Weight Path\n*> 161.161.161.0/24\n```\"", "operationId": "showSiteDeviceBgpSummary", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_bgp_summary"}}}, "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": "showSiteDeviceBgpSummary", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_dhcp_leases": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Shows DHCP leases", "operationId": "showSiteDeviceDhcpLeases", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_dhcp_leases"}}}}, "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": "showSiteDeviceDhcpLeases", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_dot1x": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get Dot1X Table from the Device.\n\nThe output will be available through websocket. As there can be multiple commands 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": "showSiteDeviceDot1xTable", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_dot1x"}}}, "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": "showSiteDeviceDot1xTable", "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": "showSiteDeviceEvpnDatabase", "requestBody": {"content": {"application/json": {"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": "showSiteDeviceEvpnDatabase", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_forwarding_table": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get forwarding table from the Device. The output will be available through websocket. As there can be multiple commands 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\n##### Example output from ws stream\n```\nMon 2024-05-20 16:47:30 UTC Retrieving fib entries\u2026 Entry Count: 3268 Capacity: 22668 ==================== ====== ======= ================== ===== ====================== =========== =========== ====== IP Prefix Port Proto Tenant VRF Service Next Hops Vector Cost ==================== ====== ======= ================== ===== ====================== =========== =========== ====== 0.0.0.0/0 0 None Old_Mgmt - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10 branch1-Kiosk - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10 branch1-MGT - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10 3.1.1.0/24 0 None Old_Mgmt - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10 branch1-Kiosk - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10 branch1-MGT - internet-wan_and_lte 1-2.0 broadband 1 1-4.0 lte 10\n\n```\n", "operationId": "showSiteDeviceForwardingTable", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_forwarding_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": "showSiteDeviceForwardingTable", "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.\n\nThe output will be available through websocket. As there can be multiple commands 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\n#### Subscribe to Device Command outputs\n\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n```\n\n\n#### Example output from ws stream\n\n```json \n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/00000000-0000-0000-1000-209339xxxxxx/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/209339xxxxxx/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"eec2b6e4-1e63-4f9f-9cf8-ef7f9632861e\\\", \\\"raw\\\": \\\"\\\\nMAC flags (S - static MAC, D - dynamic MAC, L - locally learned, P - Persistent static, C - Control MAC\\\\n SE - statistics enabled, NM - non configured MAC, R - remote PE MAC, O - ovsdb MAC\\\\n GBP - group based policy, B - Blocked MAC)\\\\n\\\\n\\\\nE\\\"}}\"\n}\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/00000000-0000-0000-1000-209339xxxxxx/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/209339xxxxxx/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"eec2b6e4-1e63-4f9f-9cf8-ef7f9632861e\\\", \\\"raw\\\": \\\"thernet switching table : 59 entries, 59 learned\\\\nRouting instance : default-switch\\\\n Vlan MAC MAC Age GBP Logical NH MAC RTR\\\\n name address flags \\\"}}\"\n}\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/00000000-0000-0000-1000-209339xxxxxx/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/209339xxxxxx/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"eec2b6e4-1e63-4f9f-9cf8-ef7f9632861e\\\", \\\"raw\\\": \\\" Tag interface Index property ID\\\\n corp 00:50:56:87:4f:69 D - xe-0/1/3.0 0 0 \\\\n corp 00:50:56:87:ce:f5 D - x\\\"}}\"\n}\n{\n \"event\": \"data\",\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/00000000-0000-0000-1000-209339xxxxxx/cmd\",\n \"data\": \"{\\\"event\\\": \\\"data\\\", \\\"channel\\\": \\\"/sites/d6fb4f96-xxxx-xxxx-xxxx-a8d7b85087ac/devices/209339xxxxxx/cmd\\\", \\\"data\\\": {\\\"session\\\": \\\"eec2b6e4-1e63-4f9f-9cf8-ef7f9632861e\\\", \\\"raw\\\": \\\"e-0/1/3.0 0 0 \\\\n corp 20:93:39:0f:62:00 D - xe-0/1/3.0 0 0 \\\\n ifo 00:50:56:87:2d:42 D - xe-0/1/3.0 \\\"}}\"\n}\n...\n```", "operationId": "showSiteDeviceMacTable", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_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": "showSiteDeviceMacTable", "tags": ["Utilities Common"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_ospf_database": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get OSPF Database from SSR and SRX. The output will be available through websocket. \n\nAs there can be multiple commands 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\n#### Example output from ws stream\n```\n===== ==================== ========== ======= ======== ================ =================== =================\nVrf Neighbor Router ID Priority State Uptime Dead Timer Due Interface Address Interface State\n===== ==================== ========== ======= ======== ================ =================== =================\n 1.0.0.3 1 Full 852 38 172.16.3.2 Backup\n 1.0.0.4 1 Full 811 33 172.16.3.2 DROther\n 1.0.0.3 1 Full 852 38 172.16.4.2 Backup\n 1.0.0.4 1 Full 811 34 172.16.4.2 DROther\n```", "operationId": "showSiteGatewayOspfDatabase", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_ospf_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": "showSiteGatewayOspfDatabase", "tags": ["Utilities WAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_ospf_interfaces": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get OSPF interfaces from SSR and SRX. The output will be available through websocket. \n\nAs there can be multiple commands 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\n#### Example output from ws stream\n```\n===== ================== =================== ============== =============== =========== ========= ===========\nVrf Device Interface Network Interface Interface Up IP address OSPF Type Area ID Area Type\n===== ================== =================== ============== =============== =========== ========= ===========\n net1 g1 True 172.16.1.2/24 Broadcast 0.0.0.0 default\n net3 g3 True 172.16.3.2/24 Broadcast 0.0.0.0 default\n net4 g4 True 172.16.4.2/24 Broadcast 0.0.0.4 default\n```", "operationId": "showSiteGatewayOspfInterfaces", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_ospf_interfaces"}}}, "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": "showSiteGatewayOspfInterfaces", "tags": ["Utilities WAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_ospf_neighbors": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get OSPF Neighbors from SSR and SRX. The output will be available through websocket. \n\nAs there can be multiple commands 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\n#### Example output from ws stream\n```\n===== ==================== ========== ======= ======== ================ =================== =================\nVrf Neighbor Router ID Priority State Uptime Dead Timer Due Interface Address Interface State\n===== ==================== ========== ======= ======== ================ =================== =================\n 1.0.0.3 1 Full 852 38 172.16.3.2 Backup\n 1.0.0.4 1 Full 811 33 172.16.3.2 DROther\n 1.0.0.3 1 Full 852 38 172.16.4.2 Backup\n 1.0.0.4 1 Full 811 34 172.16.4.2 DROther\n```", "operationId": "showSiteGatewayOspfNeighbors", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_ospf_neighbors"}}}, "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": "showSiteGatewayOspfNeighbors", "tags": ["Utilities WAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/show_ospf_summary": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Get OSPF summary from SSR and SRX. The output will be available through websocket. \n\nAs there can be multiple commands 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\n#### Example output from ws stream\n```\n===== =========== ========== ============= ==================== ========= =========== =============\nVrf Router ID ABR Type ASBR Router External LSA Count Area ID Area Type Area Border\n Router\n===== =========== ========== ============= ==================== ========= =========== =============\n 1.0.0.2 cisco False 0 0.0.0.0\n 1.0.0.2 cisco False 0 0.0.0.4 default\n```", "operationId": "showSiteGatewayOspfSummary", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/utils_show_ospf_summary"}}}, "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": "showSiteGatewayOspfSummary", "tags": ["Utilities WAN"]}}, "/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. \n\nThe output will be available through websocket. As there can be multiple commands 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 Capability: advertised and received\n Remote Restart timer is 120 seconds\n Address families by peer:\n none\n ...\n```", "operationId": "showSiteSsrAndSrxRoutes", "requestBody": {"content": {"application/json": {"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": "showSiteSsrAndSrxRoutes", "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.\n\n\nThe output will be available through websocket. As there can be multiple command\nissued against the same device at the same time and the output all goes through\nthe same websocket stream, session is introduced for demux.\n\n\n\n#### Subscribe to Device Command outputs\n\n`WS /api-ws/v1/stream`\n\n\n```json\n{ \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\" }\n```\n\n#### Example output from ws stream\n\n```json\n{\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-xxxxxxxxxxxx/devices/00000000-0000-0000-1000-xxxxxxxxxxxx/cmd\",\n \"event\": \"data\",\n \"data\": {\n \"session\": \"5cb8a6db-d11a-42cd-bed7-19e9f29e637\",\n \"raw\": \"{\\\"status\\\":\\\"SUCCESS\\\",\\\"finished\\\":true,\\\"rows\\\":[{\\\"service\\\":\\\"management\\\",\\\"type\\\":\\\"service-agent\\\",\\\"network_interface\\\":\\\"ge-0/0/0\\\",\\\"destination\\\":\\\"\\\",\\\"gateway_ip\\\":\\\"192.168.1.1\\\",\\\"vector\\\":\\\"\\\",\\\"cost\\\":0,\\\"rate\\\":0,\\\"state\\\":\\\"Up\\\",\\\"capacity\\\":\\\"0/unlimited\\\",\\\"meetsSLA\\\":\\\"Yes\\\"},{\\\"service\\\":\\\"management\\\",\\\"type\\\":\\\"service-agent\\\",\\\"network_interface\\\":\\\"ge-0/0/1\\\",\\\"destination\\\":\\\"\\\",\\\"gateway_ip\\\":\\\"192.168.0.1\\\",\\\"vector\\\":\\\"\\\",\\\"cost\\\":0,\\\"rate\\\":0,\\\"state\\\":\\\"Up\\\",\\\"capacity\\\":\\\"0/unlimited\\\",\\\"meetsSLA\\\":\\\"Yes\\\"}]}\"\n }\n}\n```", "operationId": "showSiteSsrServicePath", "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": "showSiteSsrServicePath", "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.\n\n\nThe output will be available through websocket. As there can be multiple command\nissued against the same device at the same time and the output all goes through\nthe same websocket stream, session is introduced for demux.\n\n\n\n#### Subscribe to Device Command outputs\n\n`WS /api-ws/v1/stream`\n\n\n```json \n{ \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\" }\n```\n\n\n#### Example output from ws stream\n\n```json \n{\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-xxxxxxxxxxxx/devices/00000000-0000-0000-1000-xxxxxxxxxxxx/cmd\",\n \"event\": \"data\",\n \"data\": {\n \"session\": \"f517bf29-1141-41ae-a084-17cacb0ccb57\",\n \"raw\": \"{\\\"status\\\":\\\"SUCCESS\\\",\\\"finished\\\":true,\\\"rows\\\":[{\\\"session_id\\\":\\\"a04b1cc7-dcc1-40a6-a010-0fe46ca38551\\\",\\\"direction\\\":\\\"forward\\\",\\\"service\\\":\\\"internet\\\",\\\"tenant\\\":\\\"SRV.PRD-Core\\\",\\\"device_interface\\\":\\\"ge-0/0/3\\\",\\\"network_interface\\\":\\\"ge-0/0/3.100\\\",\\\"protocol\\\":\\\"TCP\\\",\\\"source_ip\\\":\\\"10.3.20.101\\\",\\\"source_port\\\":45733,\\\"destination_ip\\\":\\\"13.38.46.35\\\",\\\"destination_port\\\":443,\\\"nat_ip\\\":\\\"192.168.1.115\\\",\\\"nat_port\\\":45256,\\\"payload_encrypted\\\":false,\\\"timeout\\\":1581,\\\"uptime\\\":319},{\\\"session_id\\\":\\\"a04b1cc7-dcc1-40a6-a010-0fe46ca38551\\\",\\\"direction\\\":\\\"reverse\\\",\\\"service\\\":\\\"internet\\\",\\\"tenant\\\":\\\"SRV.PRD-Core\\\",\\\"device_interface\\\":\\\"ge-0/0/0\\\",\\\"network_interface\\\":\\\"ge-0/0/0\\\",\\\"protocol\\\":\\\"TCP\\\",\\\"source_ip\\\":\\\"13.38.46.35\\\",\\\"source_port\\\":443,\\\"destination_ip\\\":\\\"192.168.1.115\\\",\\\"destination_port\\\":45256,\\\"nat_ip\\\":\\\"0.0.0.0\\\",\\\"nat_port\\\":0,\\\"payload_encrypted\\\":false,\\\"timeout\\\":1581,\\\"uptime\\\":319}]}\\n\"\n }\n}\n```", "operationId": "showSiteSsrAndSrxSessions", "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": "showSiteSsrAndSrxSessions", "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/OK"}, "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| Name | Type | Description |\n| --- | --- | --- |\n| process | string | Upload 1 file with output of show system processes extensive |\n| outbound-ssh | string | Upload 1 file that concatenates all /var/log/outbound-ssh.log* files |\n| messages | string | Upload 1 to 10 /var/log/messages* files |\n| core-dumps | string | Upload all core dump files, if any. Uploads for all members of VC on switches.|\n| full | 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) |\n| var-logs | string | Upload all non-empty files in the /var/log/ directory |\n| jma-logs | string | Upload Mist agent logs (for Junos devices running the Mist agent only) |\n\"", "operationId": "uploadSiteDeviceSupportFile", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": {"$ref": "#/components/responses/SynthetictestStatus"}, "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": ["Sites 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/synthetictest_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": ["Sites 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.\n\nThe output will be available through websocket. As there can be multiple commands 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\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n\n\n#### Example output from ws stream\n```json\n{\n \"channel\": \"/sites/d6fb4f96-xxxx-xxxx-xxxx-xxxxxxxxxxxx/devices/00000000-0000-0000-1000-xxxxxxxxxxxx/cmd\",\n \"event\": \"data\",\n \"data\": {\n \"session\": \"9106e908-74dc-4a4f-9050-9c2adcaf44a5\",\n \"raw\": \"Running traceroute...\\ntraceroute to 8.8.8.8, 64 hops max\\n 0 192.168.1.1 1 ms 192.168.1.1 1 ms 192.168.1.1 1 ms\\n 1 80.10.236.81 2 ms 80.10.236.81 4 ms 80.10.236.81 2 ms\\n 2 193.253.80.250 3 ms 193.253.80.250 2 ms 193.253.80.250 2 ms\\n 3 193.252.159.41 2 ms 193.252.159.41 1 ms 193.252.159.41 3 ms\\n\"\n}\n```", "operationId": "tracerouteFromDevice", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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 Common"]}}, "/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": "upgradeDevice", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"version": "3.1.5"}}}, "schema": {"$ref": "#/components/schemas/device_upgrade"}}}}, "responses": {"200": {"$ref": "#/components/responses/UpgradeDevice"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "upgradeDevice", "tags": ["Utilities Upgrade"]}}, "/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": "upgradeDeviceBios", "requestBody": {"content": {"application/json": {"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": "upgradeDeviceBios", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/upgrade_fpga": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Upgrade device fpga", "operationId": "upgradeDeviceFPGA", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/upgrade_fpga"}}}}, "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": "upgradeDeviceFPGA", "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 disconnected, 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\n\nThe 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. \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't have dedicated VC ports, below are procedures to automate the VC creation:\n1. Power on the switch that is chosen as the VC master first, and then powering on the other member switches.\n2. Claim or adopt all these switches under the same organization's Inventory\n3. Assign these switches into the same Site\n4. Wait for all the switches to be connected to Mist\n5. Invoke vc command on the switch chosen to be the VC master. For EX2300-C-12P, VC ports will be created automatically.\n6. Connect the cables to the VC ports for these switches\n7. Wait for the VC to be formed. The Org's 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", "xe-0/1/1"], "vc_role": "linecard"}, {"mac": "8396cd00888c", "member_id": 2, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "backup"}], "preprovisioned": true}}}, "schema": {"$ref": "#/components/schemas/virtual_chassis_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": "createSiteVirtualChassis", "tags": ["Sites Devices - Wired - Virtual Chassis"]}, "put": {"description": "The VC creation and adding member switch API will update the device' s virtual chassis config which is applied after VC is formed to create JUNOS pre-provisioned virtual chassis configuration.\n\n**Note:** Update Device's 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.\n\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\n**Notice:** 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's 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's Inventory shows that 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\n3. Waiting for the VC state (vc_state) of this switch is changed to not-present\n4. Invoke update_vc with remove to remove this switch from the VC\n5. The Org's Inventory shows the switch is removed.\n\nPlease notice that member ID 0 (fpc0) cannot be removed. When a VC has two switches left, unplugging the cable may result in the situation that fpc0 becomes a line card (LC). When this situation is happening, 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' 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 replaced, 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 \"preprovision\" 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 \n * the device model has dedicated vc ports, or \n * no new member is added \n2. New VC members to be added should exist in the same Site as the VC", "operationId": "updateSiteVirtualChassisMember", "requestBody": {"content": {"application/json": {"examples": {"adding-two-new-switches-as-line-cards-into-the-VC": {"value": {"members": [{"mac": "aff827549235", "member_id": 2, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "linecard"}, {"mac": "8396cd00777c", "member_id": 3, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "linecard"}], "op": "add"}}, "convert-to-pre-provisioned-VC": {"value": {"members": [{"mac": "aff827549235", "member_id": 0, "vc_ports": ["xe-0/1/0", "xe-0/1/1"]}, {"mac": "8396cd00777c", "member_id": 1, "vc_ports": ["xe-0/1/0", "xe-0/1/1"], "vc_role": "backup"}], "op": "preprovision"}}, "remove-preprovision-members-and-clean-up-inventory": {"value": {"members": [{"mac": "aff827549235", "member_id": 0, "vc_role": "master"}, {"mac": "8396cd006c8c", "member_id": 1, "vc_role": "linecard"}], "op": "preprovision", "remove_inventory": true}}, "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/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": "updateSiteVirtualChassisMember", "tags": ["Sites Devices - Wired - Virtual Chassis"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/vc/convert_to_virtualmac": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Converts an FPC0-based VC to a Virtualmac VC, removing the limitation where the device ID must change whenever FPC0 is renumbered or removed.\n\n\nHTTP400 Error possible reasons:\n - The device is not an OC device\n - Virtualmac VC is disabled in the Org Knob settings\n - The VC is already a Virtualmac VC\n - The VC is currently disconnected\n - The device is standalone\n - A new FPC0 exists with its own device config, causing ambiguity.", "operationId": "convertSiteVirtualChassisToVirtualMac", "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": "convertSiteVirtualChassisToVirtualMac", "tags": ["Sites Devices - Wired - Virtual Chassis"]}}, "/api/v1/sites/{site_id}/devices/{device_id}/vc/switch_master": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "In a pre-provisioned VC, mastership is system-determined. This command allows manual toggling between primary and backup Routing Engines.", "operationId": "toogleSiteDeviceVcRoutingEnginesRole", "responses": {"200": {"$ref": "#/components/responses/OK"}, "400": {"content": {"application/json": {"examples": {"backup-re-not-present": {"value": "backup routing engine is not present"}, "device-is-not-an-oc-device": {"value": "The device is not an OC device"}, "non-provisioned-vc-not-supported": {"value": "Non-provisioned VC is not supported currently"}, "vc-is-currently-disconnected": {"value": "VC is currently disconnected"}}, "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": "toogleSiteDeviceVcRoutingEnginesRole", "tags": ["Utilities LAN"]}}, "/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}/devices/{device_id}/zigbee_join": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}], "post": {"description": "Allow Zigbee end devices to join the network for a configurable duration. After the duration expires, new joins will be blocked (unless `allow_join`==`always` is configured on the device).\n\n#### Subscribe to Zigbee Join Events\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/zigbee_join\"\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\": \"19e73828-937f-05e6-f709-e29efdb0a82b\",\n \"zigbee_mac\": \"fd05eb86c04ac04a\",\n \"event_type\": \"associated\",\n \"detail\": {\n \"lqi\": 180\n }\n }\n}\n```", "operationId": "enableSiteDeviceZigbeeJoin", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"duration": 600}}}, "schema": {"$ref": "#/components/schemas/utils_zigbee_join"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/ZigbeeJoin"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "enableSiteDeviceZigbeeJoin", "tags": ["Sites Devices - Wireless"]}}, "/api/v1/sites/{site_id}/events/fast_roam": {"get": {"description": "List Roaming Events data", "operationId": "listSiteRoamingEvents", "parameters": [{"description": "Event type used to filter results. enum: `fail`, `none`, `success`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/fast_roam_result"}}, {"$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": "listSiteRoamingEvents", "tags": ["Sites Events"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/events/system/count": {"get": {"description": "Count system events for a site, optionally grouped by the `distinct` field and filtered by time range. Use [Count Org System Events](/#operations/countOrgSystemEvents) to count system events across the organization.", "operationId": "countSiteSystemEvents", "parameters": [{"description": "Field used to group this count response. enum: `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_system_events_count_distinct"}}, {"$ref": "#/components/parameters/system_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": "countSiteSystemEvents", "tags": ["Sites Events"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/events/system/search": {"get": {"description": "Search system events for a site with time range, sorting, and pagination controls. Use [Search Org System Events](/#operations/searchOrgSystemEvents) to search system events across the organization.", "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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "listSiteEvpnTopologies", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listSiteEvpnTopologies", "tags": ["Sites EVPN Topologies"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "While all the `evpn_id` / `downlink_ips` can be specified 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\n2. You can also use `core` / `distribution` to form a 2-tier EVPN topology where ESI-Lag is configured distribution to connect to access switches\n3. In a small/medium campus, `collapsed-core` can be used where core switches are the inter-connected to do EVPN", "operationId": "createSiteEvpnTopology", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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/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": "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"}, {"$ref": "#/components/parameters/evpn_topology_id"}], "put": {"description": "Update the EVPN Topology", "operationId": "updateSiteEvpnTopology", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"overwrite": false, "switches": [{"mac": "5c5b35000003", "role": "collapsed-core"}, {"mac": "5c5b35000004", "role": "none"}]}}}, "schema": {"$ref": "#/components/schemas/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 the list of derived Gateway Templates a Site", "operationId": "listSiteGatewayTemplatesDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"type": "boolean"}}], "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": "listSiteGatewayTemplatesDerived", "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 records for a site, optionally grouped by the `distinct` field and filtered by time range. Use [Count Org Guest Authorizations](/#operations/countOrgGuestAuthorizations) to count authorized guest records across the organization.", "operationId": "countSiteGuestAuthorizations", "parameters": [{"description": "Field used to group this count response. enum: `auth_method`, `company`, `ssid`", "example": "auth_method", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_guests_count_distinct"}}, {"$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": "countSiteGuestAuthorizations", "tags": ["Sites Guests"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/guests/derived": {"get": {"description": "Get the list of derived Guest Authorizations for a site", "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, "type": "boolean"}}], "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 records for a site with filters for WLAN, SSID, authentication method, and time range. Use [Search Org Guest Authorization](/#operations/searchOrgGuestAuthorization) to search authorized guest records across the organization.", "operationId": "searchSiteGuestAuthorization", "parameters": [{"description": "Filter results by WLAN identifier", "example": "00000000-0000-0000-0000-000000000000", "in": "query", "name": "wlan_id", "schema": {"type": "string"}}, {"description": "Filter guest results by authentication method", "in": "query", "name": "auth_method", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": {"$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": "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}/idpprofiles/derived": {"get": {"description": "Get the list of derived IDP Profiles for a site", "operationId": "listSiteIdpProfilesDerived", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/AvProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteIdpProfilesDerived", "tags": ["Sites IDP Profiles"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/insights": {"get": {"description": "Get Site Insight Metrics", "operationId": "getSiteInsightMetrics", "parameters": [{"description": "Comma separated Metric names, e.g. `num_clients,num_aps`. See possible values at [List Insight Metrics](/#operations/listInsightMetrics)", "in": "query", "name": "metrics", "required": true, "schema": {"examples": ["num_clients,num_aps"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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"}]}, "/api/v1/sites/{site_id}/insights/ap/{device_id}/stats": {"get": {"description": "Get AP Insight Metrics", "operationId": "getSiteInsightMetricsForAP", "parameters": [{"description": "Comma separated Metric names, e.g. `num_clients,num_stressed_clients`. See possible values at [List Insight Metrics](/#operations/listInsightMetrics)", "in": "query", "name": "metrics", "required": true, "schema": {"examples": ["num_clients,num_stressed_clients"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "getSiteInsightMetricsForAP", "tags": ["Sites Insights"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}]}, "/api/v1/sites/{site_id}/insights/client/{client_mac}": {"get": {"description": "Get Client Insight Metrics", "operationId": "getSiteInsightMetricsForClient", "parameters": [{"description": "Comma separated Metric names, e.g. `top-app-by-num_client,top-app-by-bytes`. See possible values at [List Insight Metrics](/#operations/listInsightMetrics)", "in": "query", "name": "metrics", "required": true, "schema": {"examples": ["top-app-by-num_client,top-app-by-bytes"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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"}]}, "/api/v1/sites/{site_id}/insights/device/{device_mac}/{metric}": {"get": {"description": "Get AP Insight Metrics\nSee metrics possibilities at [List Insight Metrics](/#operations/listInsightMetrics)", "operationId": "getSiteInsightMetricsForDevice", "parameters": [{"description": "Port ID of the device, e.g. `ge-0/0/1`. Can be used with metrics related to interfaces, e.g. `rx_bytes`.", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/1"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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/fingerprints/count": {"get": {"description": "Count Client Fingerprints", "operationId": "countSiteClientFingerprints", "parameters": [{"description": "Field used to group this count response. enum: `family`, `model`, `os`, `os_type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/fingerprints_count_distinct"}}, {"$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": "countSiteClientFingerprints", "tags": ["Sites NAC Fingerprints"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/insights/fingerprints/search": {"get": {"description": "Search Client Fingerprints", "operationId": "searchSiteClientFingerprints", "parameters": [{"description": "Device Category of the client device", "example": "EX Series Switch", "in": "query", "name": "family", "schema": {"type": "string"}}, {"description": "Filter results by client type. enum: `wireless`, `wired`, `vty`", "example": "wired", "in": "query", "name": "client_type", "schema": {"$ref": "#/components/schemas/nac_access_type"}}, {"description": "Filter results by device model", "example": "ex4100-f-12p", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Manufacturer name of the client device", "example": "Juniper Networks, Inc.", "in": "query", "name": "mfg", "schema": {"type": "string"}}, {"description": "Operating System name and version of the client device", "example": "JUNOS 22.3R1.12", "in": "query", "name": "os", "schema": {"type": "string"}}, {"description": "Operating system name of the client device", "example": "JUNOS", "in": "query", "name": "os_type", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "example": "d420b080516d", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/sort_wcid"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/FingerprintSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchSiteClientFingerprints", "tags": ["Sites NAC Fingerprints"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/insights/gateway/{device_id}/stats": {"get": {"description": "Get Gateway Insight Metrics", "operationId": "getSiteInsightMetricsForGateway", "parameters": [{"description": "Comma separated Metric names, e.g. `tx_bps,rx_bps`. See possible values at [List Insight Metrics](/#operations/listInsightMetrics)", "in": "query", "name": "metrics", "required": true, "schema": {"examples": ["tx_bps,rx_bps"], "type": "string"}}, {"description": "Port ID of the gateway device, e.g. `ge-0/0/1`", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/1"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "getSiteInsightMetricsForGateway", "tags": ["Sites Insights"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/device_id"}]}, "/api/v1/sites/{site_id}/insights/mxedge/{device_mac}/{metric}": {"get": {"description": "Get MxEdge Insight Metrics\nSee metrics possibilities at [List Insight Metrics](/#operations/listInsightMetrics)", "operationId": "getSiteInsightMetricsForMxEdge", "parameters": [{"description": "Port ID of the MxEdge device, e.g. `port0`. Can be used with metrics related to interfaces, e.g. `rx_bytes`.", "in": "query", "name": "port_id", "schema": {"examples": ["port0"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "getSiteInsightMetricsForMxEdge", "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/switch/{device_mac}/{metric}": {"get": {"description": "Get Switch Insight Metrics\nSee metrics possibilities at [List Insight Metrics](/#operations/listInsightMetrics)", "operationId": "getSiteInsightMetricsForSwitch", "parameters": [{"description": "Port ID of the switch device, e.g. `ge-0/0/1`. Can be used with metrics related to interfaces, e.g. `rx_bytes`.", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/1"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/interval"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "getSiteInsightMetricsForSwitch", "tags": ["Sites Insights"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/metric"}, {"$ref": "#/components/parameters/device_mac"}]}, "/api/v1/sites/{site_id}/iotendpoints/search": {"get": {"description": "Search IoT Endpoints", "operationId": "searchSiteIotEndpoints", "parameters": [{"description": "Filter results by AP MAC address", "in": "query", "name": "ap_mac", "schema": {"examples": ["5c5b350e0001"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["63f9e299182b63f9"], "type": "string"}}, {"description": "IoT endpoint type. enum: `zigbee`", "in": "query", "name": "type", "schema": {"examples": ["zigbee"], "type": "string"}}, {"description": "Filter results by manufacturer", "in": "query", "name": "mfg", "schema": {"examples": ["Assa Abloy"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/IotEndpointsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchSiteIotEndpoints", "tags": ["Sites Stats - IoT Endpoints"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/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/LicenseUsageSite"}, "400": {"$ref": "#/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": "Filter results by map identifier", "example": "00000000-0000-0000-0000-000000000000", "in": "query", "name": "map_id", "schema": {"type": "string"}}, {"description": "Filter results by type. enum: `asset`, `client`, `sdkclient`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/rf_client_type"}}, {"description": "Filter results by client type", "in": "query", "name": "client_type", "schema": {"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\nFor 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": "Filter results by map identifier", "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": {"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": {"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": [{"description": "Filter maps by mapstack UUID; returns only maps belonging to that mapstack", "in": "query", "name": "mapstack_id", "schema": {"format": "uuid", "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"value": {"group_idx": 0, "group_name": "string", "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", "name": "string", "nodes": [{"edges": {"N2": "string"}, "name": "string", "position": {"x": 0, "y": 0}}]}], "type": "image", "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}, "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/auto_geofences": {"parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "The auto geofence service is a map parsing service that uses map image data to identify the exterior of buildings in the map image also known as \"geofences\". This API processes all maps for a given SiteId. The maps must have an image to parse for the auto geofence service. Repeated POST requests to this endpoint while the auto geofence service is processing the map will be rejected.", "operationId": "startSiteMapsAutoGeofence", "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": "startSiteMapsAutoGeofence", "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.\n\n# Note\nThis 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)\n\n# CSV File Format\n```csv\nVendor AP name,Mist AP Mac\nUS Office AP-2,5c:5b:35:00:00:02\nUS Office AP-3,5c5b35000002\n```", "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": {"value": {"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", "name": "string", "nodes": [{"edges": {"N2": "string"}, "name": "string", "position": {"x": 0, "y": 0}}]}], "type": "image", "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}, "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}/apply_autoplacement": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/map_id"}], "post": {"description": "Accept the cached autoplacement and auto-orientation values of a map or subset of APs on a map. Any APs that have autoplacement values are stored in cache for up to 7 days while awaiting acceptance.\n\n\nAccepting the autoplacement values overwrites the existing X, Y, and orientation of the accepted APs with their cached autoplacement values.\n\nOnce a decision to accept is made, or the 7-day time-to-live (TTL) expires, the cached values are deleted.", "operationId": "acceptSiteApLocalizationData", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"for": "placement", "macs": ["5c5b35000001"]}}}, "schema": {"$ref": "#/components/schemas/autoplacement_localization_selector"}}}, "description": "Request Body"}, "responses": {"200": {"description": "Success"}, "400": {"description": "Map does not exist or belong to specified site / Invalid localization service. Expected [placement, orientation]"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "acceptSiteApLocalizationData", "tags": ["Sites Maps - Auto-placement"]}}, "/api/v1/sites/{site_id}/maps/{map_id}/auto_geofences": {"parameters": [{"$ref": "#/components/parameters/map_id"}, {"$ref": "#/components/parameters/site_id"}], "post": {"description": "The auto geofence service is a map parsing service that uses map image data to identify the exterior of buildings in the map image also known as \"geofences\". This API processes a single given MapId. This map must have an image to parse for the auto geofence service. Repeated POST requests to this endpoint while the auto geofence service is processing the map will be rejected.", "operationId": "startSiteMapAutoGeofence", "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": "startSiteMapAutoGeofence", "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": {"description": "Auto orient 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": "deleteSiteApAutoOrientation", "tags": ["Sites Maps - Auto-placement"]}, "get": {"description": "This API is called to view the current status of auto orient for a given map.", "operationId": "getSiteApAutoOrientation", "responses": {"200": {"$ref": "#/components/responses/AutoOrientationInfo"}, "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": "getSiteApAutoOrientation", "tags": ["Sites Maps - Auto-placement"]}, "parameters": [{"$ref": "#/components/parameters/map_id"}, {"$ref": "#/components/parameters/site_id"}], "post": {"description": "This API is called to trigger a map for auto orient. 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 requests to this endpoint while a map is still running will be rejected.\n\n\n`force_collection` is set to `false` by default. If `force_collection`==`false`, the API attempts to start orientation with existing data. If no data exists, the API attempts to start collecting orientation data. If `force_collection`==`true`, the API attempts to start collecting orientation data.\n\n\nProviding a list of device macs is optional. If provided, auto orientation suggestions will be made only for the specified devices. If no list is provided, all APs associated with the 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-placement"]}}, "/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.\n\n\n#### Status Descriptions\n\n| Status | Description |\n| --- | --- |\n| `pending` | Autoplacement has not been requested for this map |\n| `inprogress` | Autoplacement is currently processing |\n| `done` | The autoplacement process has completed |\n| `data_needed` | Additional position data is required for autoplacement. Users should verify the requested anchor APs have a position on the map |\n| `invalid_model` | Autoplacement is not supported on the model of the APs on the map |\n| `invalid_version` | Autoplacement is not supported with the APs current firmware version |\n| `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 auto placement for a map. For the auto placement feature to work, RTT-FTM data needs to be collected from the APs on the map. \nThis scan is disruptive, and users must be notified of service disruption during the auto placement process. Repeated POST requests to this endpoint while a map is still running will be rejected.\n\n\n`force_collection` is set to `false` by default. If `force_collection` is set to `false`, the API attempts to start localization with existing data. If no data exists, the API attempts to start orchestration. \nIf `force_collection` is set to `true`, the API attempts to start orchestration.\n\n\nProviding a list of devices is optional. If provided, autoplacement suggestions will be made only for the specified devices. If no list is provided, all APs associated with the map are considered by default.", "operationId": "runSiteApAutoplacement", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/auto_placement"}}}}, "responses": {"200": {"$ref": "#/components/responses/HTTP200AutoPlacement"}, "400": {"$ref": "#/components/responses/HTTP400"}, "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}/auto_zones": {"delete": {"description": "This API starts the auto zones service for a specified map. This map must have an image to parse for the auto zones service. Repeated POST requests to this endpoint while the auto zones service is processing the map or awaiting review will be rejected.", "operationId": "deleteSiteMapAutoZone", "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": "deleteSiteMapAutoZone", "tags": ["Sites Maps - Auto-Zone"]}, "get": {"description": "This API provides the current status of the auto zones service for a given map", "operationId": "getSiteMapAutoZoneStatus", "responses": {"200": {"$ref": "#/components/responses/AutoZoneStatus"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteMapAutoZoneStatus", "tags": ["Sites Maps - Auto-Zone"]}, "parameters": [{"$ref": "#/components/parameters/map_id"}, {"$ref": "#/components/parameters/site_id"}], "post": {"description": "This API starts the auto zones service for a specified map. This map must have an image to parse for the auto zones service. Repeated POST requests to this endpoint while the auto zones service is processing the map will be rejected.", "operationId": "startSiteMapAutoZone", "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": "startSiteMapAutoZone", "tags": ["Sites Maps - Auto-Zone"]}}, "/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-placement"]}}, "/api/v1/sites/{site_id}/maps/{map_id}/clear_autoplacement": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/map_id"}], "post": {"description": "Reject the cached autoplacement and auto-orientation values of a map or subset of APs on a map. Any APs that have autoplacement values are stored in cache for up to 7 days while awaiting rejection.\n\n\nRejecting the autoplacement values causes the APs to retain their current X, Y, and orientation.\n\nOnce a decision to reject is made, or the 7-day time-to-live (TTL) expires, the cached values are deleted.", "operationId": "clearSiteApAutoplacement", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"for": "placement", "macs": ["5c5b35000001"]}}}, "schema": {"$ref": "#/components/schemas/autoplacement_localization_selector"}}}}, "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\n\n\nThis 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": {"deprecated": true, "description": "**Deprecated** \u2014 use [Accept Site AP Autoplacement](/#operations/acceptSiteApLocalizationData) to accept cached values, or [Clear Site AP Autoplacement](/#operations/clearSiteApAutoplacement) to reject them.", "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": "Map does not exist or belong to specified site / Invalid localization service. Expected [placement, 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}/mapstacks": {"get": {"description": "Get List of Site Map Stacks", "operationId": "listSiteMapStacks", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}, {"description": "Filter by map stack name", "in": "query", "name": "name", "schema": {"type": "string"}}], "responses": {"200": {"$ref": "#/components/responses/MapstacksArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteMapStacks", "tags": ["Sites Map Stacks"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Create Site Map Stack", "operationId": "createSiteMapStack", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"name": "Board Room"}}}, "schema": {"$ref": "#/components/schemas/mapstack"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/Mapstack"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "createSiteMapStack", "tags": ["Sites Map Stacks"]}}, "/api/v1/sites/{site_id}/marvis_configs/count": {"get": {"description": "Count Marvis Config Actions for a site by a distinct field.", "operationId": "countSiteMarvisConfigActions", "parameters": [{"description": "Field to count by. enum: `mac`, `type`, `src`, `admin_id`, `op`, `port_id`, `reason`, `vlan_ids`", "in": "query", "name": "distinct", "schema": {"default": "mac", "type": "string"}}, {"description": "Filter by device MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter by config type (e.g. wired)", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter by source of the config action (e.g. marvis)", "in": "query", "name": "src", "schema": {"type": "string"}}, {"description": "Filter by admin ID", "in": "query", "name": "admin_id", "schema": {"type": "string"}}, {"description": "Filter by operation type (e.g. disable_port, enable_port, update_mtu, add_vlans_to_port)", "in": "query", "name": "op", "schema": {"type": "string"}}, {"description": "Filter by port identifier (e.g. ge-0/0/13)", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter by VLAN ID", "in": "query", "name": "vlan_ids", "schema": {"type": "integer"}}, {"description": "Filter by reason for the config action (e.g. rogue_dhcp_server_detected)", "in": "query", "name": "reason", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/MarvisConfigActionsCount"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "countSiteMarvisConfigActions", "tags": ["Sites Marvis Configs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/marvis_configs/search": {"get": {"description": "Search Marvis Config Actions for a site.", "operationId": "searchSiteMarvisConfigActions", "parameters": [{"description": "Filter by device MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter by config type (e.g. wired)", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter by source of the config action (e.g. marvis)", "in": "query", "name": "src", "schema": {"type": "string"}}, {"description": "Filter by admin ID", "in": "query", "name": "admin_id", "schema": {"type": "string"}}, {"description": "Filter by operation type (e.g. disable_port, enable_port, update_mtu, add_vlans_to_port)", "in": "query", "name": "op", "schema": {"type": "string"}}, {"description": "Filter by port identifier (e.g. ge-0/0/13)", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter by VLAN ID", "in": "query", "name": "vlan_ids", "schema": {"type": "integer"}}, {"description": "Filter by reason for the config action (e.g. rogue_dhcp_server_detected)", "in": "query", "name": "reason", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/MarvisConfigActionsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchSiteMarvisConfigActions", "tags": ["Sites Marvis Configs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/marvis_configs/{id}": {"delete": {"description": "Delete a Marvis Config Action.", "operationId": "deleteSiteMarvisConfigAction", "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": "deleteSiteMarvisConfigAction", "tags": ["Sites Marvis Configs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"description": "UUID of the Marvis Config Action", "in": "path", "name": "id", "required": true, "schema": {"format": "uuid", "type": "string"}}]}, "/api/v1/sites/{site_id}/marvis_configs/{id}/feedback": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"description": "UUID of the Marvis Config Action", "in": "path", "name": "id", "required": true, "schema": {"format": "uuid", "type": "string"}}], "post": {"description": "Submit feedback on a Marvis-injected config action (e.g. mark as invalid).", "operationId": "submitSiteMarvisConfigFeedback", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/marvis_config_feedback"}}}, "description": "Request Body", "required": true}, "responses": {"200": {"$ref": "#/components/responses/MarvisConfigFeedbackResponse"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "submitSiteMarvisConfigFeedback", "tags": ["Sites Marvis Configs"]}}, "/api/v1/sites/{site_id}/mxedges": {"get": {"description": "List Mist Edges for a site. Use [List Org Mist Edges](/#operations/listOrgMxEdges) to retrieve Mist Edges across the organization.", "operationId": "listSiteMxEdges", "parameters": [{"$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": "listSiteMxEdges", "tags": ["Sites MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/mxedges/events/count": {"get": {"description": "Count by Distinct Attributes of Mist Edge Events", "operationId": "countSiteMxEdgeEvents", "parameters": [{"description": "Field used to group this count response. enum: `mxcluster_id`, `mxedge_id`, `package`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_mxedge_events_count_distinct"}}, {"description": "Filter results by Mist Edge identifier", "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": "Filter results by service name", "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 Mist Edge events for a site with filters for Mist Edge, Mist Edge cluster, event type, service, component, and time range. Use [Search Org Mist Edge Events](/#operations/searchOrgMistEdgeEvents) to search Mist Edge events across the organization.", "operationId": "searchSiteMistEdgeEvents", "parameters": [{"description": "Filter results by Mist Edge identifier", "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": "Filter results by service name", "in": "query", "name": "service", "schema": {"type": "string"}}, {"description": "Filter results by component name", "in": "query", "name": "component", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit_10"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "searchSiteMistEdgeEvents", "tags": ["Sites MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/mxedges/upgrade": {"get": {"description": "List Mist Edge upgrade operations for a site. Use [List Org Mist Edge Upgrades](/#operations/listOrgMxEdgeUpgrades) to retrieve Mist Edge upgrade operations across the organization.", "operationId": "listSiteMxEdgeUpgrades", "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": "listSiteMxEdgeUpgrades", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}], "post": {"description": "Upgrade Mist Edges in a Site.\n\nSee [Org Mist Edges](/#tag/Utilities-Upgrade/operation/upgradeOrgMxEdges) for package upgrades\n\nSee [Org Mist Edges Distro](/#tag/Utilities-Upgrade/operation/upgradeOrgMxEdges) for distro upgrades", "operationId": "upgradeSiteMxEdges", "requestBody": {"content": {"application/json": {"examples": {"Upgrade_MxEdge": {"value": {"allow_downgrades": {"mxagent": false, "tunterm": true}, "canary_phases": [5, 25, 50, 100], "channel": "stable", "max_failure_percentage": 5, "max_failures": [1, 1, 5, 5], "mxedge_ids": ["387804a7-3474-85ce-15a2-f9a9684c9c90"], "start_time": 1624399840, "strategy": "serial", "versions": {"mxagent": "latest", "radsecproxy": "", "tunterm": "default"}}}, "Upgrade_MxEdge_Distro": {"value": {"canary_phases": [5, 25, 50, 100], "distro": "buster", "max_failure_percentage": 5, "max_failures": [1, 1, 5, 5], "mxedge_ids": ["387804a7-3474-85ce-15a2-f9a9684c9c90"], "start_time": 1624399840, "strategy": "serial"}}}, "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": "upgradeSiteMxEdges", "tags": ["Utilities Upgrade"]}}, "/api/v1/sites/{site_id}/mxedges/upgrade/{upgrade_id}": {"get": {"description": "Get Mist Edge Upgrade", "operationId": "getSiteMxEdgeUpgrade", "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": "getSiteMxEdgeUpgrade", "tags": ["Utilities Upgrade"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/upgrade_id"}], "put": {"description": "Update Mist Edge Upgrade. Only upgrades in `queued` state can be updated.", "operationId": "updateSiteMxEdgeUpgrade", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/mxedge_upgrade_multi"}}}, "description": "Request Body"}, "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": "updateSiteMxEdgeUpgrade", "tags": ["Utilities Upgrade"]}}, "/api/v1/sites/{site_id}/mxedges/upgrade/{upgrade_id}/cancel": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/upgrade_id"}], "post": {"description": "Cancel Mist Edge Upgrade. Best effort to cancel an upgrade. MxEdges which are already upgraded won't be touched.", "operationId": "cancelSiteMxEdgeUpgrade", "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": "cancelSiteMxEdgeUpgrade", "tags": ["Utilities Upgrade"]}}, "/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 NAC clients for a site, optionally grouped by the `distinct` field and filtered by authentication, identity, endpoint, network, and time attributes. Use [Count Org NAC Clients](/#operations/countOrgNacClients) to count NAC clients across the organization.", "operationId": "countSiteNacClients", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `auth_type`, `device_mac`, `edr_managed`, `edr_provider`, `edr_status`, `family`, `hostname`, `idp_id`, `mfg`, `mdm_compliance`, `mdm_managed`, `mdm_provider`, `model`, `mxedge_id`, `nacrule_matched`, `nacrule_name`, `nacrule_id`, `nas_ip`, `nas_vendor`, `os`, `ssid`, `status`, `type`, `usermac_label`, `username`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_nac_clients_count_distinct"}}, {"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. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\"", "in": "query", "name": "auth_type", "schema": {"type": "string"}}, {"description": "Filter results by last 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": "Filter results by last SSID", "in": "query", "name": "last_ssid", "schema": {"type": "string"}}, {"description": "Username presented by the client", "in": "query", "name": "last_username", "schema": {"type": "string"}}, {"description": "AP MAC connected to by client", "in": "query", "name": "last_ap", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Connection status of client i.e \"permitted\", \"denied, \"session_ended\"", "in": "query", "name": "last_status", "schema": {"type": "string"}}, {"description": "Client type i.e. \"wireless\", \"wired\" etc.", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "MDM compliance of client i.e \"compliant\", \"not compliant\"", "in": "query", "name": "mdm_compliance_status", "schema": {"type": "string"}}, {"description": "MDM provider of client\u2019s organisation eg \"intune\", \"jamf\"", "in": "query", "name": "mdm_provider", "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": "countSiteNacClients", "tags": ["Sites Clients - NAC"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/nac_clients/events/count": {"get": {"description": "Count NAC client events for a site, optionally grouped by the `distinct` field and filtered by event type and time range. Use [Count Org NAC Client Events](/#operations/countOrgNacClientEvents) to count NAC client events across the organization.", "operationId": "countSiteNacClientEvents", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `auth_type`, `dryrun_nacrule_id`, `mac`, `nacrule_id`, `nas_vendor`, `ssid`, `type`, `username`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_nac_client_events_count_distinct"}}, {"$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 for a site with filters for authentication, NAC rule, identity provider, RADIUS, network, endpoint, and time attributes. Use [Search Org NAC Client Events](/#operations/searchOrgNacClientEvents) to search NAC client events across the organization.", "operationId": "searchSiteNacClientEvents", "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. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\"", "in": "query", "name": "auth_type", "schema": {"type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"type": "integer"}}, {"description": "Vendor of NAS device", "in": "query", "name": "nas_vendor", "schema": {"type": "string"}}, {"description": "Filter results by BSSID", "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": "Username presented to the Identity Provider", "in": "query", "name": "idp_username", "schema": {"type": "string"}}, {"description": "RADIUS attributes returned by NAC to NAS Devive", "in": "query", "name": "resp_attrs", "schema": {"$ref": "#/components/schemas/resp_attrs"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by username", "in": "query", "name": "username", "schema": {"type": "string"}}, {"description": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"description": "Filter results by whether the client is using a randomized MAC address", "in": "query", "name": "random_mac", "schema": {"type": "boolean"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Labels derived from usermac entry", "in": "query", "name": "usermac_label", "schema": {"type": "string"}}, {"description": "Partial / full MAC address, username, device_mac or ap. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported", "in": "query", "name": "text", "schema": {"type": "string"}}, {"description": "IP address of NAS device", "in": "query", "name": "nas_ip", "schema": {"type": "string"}}, {"description": "Vendor specific VLAN ID in RADIUS requests", "in": "query", "name": "ingress_vlan", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort_wcid"}, {"$ref": "#/components/parameters/search_after"}], "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": "searchSiteNacClientEvents", "tags": ["Sites Clients - NAC"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/nac_clients/search": {"get": {"description": "Search NAC clients for a site with filters for authentication, endpoint posture, identity, network, NAC rule, and time attributes. Use [Search Org NAC Clients](/#operations/searchOrgNacClients) to search NAC clients across the organization.", "operationId": "searchSiteNacClients", "parameters": [{"description": "MAC address of the AP the client is/was connected to", "in": "query", "name": "ap", "schema": {"type": "string"}}, {"description": "Authentication type, e.g. \"eap-tls\", \"eap-peap\", \"eap-ttls\", \"eap-teap\", \"mab\", \"psk\", \"device-auth\"", "in": "query", "name": "auth_type", "schema": {"type": "string"}}, {"description": "Filter by certificate expiry within a specific duration from now (e.g., \"7d\" for 7 days, \"1m\" for 1 month)", "in": "query", "name": "cert_expiry_duration", "schema": {"examples": ["7d", "1m"], "type": "string"}}, {"description": "Filters NAC clients that are integrated with EDR providers", "in": "query", "name": "edr_managed", "schema": {"type": "boolean"}}, {"description": "EDR provider used to filter NAC clients. enum: `crowdstrike`, `sentinelone`", "in": "query", "name": "edr_provider", "schema": {"$ref": "#/components/schemas/edr_provider"}}, {"description": "EDR status used to filter NAC clients. enum: `sentinelone_healthy`, `sentinelone_infected`, `crowdstrike_low`, `crowdstrike_medium`, `crowdstrike_high`, `crowdstrike_critical`, `crowdstrike_informational`", "in": "query", "name": "edr_status", "schema": {"$ref": "#/components/schemas/edr_status"}}, {"$ref": "#/components/parameters/partial_filter_family_client"}, {"$ref": "#/components/parameters/partial_filter_hostname_client"}, {"description": "SSO ID, if present and used", "in": "query", "name": "idp_id", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/partial_filter_mac_client"}, {"description": "MDM compliance of client i.e \"compliant\", \"not compliant\"", "in": "query", "name": "mdm_compliance", "schema": {"type": "string"}}, {"description": "MDM provider of client\u2019s organization eg \"intune\", \"jamf\"", "in": "query", "name": "mdm_provider", "schema": {"type": "string"}}, {"description": "Filters NAC clients that are managed by MDM providers", "in": "query", "name": "mdm_managed", "schema": {"type": "boolean"}}, {"$ref": "#/components/parameters/partial_filter_mfg_client"}, {"description": "Client model, e.g. \"iPhone 12\", \"MX100\"", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "NAC Policy Rule Name matched", "in": "query", "name": "nacrule_name", "schema": {"type": "string"}}, {"description": "NAC Policy Rule ID, if matched", "in": "query", "name": "nacrule_id", "schema": {"type": "string"}}, {"description": "NAC Policy Rule Matched", "in": "query", "name": "nacrule_matched", "schema": {"type": "boolean"}}, {"description": "Vendor of NAS device", "in": "query", "name": "nas_vendor", "schema": {"type": "string"}}, {"description": "IP address of NAS device", "in": "query", "name": "nas_ip", "schema": {"type": "string"}}, {"description": "Vendor specific VLAN ID in RADIUS requests", "in": "query", "name": "ingress_vlan", "schema": {"type": "string"}}, {"description": "Client OS, e.g. \"iOS 18.1\", \"Android\", \"Windows\", \"Linux\"", "in": "query", "name": "os", "schema": {"type": "string"}}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Client connection status used to filter results. enum: `permitted`, `session_started`, `session_stopped`, `denied`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/nac_client_last_status"}}, {"description": "partial / full MAC address, last_username, device_mac, nas_ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported.", "in": "query", "name": "text", "schema": {"type": "string"}}, {"description": "Client type i.e. \"wireless\", \"wired\" etc.", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Labels derived from usermac entry", "in": "query", "name": "usermac_label", "schema": {"$ref": "#/components/schemas/strings"}}, {"description": "Filter results by username", "in": "query", "name": "username", "schema": {"type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort_wcid"}, {"$ref": "#/components/parameters/search_after"}], "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}/nac_clients/{client_mac}/coa": {"parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/client_mac"}], "post": {"description": "Sends CoA (Change of Authorization) command to a NAC client.", "operationId": "sendSiteNacClientCoA", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_client_coa"}}}, "description": "Request Body"}, "responses": {"200": {"$ref": "#/components/responses/NacClientCoa"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "sendSiteNacClientCoA", "tags": ["Sites Clients - NAC"]}}, "/api/v1/sites/{site_id}/networks/derived": {"get": {"description": "Get the list of derived Networks for a 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 the list of derived Network Templates a Site", "operationId": "listSiteNetworkTemplatesDerived", "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": "listSiteNetworkTemplatesDerived", "tags": ["Sites Network Templates"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/otherdevices": {"get": {"description": "List third-party devices in a site, such as devices discovered or tracked outside the managed Mist device inventory. Use [List Org Other Devices](/#operations/listOrgOtherDevices) to retrieve third-party devices across the organization.", "operationId": "listSiteOtherDevices", "parameters": [{"description": "Filter results by vendor", "in": "query", "name": "vendor", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by device serial number", "in": "query", "name": "serial", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by name", "in": "query", "name": "name", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 third-party device events for a site, optionally grouped by the `distinct` field and filtered by event type and time range. Use [Count Org Other Device Events](/#operations/countOrgOtherDeviceEvents) to count third-party device events across the organization.", "operationId": "countSiteOtherDeviceEvents", "parameters": [{"description": "Field used to group this count response. enum: `mac`, `site_id`, `type`, `vendor`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_other_device_events_count_distinct"}}, {"$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 third-party device events for a site with filters for device identifiers, model, vendor, event type, and time range. Use [Search Org Other Device Events](/#operations/searchOrgOtherDeviceEvents) to search third-party device events across the organization.", "operationId": "searchSiteOtherDeviceEvents", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "MAC of attached device", "in": "query", "name": "device_mac", "schema": {"type": "string"}}, {"description": "Filter results by vendor", "in": "query", "name": "vendor", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/otherdevice_event_type"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "List packet captures for a site, optionally filtered by client MAC address and time range. Use [List Org Packet Captures](/#operations/listOrgPacketCaptures) to retrieve packet captures across the organization.", "operationId": "listSitePacketCaptures", "parameters": [{"description": "Optional client mac filter", "in": "query", "name": "client_mac", "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/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 commands 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#### Response (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": "38f9d3972ff1", "duration": 600, "max_pkt_len": 128, "num_packets": 1024, "ssid": "string", "type": "radiotap,wired"}}, "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": {}, "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_string"}}}}, "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": [{"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter PSK results by role", "in": "query", "name": "role", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/name"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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\n\n\nWhen `usage`==`macs`, corresponding \"macs\" field will hold a list consisting of client MAC addresses ([\"xx:xx:xx:xx:xx\",...]) or mac patterns([\"xx:xx:*\",\"xx*\",...]) or both ([\"xx:xx:xx:xx:xx:xx\", \"xx:*\", ...]). This list is capped at 5000", "operationId": "createSitePsk", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"mac": "string", "name": "string", "passphrase": "secretpsk", "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 multiple PSKs", "operationId": "updateSiteMultiplePsks", "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": "updateSiteMultiplePsks", "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\n\n## CSV File Format\n```csv\nPSK Import CSV File Format:\nname,ssid,passphrase,usage,vlan_id,mac\nCommon,warehouse,foryoureyesonly,single,35,a31425f31278\nJustin,reception,visible,multi,1002\n```", "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": {"value": {"mac": "string", "name": "string", "passphrase": "secretpsk", "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/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 Diag 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\nDownload 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 the list of derived RF Templates a Site", "operationId": "listSiteRfTemplatesDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"type": "boolean"}}], "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": "listSiteRfTemplatesDerived", "tags": ["Sites RF Templates"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/rogues/events/count": {"get": {"description": "Count by Distinct Attributes of Rogue Events", "operationId": "countSiteRogueEvents", "parameters": [{"description": "Field used to group this count response. enum: `ap`, `bssid`, `ssid`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_rogue_events_count_distinct"}}, {"$ref": "#/components/parameters/rogue_type"}, {"description": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by BSSID", "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": "Filter results by channel", "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/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": "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": "Filter results by SSID", "in": "query", "name": "ssid", "schema": {"type": "string"}}, {"description": "Filter results by BSSID", "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": "Filter results by channel", "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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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/channel_scores/band/{band}": {"get": {"description": "Get Site Channel Scores", "operationId": "getSiteChannelScores", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/ChannelScores"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteChannelScores", "tags": ["Sites RRM"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"description": "802.11 Band", "in": "path", "name": "band", "required": true, "schema": {"$ref": "#/components/schemas/dot11_band"}}]}, "/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/events": {"get": {"description": "List Site RRM Events", "operationId": "listSiteRrmEvents", "parameters": [{"$ref": "#/components/parameters/dot11_band"}, {"$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/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": "listSiteRrmEvents", "tags": ["Sites RRM"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/rrm/neighbors/band/{band}": {"get": {"description": "List Current RRM observed neighbors", "operationId": "listSiteCurrentRrmNeighbors", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": "listSiteCurrentRrmNeighbors", "tags": ["Sites RRM"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"description": "802.11 Band", "in": "path", "name": "band", "required": true, "schema": {"$ref": "#/components/schemas/dot11_band"}}]}, "/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": {"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/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"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": {"value": {"devices": [{"device_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "rssi": 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": {"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}/secintelprofiles/derived": {"get": {"description": "Get the list of derived Sky-ATP secintel profiles a Site", "operationId": "listSiteSecIntelProfilesDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/SecIntelProfilesArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteSecIntelProfilesDerived", "tags": ["Sites SecIntel Profiles"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/servicepolicies/derived": {"get": {"description": "Get the list of derived Service Policies for a 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": "Get the list of derived Services for a 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 by Distinct Attributes of Service Path Events", "operationId": "countSiteServicePathEvents", "parameters": [{"description": "Field used to group this count response. enum: `mac`, `model`, `policy`, `port_id`, `site_id`, `type`, `vpn_name`, `vpn_path`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_service_events_count_distinct"}}, {"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": "Filter results by vpn name", "in": "query", "name": "vpn_name", "schema": {"type": "string"}}, {"description": "Filter results by vpn path", "in": "query", "name": "vpn_path", "schema": {"type": "string"}}, {"description": "Service policy associated with that specific path", "in": "query", "name": "policy", "schema": {"type": "string"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"description": "Filter results by 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": "Port ID of the peer gateway", "in": "query", "name": "peer_port_id", "schema": {"type": "string"}}, {"description": "MAC address of the peer gateway", "in": "query", "name": "peer_mac", "schema": {"type": "string"}}, {"description": "Filter results by vpn name", "in": "query", "name": "vpn_name", "schema": {"type": "string"}}, {"description": "Filter results by vpn path", "in": "query", "name": "vpn_path", "schema": {"type": "string"}}, {"description": "Service policy associated with that specific path", "in": "query", "name": "policy", "schema": {"type": "string"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"type": "string"}}, {"description": "Filter results by 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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 the 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": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "vlan_ids": "1, 10, 50"}}}]}, "ap_port_config": {"model_specific": {"AP32": {"eth1,eth2": {"port_vlan_id": 1, "vlan_ids": "1, 10, 50"}}}}, "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"}, "config_auto_revert": false, "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"}}, "gateway_additional_config_cmds": ["set snmp community public"], "gateway_mgmt": {"admin_sshkeys": ["string"], "app_probing": {"apps": ["string"], "custom_apps": [{"app_type": "string", "hostnames": ["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": "192.168.1.1", "security_log_source_interface": "string"}, "led": {"brightness": 255, "enabled": true}, "mxedge_mgmt": {"mist_password": "MIST_PASSWORD", "root_password": "ROOT_PASSWORD"}, "networks": {"property1": {"gateway": "string", "subnet": "string", "vlan_id": 10}, "property2": {"gateway": "string", "subnet": "string", "vlan_id": 10}}, "ntp_servers": ["string"], "occupancy": {"assets_enabled": false, "clients_enabled": true, "min_duration": 3000, "sdkclients_enabled": false, "unconnected_clients_enabled": false}, "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": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["ge-0/0/3"], "output_network": "analyze", "output_port_id": "ge-0/0/5"}, "property2": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "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/*"}, "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:*"]}, "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}}, "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"]}, "vars": {"RADIUS_IP1": "172.31.2.5", "RADIUS_SECRET": "11s64632d"}, "vna": {"enabled": false}, "wan_vna": {"enabled": false}, "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.\n\nRetrieve the current clients list `blacklist_url` under Site:Setting", "operationId": "createSiteWirelessClientsBlocklist", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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/derived": {"get": {"description": "Get the Derived Site Settings, generated by merging the Org level templates (network templates, gateway templates) and the Site level configuration. If the same parameter is defined in both scopes, the Site level one is used. In addition, the Zoom and Teams accounts are also merged into the derived settings.", "operationId": "getSiteSettingDerived", "responses": {"200": {"$ref": "#/components/responses/SiteSettingsDerived"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteSettingDerived", "tags": ["Sites Setting"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/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.\n\nRetrieve the current clients list from `watched_station_url` under Site:Setting", "operationId": "createSiteWatchedStations", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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.\n\nRetrieve 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 the list of derived Site Templates for Site", "operationId": "listSiteSiteTemplatesDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"type": "boolean"}}], "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": "listSiteSiteTemplatesDerived", "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": [{"description": "Field used to group this count response. enum: `device_mac`, `mac`, `threat_level`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_sky_atp_events_count_distinct"}}, {"description": "Event type, e.g. cc, fs, mw", "in": "query", "name": "type", "schema": {"type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by device MAC address", "in": "query", "name": "device_mac", "schema": {"type": "string"}}, {"description": "Filter results by threat level", "in": "query", "name": "threat_level", "schema": {"type": "integer"}}, {"$ref": "#/components/parameters/ip"}, {"$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": "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": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter results by device MAC address", "in": "query", "name": "device_mac", "schema": {"type": "string"}}, {"description": "Filter results by 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"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": {"deprecated": true, "description": "Get SLE classifier details\n\n\nThis API Endpoint is deprecated and replaced by [Get Site SLE Classifier Summary Trend](/#operations/getSiteSleClassifierSummaryTrend)", "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": {"$ref": "#/components/schemas/sle_summary_scope"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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}/classifier/{classifier}/summary-trend": {"get": {"description": "Get SLE classifier Summary Trend", "operationId": "getSiteSleClassifierSummaryTrend", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/SleClassifierSummaryTrend"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteSleClassifierSummaryTrend", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/sle_summary_scope"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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": "List classifiers for a specific metric", "operationId": "listSiteSleMetricClassifiers", "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": "listSiteSleMetricClassifiers", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_metric_classifiers_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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": {"$ref": "#/components/schemas/site_sle_histogram_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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"}, {"description": "Additional response fields to include, as a comma-separated list or `*` for all fields. enum: `ap`, `band`, `chassis`, `client`, `device_os`, `device_type`, `gateway`, `gateway_zones`, `interface`, `mxedge`, `peer_path`, `server`, `switch`, `vlan`, `wlan`", "in": "query", "name": "fields", "schema": {"$ref": "#/components/schemas/site_sle_impact_summary_fields_parameter"}}, {"description": "Filter SLE impact results by classifier", "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": {"$ref": "#/components/schemas/site_sle_impact_summary_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted interfaces optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedApplications", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedApplications", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_scope"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted APs optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedAps", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedAps", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_aps_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted interfaces optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedChassis", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedChassis", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_chassis_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted interfaces optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedWiredClients", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedWiredClients", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_clients_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted interfaces optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedGateways", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedGateways", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_gateways_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted interfaces optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedInterfaces", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedInterfaces", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_interfaces_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted switches optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedSwitches", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedSwitches", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_switches_scope_parameters"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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. List the impacted wireless users optionally filtered by classifier and failure type", "operationId": "listSiteSleImpactedWirelessClients", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"description": "Filter SLE impact results by classifier", "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": "listSiteSleImpactedWirelessClients", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_impacted_users_scope_parameter"}}, {"in": "path", "name": "scope_id", "required": true, "schema": {"format": "uuid", "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "in": "path", "name": "metric", "required": true, "schema": {"type": "string"}}]}, "/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/summary": {"get": {"deprecated": true, "description": "Get the summary for the SLE metric\n\n\nThis API Endpoint is deprecated and replaced by [Get Site SLE Summary Trend](/#operations/getSiteSleSummaryTrend)", "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": {"$ref": "#/components/schemas/site_sle_metric_summary_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "in": "path", "name": "metric", "required": true, "schema": {"type": "string"}}]}, "/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/summary-trend": {"get": {"description": "Get the summary for the SLE metric trend", "operationId": "getSiteSleSummaryTrend", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/SleSummaryTrend"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteSleSummaryTrend", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_metric_summary_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "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": {"$ref": "#/components/schemas/site_sle_threshold_scope_parameter"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* mac if `scope`==`client`", "in": "path", "name": "scope_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "type": "string"}}, {"description": "Values from `listSiteSlesMetrics`", "in": "path", "name": "metric", "required": true, "schema": {"examples": ["asymmetry-uplink"], "type": "string"}}], "post": {"description": "Replace the SLE threshold", "operationId": "replaceSiteSleThreshold", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": {"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": "List the metrics for the given scope", "operationId": "listSiteSlesMetrics", "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": "listSiteSlesMetrics", "tags": ["Sites SLEs"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"in": "path", "name": "scope", "required": true, "schema": {"$ref": "#/components/schemas/site_sle_metrics_scope_parameters"}}, {"description": "* site_id if `scope`==`site`\n* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`\n* 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": "upgradeSsr", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "upgradeSsr", "tags": ["Utilities Upgrade"]}}, "/api/v1/sites/{site_id}/stats": {"get": {"description": "Get Sites Stats", "operationId": "getSiteStats", "responses": {"200": {"content": {"application/json": {"examples": {"Example": {"value": {"address": "string", "alarmtemplate_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "country_code": "string", "created_time": 0, "id": "55c29ce5-7c0f-45b5-b99b-599f805fa3a1", "lat": 0, "latlng": {"lat": 0, "lng": 0}, "lng": 0, "modified_time": 0, "msp_id": "dca3cad3-0c9b-439b-814f-8d5f23797972", "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/stats_site"}}}, "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/analyze_spectrum": {"get": {"description": "List the past spectrum analysis for a site", "operationId": "listSiteSpectrumAnalysis", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/PastSpectrumAnalysis"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteSpectrumAnalysis", "tags": ["Sites Spectrum Analysis"]}, "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": "Field used to group application statistics count results. enum: `ap`, `app`, `category`, `device_mac`, `port_id`, `service`, `src_ip`, `ssid`, `wcid`, `wlan_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_apps_count_distinct"}}, {"description": "MAC of the device", "in": "query", "name": "device_mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by application name", "in": "query", "name": "app", "schema": {"examples": ["Example App"], "type": "string"}}, {"description": "If a device is wired or wireless. Default is False.", "in": "query", "name": "wired", "schema": {"examples": ["False"], "type": "string"}}, {"$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": "countSiteApps", "tags": ["Sites Stats - Apps"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/assets": {"get": {"description": "List asset statistics for a site over the requested time range. Use [List Org Asset Stats](/#operations/listOrgAssetsStats) to retrieve asset statistics across the organization.", "operationId": "listSiteAssetsStats", "parameters": [{"description": "Filter assets by map UUID", "in": "query", "name": "map_id", "schema": {"format": "uuid", "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/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 - Assets"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/assets/count": {"get": {"description": "Count by Distinct Attributes of Site Asset", "operationId": "countSiteAssets", "parameters": [{"description": "Field used to group this count response. enum: `by`, `device_name`, `eddystone_uid_instance`, `eddystone_uid_namespace`, `eddystone_url`, `ibeacon_major`, `ibeacon_minor`, `ibeacon_uuid`, `mac`, `map_id`, `name`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_assets_count_distinct"}}, {"$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": "countSiteAssets", "tags": ["Sites Stats - Assets"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/assets/search": {"get": {"description": "Search asset statistics for a site with filters for asset identifiers, device, map, beacon, AP, RSSI, and time range. Use [Search Org Assets](/#operations/searchOrgAssets) to search asset statistics across the organization.", "operationId": "searchSiteAssets", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by map identifier", "in": "query", "name": "map_id", "schema": {"examples": ["b069b358-4c97-5319-1f8c-7c5ca64d6ab1"], "type": "string"}}, {"description": "Filter asset results by iBeacon UUID", "in": "query", "name": "ibeacon_uuid", "schema": {"examples": ["3ce2ef69-4414-469d-9d55-3ec7fcc38520"], "type": "string"}}, {"description": "Filter asset results by iBeacon major value", "in": "query", "name": "ibeacon_major", "schema": {"examples": [1], "type": "integer"}}, {"description": "Filter asset results by iBeacon minor value", "in": "query", "name": "ibeacon_minor", "schema": {"examples": [1], "type": "integer"}}, {"description": "Filter asset results by Eddystone UID namespace", "in": "query", "name": "eddystone_uid_namespace", "schema": {"examples": ["1234567890abcdef1234567890abcdef"], "type": "string"}}, {"description": "Filter asset results by Eddystone UID instance", "in": "query", "name": "eddystone_uid_instance", "schema": {"examples": ["1234567890abcdef1234567890abcdef"], "type": "string"}}, {"description": "Filter asset results by Eddystone URL", "in": "query", "name": "eddystone_url", "schema": {"examples": ["https://example.com"], "type": "string"}}, {"description": "Filter asset results by reporting device name", "in": "query", "name": "device_name", "schema": {"examples": ["Device Name"], "type": "string"}}, {"description": "Select how the value should be returned", "in": "query", "name": "by", "schema": {"examples": ["mac"], "type": "string"}}, {"description": "Filter results by name", "in": "query", "name": "name", "schema": {"examples": ["Asset Name"], "type": "string"}}, {"description": "Filter asset results by reporting AP MAC address", "in": "query", "name": "ap_mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter asset results by beam value", "in": "query", "name": "beam", "schema": {"examples": ["0"], "type": "string"}}, {"description": "Filter asset results by RSSI value", "in": "query", "name": "rssi", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Assets"]}, "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 - Assets"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/asset_id"}]}, "/api/v1/sites/{site_id}/stats/beacons": {"get": {"description": "Get List of Site Beacons Stats", "operationId": "listSiteBeaconsStats", "parameters": [{"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/stats_beacons"}}}, "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 - Beacons"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/bgp_peers/count": {"get": {"description": "Count BGP peer statistics for a site, optionally grouped by the `distinct` field and filtered by peer state. Use [Count Org BGP Stats](/#operations/countOrgBgpStats) to count BGP peer statistics across the organization.", "operationId": "countSiteBgpStats", "parameters": [{"description": "Filter peer results by state", "in": "query", "name": "state", "schema": {"examples": ["established"], "type": "string"}}, {"description": "Field used to group this count response", "in": "query", "name": "distinct", "schema": {"examples": ["site_id"], "type": "string"}}, {"$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": "countSiteBgpStats", "tags": ["Sites Stats - BGP Peers"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/bgp_peers/search": {"get": {"description": "Search BGP peer statistics for a site with filters for device, neighbor, VRF, and time range. Use [Search Org BGP Stats](/#operations/searchOrgBgpStats) to search BGP peer statistics across the organization.", "operationId": "searchSiteBgpStats", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter peer results by neighbor MAC address", "in": "query", "name": "neighbor_mac", "schema": {"type": "string"}}, {"description": "Filter peer results by VRF name", "in": "query", "name": "vrf_name", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - BGP Peers"]}, "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": "Filter results by meeting identifier", "in": "query", "name": "meeting_id", "required": true, "schema": {"examples": ["1234567890abcdef"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Third party app name", "in": "query", "name": "app", "schema": {"examples": ["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 Stats - 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": [{"description": "Field used to group this count response. enum: `mac`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/count_site_calls_distinct"}}, {"description": "Feedback rating (e.g. \"rating=1\" or \"rating=1,2\")", "in": "query", "name": "rating", "schema": {"examples": [5], "maximum": 5, "minimum": 1, "type": "integer"}}, {"description": "Filter application statistics by application name", "in": "query", "name": "app", "schema": {"examples": ["zoom"], "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": "countSiteCalls", "tags": ["Sites Stats - Calls"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/calls/search": {"get": {"description": "Search Calls", "operationId": "searchSiteCalls", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Third party app name", "in": "query", "name": "app", "schema": {"examples": ["zoom"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Calls"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/calls/summary": {"get": {"description": "Summarized, aggregated stats for the site calls", "operationId": "getSiteCallsSummary", "parameters": [{"description": "Filter results by AP MAC address", "in": "query", "name": "ap_mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by application name", "in": "query", "name": "app", "schema": {"examples": ["zoom"], "type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}], "responses": {"200": {"$ref": "#/components/responses/CallStatsSummary"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "getSiteCallsSummary", "tags": ["Sites Stats - 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": "Filter results by AP MAC address", "in": "query", "name": "ap", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by meeting identifier", "in": "query", "name": "meeting_id", "schema": {"examples": ["1234567890abcdef"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Third party app name", "in": "query", "name": "app", "schema": {"examples": ["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/CallTroubleshootSummary"}, "400": {"$ref": "#/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 Stats - Calls"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/clients": {"get": {"description": "Get List of Site All Clients Stats Details", "operationId": "listSiteWirelessClientsStats", "parameters": [{"description": "Filter results by whether the client is wired", "in": "query", "name": "wired", "schema": {"default": false, "examples": [false], "type": "boolean"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}], "responses": {"200": {"$ref": "#/components/responses/ClientStatsArray"}, "400": {"$ref": "#/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 Stats - Clients Wireless"]}, "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": [{"description": "Filter results by whether the client is wired", "in": "query", "name": "wired", "schema": {"default": false, "examples": [false], "type": "boolean"}}], "responses": {"200": {"$ref": "#/components/responses/ClientStats"}, "400": {"$ref": "#/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 Stats - Clients Wireless"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/client_mac"}]}, "/api/v1/sites/{site_id}/stats/devices": {"get": {"description": "List device statistics for a site, including high-level status and performance fields over the requested time range. Use [List Org Device Stats](/#operations/listOrgDevicesStats) to retrieve device statistics across the organization.", "operationId": "listSiteDevicesStats", "parameters": [{"description": "Filter results by type", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_with_all"}}, {"description": "Filter results by status. enum: `all`, `connected`, `disconnected`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/stat_device_status_filter"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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 Stats - Devices"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/devices/{device_id}": {"get": {"description": "Get Site Device Stats Details", "operationId": "getSiteDeviceStats", "parameters": [{"$ref": "#/components/parameters/fields"}], "responses": {"200": {"$ref": "#/components/responses/DeviceStats"}, "400": {"$ref": "#/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 Stats - Devices"]}, "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/stats_wireless_clients"}}}, "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 Stats - Devices"]}, "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/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/assets"}}}, "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 - Assets"]}, "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": "Filter results by scope. enum: `site`, `switch`", "in": "query", "name": "scope", "schema": {"$ref": "#/components/schemas/discovered_switches_metric_scope"}}, {"description": "Metric type. enum: `inactive_wired_vlans`, `poe_compliance`, `switch_ap_affinity`, `version_compliance`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/discovered_switch_metric_type"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Discovered Switches"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/discovered_switches/count": {"get": {"description": "Count Discovered Switches", "operationId": "countSiteDiscoveredSwitches", "parameters": [{"description": "Field used to group this count response. enum: `mgmt_addr`, `model`, `system_name`, `version`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_discovered_switches_count_distinct"}}, {"$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": "countSiteDiscoveredSwitches", "tags": ["Sites Stats - Discovered Switches"]}, "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": "listSiteDiscoveredSwitchesMetrics", "parameters": [{"description": "Configurable # ap per switch threshold, default 12", "in": "query", "name": "threshold", "schema": {"examples": ["12"], "type": "string"}}, {"description": "System name for switch level metrics, optional", "in": "query", "name": "system_name", "schema": {"examples": ["switch1.example.com"], "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": "listSiteDiscoveredSwitchesMetrics", "tags": ["Sites Stats - Discovered Switches"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/discovered_switches/search": {"get": {"description": "Search Discovered Switches", "operationId": "searchSiteDiscoveredSwitches", "parameters": [{"description": "Filter results by whether the device is adopted", "in": "query", "name": "adopted", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter discovered switch results by system name", "in": "query", "name": "system_name", "schema": {"examples": ["switch1.example.com"], "type": "string"}}, {"description": "Filter results by hostname", "in": "query", "name": "hostname", "schema": {"examples": ["switch1"], "type": "string"}}, {"description": "Filter results by vendor", "in": "query", "name": "vendor", "schema": {"examples": ["Cisco"], "type": "string"}}, {"description": "Filter results by device model", "in": "query", "name": "model", "schema": {"examples": ["WS-C3850-24P"], "type": "string"}}, {"description": "Filter results by software version", "in": "query", "name": "version", "schema": {"examples": ["1.0.0"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Discovered Switches"]}, "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/limit"}, {"$ref": "#/components/parameters/page"}], "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 Stats - 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 Stats - Devices"]}, "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/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "responses": {"200": {"$ref": "#/components/responses/ClientWirelessStatsArray"}, "400": {"$ref": "#/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 - Clients Wireless"]}, "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/stats_assets"}}}, "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 - Assets"]}, "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/stats_sdkclients"}}}, "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 - Clients SDK"]}, "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": {"value": [{"ap_mac": "5c5b350e0410", "last_seen": 1428939600, "mac": "5684dae9ac8b", "manufacture": "Apple", "rssi": -75, "x": 60, "y": 80}]}}, "schema": {"$ref": "#/components/schemas/stats_unconnected_clients"}}}, "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 - Clients Wireless"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/map_id"}]}, "/api/v1/sites/{site_id}/stats/mxedges": {"get": {"description": "List Mist Edge statistics for a site over the requested time range. Use [List Org Mist Edge Stats](/#operations/listOrgMxEdgesStats) to retrieve Mist Edge statistics across the organization.", "operationId": "listSiteMxEdgesStats", "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/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 Stats - MxEdges"]}, "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 Stats - MxEdges"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/mxedge_id"}]}, "/api/v1/sites/{site_id}/stats/ospf_peers/count": {"get": {"description": "Count OSPF peer statistics for a site, optionally grouped by the `distinct` field and filtered by time range. Use [Count Org OSPF Stats](/#operations/countOrgOspfStats) to count OSPF peer statistics across the organization.", "operationId": "countSiteOspfStats", "parameters": [{"description": "Field used to group this count response. enum: `site_id`, `org_id`, `mac`, `peer_ip`, `port_id`, `state`, `vrf_name`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/ospf_peer_stats_count_distinct"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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": "countOrgOspfStats", "tags": ["Sites Stats - Ospf"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/ospf_peers/search": {"get": {"description": "Search OSPF peer statistics for a site with filters for device, VRF, peer IP, and time range. Use [Search Org OSPF Stats](/#operations/searchOrgOspfStats) to search OSPF peer statistics across the organization.", "operationId": "searchSiteOspfStats", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"type": "string"}}, {"description": "Filter peer results by VRF name", "in": "query", "name": "vrf_name", "schema": {"type": "string"}}, {"description": "Filter peer results by peer IP address", "in": "query", "name": "peer_ip", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "responses": {"200": {"$ref": "#/components/responses/OspfPeersStatsSearch"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchSiteOspfStats", "tags": ["Sites Stats - Ospf"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/ports/count": {"get": {"description": "Count switch and gateway port statistics for a site, optionally grouped by the `distinct` field and filtered by port, neighbor, PoE, STP, traffic, and time attributes. Use [Count Org Switch/Gateway Ports](/#operations/countOrgSwOrGwPorts) to count switch and gateway port statistics across the organization.", "operationId": "countSiteSwOrGwPorts", "parameters": [{"description": "Field used to group this count response. enum: `full_duplex`, `mac`, `neighbor_mac`, `neighbor_port_desc`, `neighbor_system_name`, `poe_disabled`, `poe_mode`, `poe_on`, `port_id`, `port_mac`, `speed`, `up`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_ports_count_distinct"}}, {"description": "Indicates full or half duplex", "in": "query", "name": "full_duplex", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["5c5b350e0410"], "type": "string"}}, {"description": "Chassis identifier of the chassis type listed", "in": "query", "name": "neighbor_mac", "schema": {"examples": ["5c5b350e0410"], "type": "string"}}, {"description": "Description supplied by the system on the interface E.g. \"GigabitEthernet2/0/39\"", "in": "query", "name": "neighbor_port_desc", "schema": {"examples": ["ge-2/0/39"], "type": "string"}}, {"description": "Name supplied by the system on the interface E.g. neighbor system name E.g. \"Kumar-Acc-SW.mist.local\"", "in": "query", "name": "neighbor_system_name", "schema": {"examples": ["Kumar-Acc-SW.mist.local"], "type": "string"}}, {"description": "Is the POE configured not be disabled.", "in": "query", "name": "poe_disabled", "schema": {"examples": [false], "type": "boolean"}}, {"description": "POE mode depending on class E.g. \"802.3at\"", "in": "query", "name": "poe_mode", "schema": {"examples": ["802.3at"], "type": "string"}}, {"description": "Is the device attached to POE", "in": "query", "name": "poe_on", "schema": {"examples": [true], "type": "boolean"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"examples": ["ge-2/0/39"], "type": "string"}}, {"description": "Filter results by port MAC address", "in": "query", "name": "port_mac", "schema": {"examples": ["5c5b350e0410"], "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": {"examples": [15.4], "type": "number"}}, {"description": "Filter results by transmitted packet count", "in": "query", "name": "tx_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received packet count", "in": "query", "name": "rx_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received byte count", "in": "query", "name": "rx_bytes", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmit rate", "in": "query", "name": "tx_bps", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by receive rate", "in": "query", "name": "rx_bps", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmitted multicast packet count", "in": "query", "name": "tx_mcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by transmitted broadcast packet count", "in": "query", "name": "tx_bcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received multicast packet count", "in": "query", "name": "rx_mcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by received broadcast packet count", "in": "query", "name": "rx_bcast_pkts", "schema": {"examples": [1000000], "type": "integer"}}, {"description": "Filter results by port speed", "in": "query", "name": "speed", "schema": {"examples": [1000000000], "type": "integer"}}, {"description": "STP state used to filter port results when `up`==`true`. enum: `\"\"`, `blocking`, `disabled`, `forwarding`, `learning`, `listening`", "in": "query", "name": "stp_state", "schema": {"$ref": "#/components/schemas/port_stp_state"}}, {"description": "STP role used to filter port results when `up`==`true`. enum: `\"\"`, `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`", "in": "query", "name": "stp_role", "schema": {"$ref": "#/components/schemas/port_stp_role"}}, {"description": "Authentication state used to filter port results when `up`==`true` and the port has an authenticator role. enum: `\"\"`, `authenticated`, `authenticating`, `held`, `init`", "in": "query", "name": "auth_state", "schema": {"$ref": "#/components/schemas/port_auth_state"}}, {"description": "Indicates if interface is up", "in": "query", "name": "up", "schema": {"examples": [true], "type": "boolean"}}, {"$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": "countSiteSwOrGwPorts", "tags": ["Sites Stats - Ports"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/ports/search": {"get": {"description": "Search switch and gateway port statistics for a site.\nReturns ports that match the search criteria, including current or most recent port status and statistics within the hour.\n\nTraffic information (Tx/Rx) is reported as cumulative counters since the last device reboot. Use [Search Org Switch/Gateway Ports](/#operations/searchOrgSwOrGwPorts) to search switch and gateway port statistics across the organization.", "operationId": "searchSiteSwOrGwPorts", "parameters": [{"description": "Type of device. enum: `switch`, `gateway`, `all`", "in": "query", "name": "device_type", "schema": {"$ref": "#/components/schemas/search_org_sw_or_gw_ports_type"}}, {"description": "Authentication state used to filter port results when `up`==`true` and the port has an authenticator role. enum: `\"\"`, `authenticated`, `authenticating`, `held`, `init`", "in": "query", "name": "auth_state", "schema": {"$ref": "#/components/schemas/port_auth_state"}}, {"description": "Indicates full or half duplex", "in": "query", "name": "full_duplex", "schema": {"type": "boolean"}}, {"description": "LTE IMSI value, Check for null/empty", "in": "query", "name": "lte_imsi", "schema": {"examples": ["310260000000001"], "type": "string"}}, {"description": "LTE ICCID value, Check for null/empty", "in": "query", "name": "lte_iccid", "schema": {"examples": ["89014103211118510720"], "type": "string"}}, {"description": "LTE IMEI value, Check for null/empty", "in": "query", "name": "lte_imei", "schema": {"examples": ["123456789012345"], "type": "string"}}, {"description": "Filter results by MAC address", "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. \"GigabitEthernet2/0/39\"", "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. \"Kumar-Acc-SW.mist.local\"", "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. \"802.3at\"", "in": "query", "name": "poe_mode", "schema": {"type": "string"}}, {"description": "Is the device attached to POE", "in": "query", "name": "poe_on", "schema": {"type": "boolean"}}, {"description": "PoE priority used to filter switch port results. enum: `low`, `high`", "in": "query", "name": "poe_priority", "schema": {"$ref": "#/components/schemas/poe_priority"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"type": "string"}}, {"description": "Filter results by port MAC address", "in": "query", "name": "port_mac", "schema": {"type": "string"}}, {"description": "Filter results by port speed", "in": "query", "name": "speed", "schema": {"type": "integer"}}, {"description": "STP state used to filter port results when `up`==`true`. enum: `\"\"`, `blocking`, `disabled`, `forwarding`, `learning`, `listening`", "in": "query", "name": "stp_state", "schema": {"$ref": "#/components/schemas/port_stp_state"}}, {"description": "STP role used to filter port results when `up`==`true`. enum: `\"\"`, `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`", "in": "query", "name": "stp_role", "schema": {"$ref": "#/components/schemas/port_stp_role"}}, {"description": "Indicates if interface is up", "in": "query", "name": "up", "schema": {"type": "boolean"}}, {"description": "Optic Slot Partnumber, Check for null/empty", "in": "query", "name": "xcvr_part_number", "schema": {"examples": ["SFP-10G-SR"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 Stats - Ports"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/rssizones": {"get": {"description": "Get List of Site RSSI Zones Stats", "operationId": "listSiteRssiZonesStats", "responses": {"200": {"$ref": "#/components/responses/RssiZoneStatsArray"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "listSiteRssiZonesStats", "tags": ["Sites Stats - Zones"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/rssizones/{zone_id}": {"get": {"description": "Get Detail RSSI Zone Stats", "operationId": "getSiteRssiZoneStats", "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": "getSiteRssiZoneStats", "tags": ["Sites Stats - Zones"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/zone_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": {"value": {"id": "d56bd5fa-0a0a-4861-a9df-5ac83d3a2eeb", "last_seen": 1428939600, "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/sdkstats_wireless_client"}}}, "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 - Clients SDK"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/sdkclient_id"}]}, "/api/v1/sites/{site_id}/stats/switches/metrics": {"get": {"description": "Get version compliance metrics for managed or monitored switches", "operationId": "getSiteSwitchesMetrics", "parameters": [{"description": "Filter results by type. enum: `active_ports_summary`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/switch_metric_type"}}, {"description": "Filter results by scope. enum: `site`, `switch`", "in": "query", "name": "scope", "schema": {"$ref": "#/components/schemas/switch_metric_scope"}}, {"description": "Switch mac, used only with metric `type`==`active_ports_summary`", "in": "query", "name": "switch_mac", "schema": {"examples": ["5c5b350e0410"], "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 Stats - Devices"]}, "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 - WxRules"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/zones": {"get": {"description": "Get List of Site Zones Stats", "operationId": "listSiteZonesStats", "parameters": [{"description": "Filter results by map identifier", "in": "query", "name": "map_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000000"], "type": "string"}}, {"description": "Filter results by minimum duration", "in": "query", "name": "min_duration", "schema": {"examples": [120], "type": "integer"}}], "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 - Zones"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/stats/zones/{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 - Zones"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$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": {"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/synthetictest"}}}}, "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": ["Sites Synthetic Tests"]}}, "/api/v1/sites/{site_id}/synthetic_test/search": {"get": {"description": "Search Site Synthetic Testing", "operationId": "searchSiteSyntheticTest", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["5c5b350e0410"], "type": "string"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"examples": ["ge-1/0/1"], "type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan_id", "schema": {"examples": ["100"], "type": "string"}}, {"description": "Entity who triggers the test", "in": "query", "name": "by", "schema": {"examples": ["user"], "type": "string"}}, {"description": "Filter results by reason", "in": "query", "name": "reason", "schema": {"examples": ["test failed"], "type": "string"}}, {"description": "Synthetic test type used to filter results. enum: `arp`, `curl`, `dhcp`, `dhcp6`, `dns`, `lan_connectivity`, `radius`, `speedtest`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/synthetictest_type"}}, {"description": "Connectivity protocol used to filter synthetic test results. enum: `ping`, `traceroute`", "in": "query", "name": "protocol", "schema": {"$ref": "#/components/schemas/synthetictest_protocol"}}, {"description": "Filter results by tenant network", "in": "query", "name": "tenant", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/search_after"}], "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": ["Sites Synthetic Tests"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/uisettings": {"get": {"description": "List the Site UI settings/databoard", "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": "Create a Site UI settings/databoard", "operationId": "createSiteUiSettings", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"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", "isCustomDataboard": true, "isScopeLinked": true, "isTimeRangeLinked": true, "name": "New Databoard", "purpose": "databoard", "tiles": [{"chartBand": "2.4 ghz", "chartColor": "#00B4AD", "chartDirection": "tx + rx", "chartRankBy": "string", "chartType": "timeSeries", "colspan": 5, "column": 1, "hideEmptyRows": true, "metric": {"apiName": "client_dhcp_latency"}, "name": "New Analysis", "row": 1, "rowspan": 2, "scopeId": "e0c767834b4c", "scopeType": "client", "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": "listSiteUiSettingDerived", "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": "listSiteUiSettingDerived", "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/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": "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": {"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", "isCustomDataboard": true, "isScopeLinked": true, "isTimeRangeLinked": true, "name": "New Databoard", "purpose": "databoard", "tiles": [{"chartBand": "2.4 ghz", "chartColor": "#00B4AD", "chartDirection": "tx + rx", "chartRankBy": "string", "chartType": "timeSeries", "colspan": 5, "column": 1, "hideEmptyRows": true, "metric": {"apiName": "client_dhcp_latency"}, "name": "New Analysis", "row": 1, "rowspan": 2, "scopeId": "e0c767834b4c", "scopeType": "client", "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"value": {"major": 0, "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": {"value": {"major": 0, "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": "Get the list of derived VPNs for a site", "operationId": "listSiteVpnsDerived", "parameters": [{"description": "Whether resolve the site variables", "in": "query", "name": "resolve", "schema": {"default": false, "examples": [true], "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 WAN client events for a site, optionally grouped by the `distinct` field and filtered by event type and time range. Use [Count Org WAN Client Events](/#operations/countOrgWanClientEvents) to count WAN client events across the organization.", "operationId": "countSiteWanClientEvents", "parameters": [{"description": "Field used to group this count response. enum: `hostname`, `ip`, `mac`, `mfg`, `type`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_wan_client_events_distinct"}}, {"$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 WAN clients for a site, optionally grouped by the `distinct` field and filtered by time range. Use [Count Org WAN Clients](/#operations/countOrgWanClients) to count WAN clients across the organization.", "operationId": "countSiteWanClients", "parameters": [{"description": "Field used to group this count response. enum: `hostname`, `ip`, `mac`, `mfg`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_wan_clients_count_distinct"}}, {"$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": "countSiteWanClients", "tags": ["Sites Clients - Wan"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/wan_clients/events/search": {"get": {"description": "Search WAN client events for a site with filters for client identity, manufacturer, NAC rule, event type, and time range. Use [Search Org WAN Client Events](/#operations/searchOrgWanClientEvents) to search WAN client events across the organization.", "operationId": "searchSiteWanClientEvents", "parameters": [{"$ref": "#/components/parameters/client_event_type"}, {"$ref": "#/components/parameters/partial_filter_mac_client"}, {"$ref": "#/components/parameters/partial_filter_hostname_client"}, {"description": "Filter results by IP address", "in": "query", "name": "ip", "schema": {"examples": ["10.4.2.4"], "type": "string"}}, {"description": "Filter results by manufacturer", "in": "query", "name": "mfg", "schema": {"examples": ["Juniper"], "type": "string"}}, {"description": "Filter results by NAC rule identifier", "in": "query", "name": "nacrule_id", "schema": {"examples": ["00000000-0000-0000-0000-000000000000"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 WAN clients for a site with filters for hostname, IP address, source IP, MAC address, manufacturer, network, and time range. Use [Search Org WAN Clients](/#operations/searchOrgWanClients) to search WAN clients across the organization.", "operationId": "searchSiteWanClients", "parameters": [{"$ref": "#/components/parameters/partial_filter_hostname_client"}, {"$ref": "#/components/parameters/partial_filter_ip_client"}, {"description": "Filter results by source IP address", "in": "query", "name": "ip_src", "schema": {"examples": ["dhcp"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["5c5b53010101"], "type": "string"}}, {"description": "Filter results by manufacturer", "in": "query", "name": "mfg", "schema": {"type": "string"}}, {"$ref": "#/components/parameters/partial_filter_network"}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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}/wan_usages/count": {"get": {"description": "Count Site WAN Usages", "operationId": "countSiteWanUsage", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by peer MAC address", "in": "query", "name": "peer_mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Port ID for the device", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/0"], "type": "string"}}, {"description": "Peer Port ID for the device", "in": "query", "name": "peer_port_id", "schema": {"examples": ["ge-0/0/0"], "type": "string"}}, {"description": "Filter results by WAN path policy", "in": "query", "name": "policy", "schema": {"type": "string"}}, {"description": "Filter results by tenant network", "in": "query", "name": "tenant", "schema": {"type": "string"}}, {"description": "Filter results by port path type", "in": "query", "name": "path_type", "schema": {"examples": ["primary"], "type": "string"}}, {"description": "Field used to group this count response. enum: `mac`, `path_type`, `peer_mac`, `peer_port_id`, `policy`, `port_id`, `tenant`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/wan_usages_count_distinct"}}, {"$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": "countSiteWanUsage", "tags": ["Sites WAN Usages"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/wan_usages/search": {"get": {"description": "Search Site WAN Usages", "operationId": "searchSiteWanUsage", "parameters": [{"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Filter results by peer MAC address", "in": "query", "name": "peer_mac", "schema": {"examples": ["001122334455"], "type": "string"}}, {"description": "Port ID for the device", "in": "query", "name": "port_id", "schema": {"examples": ["ge-0/0/0"], "type": "string"}}, {"description": "Peer Port ID for the device", "in": "query", "name": "peer_port_id", "schema": {"examples": ["ge-0/0/0"], "type": "string"}}, {"description": "Filter results by WAN path policy", "in": "query", "name": "policy", "schema": {"examples": ["primary"], "type": "string"}}, {"description": "Filter results by tenant network", "in": "query", "name": "tenant", "schema": {"type": "string"}}, {"description": "Filter results by port path type", "in": "query", "name": "path_type", "schema": {"examples": ["primary"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}], "responses": {"200": {"$ref": "#/components/responses/Wan_Usages"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "searchSiteWanUsage", "tags": ["Sites WAN Usages"]}, "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/limit"}, {"$ref": "#/components/parameters/page"}], "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\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\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 Wi-Fi, unconnected Wi-Fi). 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### Asset Filtering for Client Raw Data Webhooks\n\nThe `asset-raw-rssi` webhook topic supports filtering of raw data by incorporating asset filters in the webhook payload. \nThe filter topic allows multiple Webhooks to receive a subset of the a`asset-raw-rssi` data by assigning asset filters to a given webhook. The `asset-raw-rssi` filter topic is filtered-asset-rssi.\n\n\nA webhook assigned to a filter topic can take a list of AssetFilter IDs, which act as inclusive filters to determine which named asset and filtered asset data is sent to the assigned filter topic. Filters can be applied to multiple webhooks, and the same data can be sent to multiple filter topics.\n\n### Rules for Configuring Client Raw Data Webhooks\n\n1. Only four instances of a webhook object can contain a specific filter topic. - A site-level entry will override an org-level entry for the same client raw data webhook topic.\n2. An assigned asset filter must exist and belong to the same site as the webhook it is assigned to.\n", "operationId": "createSiteWebhook", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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/HTTP400Webhook"}, "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": {"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/count": {"get": {"description": "Count Site Webhooks deliveries\n\n\nTopics Supported:\n- alarms\n- audits\n- device-updowns\n- occupancy-alerts\n- ping", "operationId": "countSiteWebhooksDeliveries", "parameters": [{"description": "Filter webhook delivery results by error message", "in": "query", "name": "error", "schema": {"examples": ["Webhook delivery failed"], "type": "string"}}, {"description": "Filter webhook delivery results by HTTP status code", "in": "query", "name": "status_code", "schema": {"examples": [200], "type": "integer"}}, {"description": "Webhook delivery status used to filter results. enum: `failure`, `success`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/webhook_delivery_status"}}, {"description": "Webhook topic used to filter results. enum: `alarms`, `audits`, `device-updowns`, `occupancy-alerts`, `ping`", "in": "query", "name": "topic", "schema": {"$ref": "#/components/schemas/webhook_delivery_topic"}}, {"description": "Field used to group this count response. enum: `status`, `status_code`, `topic`, `webhook_id`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/webhook_delivery_distinct"}}, {"$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": "countSiteWebhooksDeliveries", "tags": ["Sites Webhooks"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}, {"$ref": "#/components/parameters/webhook_id"}]}, "/api/v1/sites/{site_id}/webhooks/{webhook_id}/events/search": {"get": {"description": "Search Site Webhooks deliveries\n\n\nTopics Supported:\n- alarms\n- audits\n- device-updowns\n- occupancy-alerts\n- ping", "operationId": "searchSiteWebhooksDeliveries", "parameters": [{"description": "Filter webhook delivery results by error message", "in": "query", "name": "error", "schema": {"examples": ["Webhook delivery failed"], "type": "string"}}, {"description": "Filter webhook delivery results by HTTP status code", "in": "query", "name": "status_code", "schema": {"examples": [200], "type": "integer"}}, {"description": "Webhook delivery status used to filter results. enum: `failure`, `success`", "in": "query", "name": "status", "schema": {"$ref": "#/components/schemas/webhook_delivery_status"}}, {"description": "Webhook topic used to filter results. enum: `alarms`, `audits`, `device-updowns`, `occupancy-alerts`, `ping`", "in": "query", "name": "topic", "schema": {"$ref": "#/components/schemas/webhook_delivery_topic"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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 wired clients for a site, optionally grouped by the `distinct` field and filtered by MAC address, switch port, VLAN, and time range. Use [Count Org Wired Clients](/#operations/countOrgWiredClients) to count wired clients across the organization.", "operationId": "countSiteWiredClients", "parameters": [{"description": "Field used to group this count response. enum: `mac`, `port_id`, `vlan`", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_wired_clients_count_distinct"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["0123456789ab"], "type": "string"}}, {"description": "Filter results by device MAC address", "in": "query", "name": "device_mac", "schema": {"examples": ["0123456789ab"], "type": "string"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"examples": ["ge-1/1/1"], "type": "string"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"examples": ["10"], "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": "countSiteWiredClients", "tags": ["Sites Clients - Wired"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/wired_clients/search": {"get": {"description": "Search wired clients for a site with filters for device MAC address, client MAC address, IP address, switch port, VLAN, manufacturer, DHCP attributes, NAC rule, and time range. Use [Search Org Wired Clients](/#operations/searchOrgWiredClients) to search wired clients across the organization.", "operationId": "searchSiteWiredClients", "parameters": [{"description": "Filter results by device MAC address", "in": "query", "name": "device_mac", "schema": {"examples": ["0123456789ab"], "type": "string"}}, {"description": "Filter results by MAC address", "in": "query", "name": "mac", "schema": {"examples": ["0123456789ab"], "type": "string"}}, {"description": "Filter results by IP address", "in": "query", "name": "ip", "schema": {"examples": ["10.3.5.12"], "type": "string"}}, {"description": "Filter results by port identifier", "in": "query", "name": "port_id", "schema": {"examples": ["ge-1/1/1"], "type": "string"}}, {"description": "Filter results by client learning source. enum: `lldp`, `mac`", "in": "query", "name": "source", "schema": {"$ref": "#/components/schemas/client_info_source"}}, {"description": "Filter results by VLAN ID", "in": "query", "name": "vlan", "schema": {"examples": ["10"], "type": "string"}}, {"description": "Filter results by manufacturer", "in": "query", "name": "manufacture", "schema": {"examples": ["Juniper-Mist"], "type": "string"}}, {"description": "Single entry of hostname/mac", "in": "query", "name": "text", "schema": {"examples": ["client-hostname"], "type": "string"}}, {"description": "Filter results by NAC rule identifier", "in": "query", "name": "nacrule_id", "schema": {"examples": ["8bfc2490-d726-3587-038d-cb2e71bd2330"], "type": "string"}}, {"description": "Filter results by DHCP hostname", "in": "query", "name": "dhcp_hostname", "schema": {"examples": ["client-hostname"], "type": "string"}}, {"description": "Filter results by DHCP FQDN", "in": "query", "name": "dhcp_fqdn", "schema": {"examples": ["client.example.com"], "type": "string"}}, {"description": "Filter results by DHCP client identifier", "in": "query", "name": "dhcp_client_identifier", "schema": {"examples": ["01:23:45:67:89:ab"], "type": "string"}}, {"description": "DHCP Vendor Class Identifier", "in": "query", "name": "dhcp_vendor_class_identifier", "schema": {"examples": ["Juniper-Mist-AP,Juniper-Mist-Client"], "type": "string"}}, {"description": "Filter results by DHCP request parameters", "in": "query", "name": "dhcp_request_params", "schema": {"examples": ["hostname,domain-name,domain-name-servers"], "type": "string"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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}/wired_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 Wired client", "operationId": "reauthSiteDot1xWiredClient", "responses": {"200": {"$ref": "#/components/responses/ReauthWiredClient"}, "400": {"$ref": "#/components/responses/HTTP400"}, "401": {"$ref": "#/components/responses/HTTP401"}, "403": {"$ref": "#/components/responses/HTTP403"}, "404": {"$ref": "#/components/responses/HTTP404"}, "429": {"$ref": "#/components/responses/HTTP429"}}, "summary": "reauthSiteDot1xWiredClient", "tags": ["Utilities LAN"]}}, "/api/v1/sites/{site_id}/wlans": {"get": {"description": "Get List of Site WLANs", "operationId": "listSiteWlans", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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, "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": "10,20", "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": 1000, "client_limit_down_enabled": false, "client_limit_up": 512, "client_limit_up_enabled": false, "coa_servers": [{"disable_event_timestamp_check": false, "enabled": false, "ip": "1.2.3.4", "port": 3799, "secret": "testing456"}], "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"}, "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, "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"}, "interface": "all", "isolation": false, "l2_isolation": false, "legacy_overds": false, "limit_bcast": false, "limit_probe_response": true, "max_idletime": 1800, "mist_nac": {"enabled": false}, "no_static_dns": false, "no_static_ip": false, "ssid": "demo"}}}, "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 the list of derived Wlans for a Site", "operationId": "listSiteWlansDerived", "parameters": [{"description": "Whether to resolve SITE_VARS", "in": "query", "name": "resolve", "schema": {"default": false, "examples": [true], "type": "boolean"}}, {"description": "Filter by WLAN ID", "in": "query", "name": "wlan_id", "schema": {"examples": ["8bfc2490-d726-3587-038d-cb2e71bd2330"], "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": "listSiteWlansDerived", "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, "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": "10,20", "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": 1000, "client_limit_down_enabled": false, "client_limit_up": 512, "client_limit_up_enabled": false, "coa_servers": [{"disable_event_timestamp_check": false, "enabled": false, "ip": "1.2.3.4", "port": 3799, "secret": "testing456"}], "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"}, "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, "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"}, "interface": "all", "isolation": false, "l2_isolation": false, "legacy_overds": false, "limit_bcast": false, "limit_probe_response": true, "max_idletime": 1800, "mist_nac": {"enabled": false}, "no_static_dns": false, "no_static_ip": false, "ssid": "demo"}}}, "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": {"delete": {"description": "Delete Site WLAN Portal Image", "operationId": "deleteSiteWlanPortalImage", "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": "deleteSiteWlanPortalImage", "tags": ["Sites Wlans"]}, "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\n\n#### Sponsor Email Template\nSponsor Email Template supports following template variables:\n\n| **Name** | **Description** |\n| --- | --- |\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| company | Renders value of the Company field |\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) |", "operationId": "updateSiteWlanPortalTemplate", "requestBody": {"content": {"application/json": {"examples": {"Example": {"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", "sponsorsFieldLabel": "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/limit"}, {"$ref": "#/components/parameters/page"}], "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"], "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, "order": 1, "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 the list of derived WxLan Rule for a site", "operationId": "ListSiteWxRulesDerived", "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": "ListSiteWxRulesDerived", "tags": ["Sites WxRules"]}, "parameters": [{"$ref": "#/components/parameters/site_id"}]}, "/api/v1/sites/{site_id}/wxrules/{wxrule_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/wxrule_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"], "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, "order": 1, "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"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": "updateSiteWxTag", "tags": ["Sites WxTags"]}}, "/api/v1/sites/{site_id}/wxtunnels": {"get": {"description": "Get List of Site WxLan Tunnels", "operationId": "listSiteWxTunnels", "parameters": [{"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"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": 1500, "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": {"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": 1500, "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/limit"}, {"$ref": "#/components/parameters/page"}], "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": {"value": {"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": {"value": {"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 by Distinct Attributes of Site Zone Sessions", "operationId": "countSiteZoneSessions", "parameters": [{"description": "Field used to group this count response. enum: `scope`, `scope_id`, `user`, `user_type`", "example": "scope_id", "in": "query", "name": "distinct", "schema": {"$ref": "#/components/schemas/site_zone_count_distinct"}}, {"description": "Filter results by user type. enum: `asset`, `client`, `sdkclient`", "in": "query", "name": "user_type", "schema": {"$ref": "#/components/schemas/rf_client_type"}}, {"description": "Client MAC / Asset MAC / SDK UUID", "in": "query", "name": "user", "schema": {"examples": ["b0c4e7001543"], "type": "string"}}, {"description": "If `scope`==`map`/`zone`/`rssizone`, the scope id", "in": "query", "name": "scope_id", "schema": {"examples": ["8bfc2490-d726-3587-038d-cb2e71bd2330"], "type": "string"}}, {"description": "Filter results by scope. enum: `map`, `rssizone`, `site`, `zone`", "in": "query", "name": "scope", "schema": {"$ref": "#/components/schemas/zone_scope"}}, {"$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": "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": "Filter results by user type. enum: `asset`, `client`, `sdkclient`", "in": "query", "name": "user_type", "schema": {"$ref": "#/components/schemas/rf_client_type"}}, {"description": "Client MAC / Asset MAC / SDK UUID", "in": "query", "name": "user", "schema": {"examples": ["b0c4e7001543"], "type": "string"}}, {"description": "If `scope`==`map`/`zone`/`rssizone`, the scope id", "in": "query", "name": "scope_id", "schema": {"examples": ["8bfc2490-d726-3587-038d-cb2e71bd2330"], "type": "string"}}, {"description": "Filter results by scope. enum: `map`, `rssizone`, `site`, `zone`", "in": "query", "name": "scope", "schema": {"$ref": "#/components/schemas/visits_scope"}}, {"$ref": "#/components/parameters/limit"}, {"$ref": "#/components/parameters/start"}, {"$ref": "#/components/parameters/end"}, {"$ref": "#/components/parameters/duration"}, {"$ref": "#/components/parameters/sort"}, {"$ref": "#/components/parameters/search_after"}], "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_smsglobal": {"post": {"description": "Allows validation of Global sms gateway credentials.\n\nIn case of success, a text message confirming successful setup should be received. In case of error, smsglobal error message are returned.", "operationId": "testSiteWlanSmsGlobal", "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"smsglobal_api_key": "123456", "smsglobal_api_secret": "abcdef", "smsglobal_sender": "61400000002", "to": "+911122334455"}}}, "schema": {"$ref": "#/components/schemas/test_sms_global"}}}}, "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": "testSiteWlanSmsGlobal", "tags": ["Utilities Wi-Fi"]}}, "/api/v1/utils/test_telstra": {"post": {"description": "Allows validation of Telstra sms gateway credentials.\n\nIn 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\nIn 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": "REDACTED_TWILIO_ACCOUNT_SID"}}}, "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"]}}}, "webhooks": {"alarms": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "Webhook sample for `alarm` topic\n\n\n**N.B.**: Fields like `aps`, `bssids`, `ssids` are event specific.\nThey are relevant to this event type ( rogue-ap-detected). For a different event type, different fields may be sent.\nThese don't contain all affected entities and are representative samples of entities (capped at 10).\nFor marvis action related events, we expose `details` to include more event specific details.\n\n\nEvents specific fields for other alarm event type can be found with API [List Alarm Definitions](/#operations/listAlarmDefinitions), under \\\"fields\\\" array of /alarm_defs response object."}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "asset_raw_rssi": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "beam": 8, "device_id": "00000000-0000-0000-1000-ac2316eca70b", "ibeacon_major": 2, "ibeacon_minor": 2121, "ibeacon_uuid": "ac950d7b-af31-42d2-be7c-e15639fab2cd", "is_asset": true, "mac": "ed2cc53f2770", "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "rssi": -79, "service_packets": [{"service_data": "010441060606fe3d35700601cecbd902512f000001", "service_uuid": "UUID"}], "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67", "timestamp": 1661300746}, {"ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "beam": 7, "device_id": "00000000-0000-0000-1000-ac2316eca70b", "is_asset": true, "mac": "ed2cc53f2771", "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "mfg_company_id": 243, "mfg_data": "00000000000000000000000000", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "rssi": -74, "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67", "timestamp": 1661300746}], "topic": "asset-raw-rssi"}}}, "schema": {"$ref": "#/components/schemas/webhook_asset_raw_rssi"}}}, "description": "Webhook sample for `asset-raw-rssi` topic.\n\n\nThis webhook topic provides raw data from packets emitted by named and filtered assets.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier)."}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "audits": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "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": "Webhook sample for `audit` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "client_info": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"hostname": "service.company.net", "ip": "21.0.128.151", "mac": "6ebaa47a3fd4", "org_id": "0c160b7f-1027-4cd1-923b-744534c4b070", "site_id": "6e77a2ea-d579-471c-9056-5ff5b4ed70ed", "timestamp": 1703003296}], "topic": "client-info"}}}, "schema": {"$ref": "#/components/schemas/webhook_client_info"}}}, "description": "Webhook sample for `client-info` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "client_join": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `client-join` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "client_latency": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "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": "Webhook sample for `client-latency` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "client_sessions": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `client-sessions` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "device_events": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `device-events` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "device_updowns": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `device-updowns` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "discovered_raw_rssi": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap_loc": [0], "beam": 0, "device_id": "3bafab7b-4400-4bcf-8e6e-09f954699940", "ibeacon_major": 1, "ibeacon_minor": 1, "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": "discovered-raw-rssi"}}}, "schema": {"$ref": "#/components/schemas/webhook_discovered_raw_rssi"}}}, "description": "Webhook sample for `discovered-raw-rssi` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "guest_authorizations": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap": "5c5b350e55c8", "auth_method": "passphrase", "authorized_expiring_time": 1677076639, "authorized_time": 1677076519, "carrier": "docomo", "client": "ac2316eca70a", "company": "MIST", "email": "abcd@abcd.com", "field1": "field1 value", "field2": "field2 value", "field3": "field3 value", "field4": "field4 value", "mobile": "+0123456789", "name": "Dr Strange", "org_id": "1688605f-916a-47a1-8c68-f19618300a08", "site_id": "ec3b5624-73f1-4ed3-b3fd-5ba3ee40368a", "sms_gateway": "Telstra", "sponsor_email": "sponsor@gmail.com", "ssid": "Portal Auth", "wlan_id": "7681be9a-044a-4622-90cf-3accde5ad853"}], "topic": "guest-authorizations"}}}, "schema": {"$ref": "#/components/schemas/webhook_guest_authorizations"}}}, "description": "Webhook sample for `guest-authorizations` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"battery_voltage": 0, "eddystone_uid_instance": "string", "eddystone_uid_namespace": "string", "eddystone_url_url": "string", "ibeacon_major": 1, "ibeacon_minor": 1, "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"}}}, "description": "Webhook sample for `location` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location_asset": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `location-asset` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location_centrak": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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-centrak"}}}, "schema": {"$ref": "#/components/schemas/webhook_location_centrak"}}}, "description": "Webhook sample for `location-centrak` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location_client": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `location-client` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location_sdk": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `location-sdk` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "location_unclient": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `location-unclient` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "minis_application": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"device_mac": "003e7316fd96", "ip": "172.217.22.195", "latency": 74, "org_id": "8aa21779-1178-4357-b3e0-42c02b93b870", "probe_name": "connectivitycheck.gstatic.com", "probe_type": "application", "site_id": "2bf12442-1558-41bd-849e-738d6d4aa1a3", "src_ip": "192.168.1.136", "success": false, "test_type": "curl", "timestamp": 1775641319, "vlan": 1}], "topic": "minis-application"}}}, "schema": {"$ref": "#/components/schemas/webhook_minis_application"}}}, "description": "Webhook sample for `minis-application` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "minis_reachability": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"avg_latency": 12.5, "device_mac": "7cb68d8f0440", "loss_percentage": 0, "max_latency": 15.2, "min_latency": 10.1, "org_id": "203d3d02-dbc0-4c1b-9f41-76896a3330f4", "probe_name": "google ping", "probe_target": "google.com", "probe_type": "reachability", "protocol": "icmp", "site_id": "4ac1dcf4-9d8b-7211-65c4-057819f0862b", "test_type": "ping", "timestamp": 1547235620.89, "vlan": 12}], "topic": "minis-reachability"}}}, "schema": {"$ref": "#/components/schemas/webhook_minis_reachability"}}}, "description": "Webhook sample for `minis-reachability` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "mxedge_events": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"audit_id": "8912e5cb-8ddd-41f7-be5f-476a7abbf658", "component": null, "mxedge_id": "00000000-0000-0000-1000-020000230522", "mxedge_name": "demo123", "org_id": "203d3d02-dbc0-4c1b-9f41-76896a3330f4", "timestamp": 1763546876.209649, "type": "ME_CONFIG_CHANGED_BY_USER"}, {"audit_id": "48efa5bf-d290-4e93-80ca-4dbf72f4187a", "component": null, "mxedge_id": "00000000-0000-0000-1000-020000a5fca1", "mxedge_name": "test123", "org_id": "203d3d02-dbc0-4c1b-9f41-76896a3330f4", "timestamp": 1763546876.417778, "type": "ME_CONFIG_CHANGED_BY_USER"}], "topic": "mxedge-events"}}}, "schema": {"$ref": "#/components/schemas/webhook_mxedge_events"}}}, "description": "Webhook sample for `mxedge-events` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "nac_accounting": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "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"}}}, "description": "Webhook sample for `nac-accounting` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "nac_events": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap": "5c5b35513227", "auth_type": "eap-teap", "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": "nac-events"}}}, "schema": {"$ref": "#/components/schemas/webhook_nac_events"}}}, "description": "Webhook sample for `nac-events` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "occupancy_alerts": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `occupancy-alerts` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "ping": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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"}}}, "description": "Webhook sample for `ping` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "rssizone": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"mac": "500291xxxxxx", "map_id": "f5d26c7f-1670-4921-xxxx-xxxxxxxxxxxx", "rssizone_id": "e38f8e76-40db-4144-xxxx-xxxxxxxxxxxx", "site_id": "f5fcbee5-fbca-45b3-xxxx-xxxxxxxxxxxx", "timestamp": 1694158990.986472, "trigger": "enter", "type": "wifi"}], "topic": "rssizone"}}}, "schema": {"$ref": "#/components/schemas/webhook_rssizone"}}}, "description": "Webhook sample for `rssizone` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "sdkclient_scan_data": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"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": "93986f10-773b-42be-9438-8d3e6d127f1a"}], "topic": "sdkclient-scan-data"}}}, "schema": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data"}}}, "description": "Webhook sample for `sdkclient-scan-data` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "site_sle": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "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": "Webhook sample for `site-sle` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "wifi_conn_raw": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap_id": "ac-23-16-ec-a7-0b", "ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "client_id": "28-f0-76-2d-22-1e", "connected_site": false, "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "packets": [{"band": "5GHz", "rssi": -92}], "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67"}, {"ap_id": "ac-23-16-ec-a7-0b", "ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "client_id": "38-f9-d3-99-08-6e", "connected_site": false, "extended_info_list": [{"frame_ctrl": 776, "payload": "010441060606fe3d35700601cecbd902512f000001", "sequence_ctrl": 8432}], "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "packets": [{"band": "5GHz", "rssi": -94}], "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67"}], "topic": "wifi-conn-raw"}}}, "schema": {"$ref": "#/components/schemas/webhook_wifi_conn_raw"}}}, "description": "Webhook sample for `wifi-conn-raw` topic.\n\n\nThis webhook topic provides raw data from packets emitted by connected devices.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier)."}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "wifi_unconn_raw": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"ap_id": "ac-23-16-ec-a7-0b", "ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "client_id": "28-f0-76-2d-22-1e", "connected_site": false, "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "packets": [{"band": "5GHz", "rssi": -92}], "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67"}, {"ap_id": "ac-23-16-ec-a7-0b", "ap_loc": [36.03303862386182, 43.57022468463291, 2.75], "client_id": "38-f9-d3-99-08-6e", "connected_site": false, "map_id": "bd42f0c3-2e6a-4f8a-ac2d-d34e268c1418", "org_id": "9c3e516c-397d-11e6-ae35-0242ac110008", "packets": [{"band": "5GHz", "rssi": -94}], "site_id": "27ea2f07-6fe6-4eab-be1b-b8e3ce083d67"}], "topic": "wifi-unconn-raw"}}}, "schema": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw"}}}, "description": "Webhook sample for `wifi-unconn-raw` topic.\n\n\nThis webhook topic provides raw data from packets emitted by unconnected devices.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier)."}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}, "zone": {"post": {"parameters": [{"in": "header", "name": "X-Mist-Signature-v2", "schema": {"type": "string"}}, {"in": "header", "name": "X-Mist-Signature", "schema": {"type": "string"}}], "requestBody": {"content": {"application/json": {"examples": {"Example": {"value": {"events": [{"id": "487f6eca-6276-4993-bfeb-d3cbbbba2f08", "map_id": "09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1", "name": "string", "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811", "timestamp": 0, "trigger": "enter", "type": "wifi", "zone_id": "d38f8e76-40db-4144-8cbb-1266c4197811"}], "topic": "zone"}}}, "schema": {"$ref": "#/components/schemas/webhook_zone"}}}, "description": "Webhook sample for `zone` topic"}, "responses": {"200": {"description": "Return a 200 status to indicate that the data was received successfully"}}}}}, "components": {"examples": {"AamwProfile": {"value": {"aamwprofile_id": "000000ab-00ab-00ab-00ab-0000000000ab", "account_id": "iojzXIJWEuiD73ZvydOfg", "admin_id": "000000ab-00ab-00ab-00ab-0000000000ab", "created_at": "2023-01-01T12:00:00Z", "description": "Example AAMW Profile Description", "name": "Example AAMW Profile", "updated_at": "2023-01-01T12:00:00Z"}}, "AamwProfileExample": {"value": {"categories": [{"category": "executable", "hash_lookup_only": false}], "fallback_action": "block", "file_action": "block", "name": "aamw-custom", "verdict_threshold": 8}}, "AamwProfilesArrayExample": {"value": [{"categories": [{"category": "executable", "hash_lookup_only": false}], "fallback_action": "block", "file_action": "block", "name": "aamw-custom", "verdict_threshold": 8}]}, "AdminExample": {"value": {"admin_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "email": "user@example.com", "first_name": "string", "last_name": "string", "password_modified_time": 1656353525, "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"]}]}}, "AdminsArrayExample": {"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"}]}]}, "AdminsArrayExample2": {"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"]}]}]}, "ApiUsageExample": {"value": {"request_limit": 5000, "requests": 5}}, "ApitokenOrgExample": {"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"}]}}, "ApitokenUserExample": {"value": {"created_time": 1626875902, "id": "864f351a-1377-4ad9-83f8-72f3fe6199ba", "key": "1qkb...QQCL", "last_used": 1690115110, "name": "org_token_xyz"}}, "ApitokensOrgArrayExample": {"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"}]}]}, "ApitokensUserArrayExample": {"value": [{"created_time": 1626875902, "id": "864f351a-1377-4ad9-83f8-72f3fe6199ba", "key": "1qkb...QQCL", "last_used": 1690115110, "name": "org_token_xyz"}]}, "AptemplateExample": {"value": {"ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "vlan_ids": "1, 10, 50"}}}]}, "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}}}, "AptemplatesArrayExample": {"value": [{"ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "vlan_ids": "1, 10, 50"}}}]}, "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}}]}, "AssetExample": {"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"}}, "AssetOfInterestArrayExample": {"value": [{"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}]}, "AssetStatsExample": {"value": {"_ttl": 86400, "battery_voltage": 3370, "by": "asset", "device_id": "00000000-0000-0000-1000-5c5b35000001", "device_name": "BLE Device", "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", "id": "845a23bf-bed9-e43c-4c86-6fa474be7ae5", "last_seen": 1480716946, "mac": "4a0222000e31", "manufacture": "Asset Manufacturer Name", "map_id": "63eda950-c6da-11e4-a628-60f81dd250cc", "mfg_company_id": 935, "mfg_data": "648520a1020000", "name": "Asset Name", "rssi": -45, "rssizones": [{"id": "480f6eca-6276-4993-bfeb-59cbbbbaaf08", "since": 0}], "service_packets": [{"data": "640", "last_rx_time": 1645855923, "rx_cnt": 213065, "uuid": "00003e10-0000-1000-8000-00805f9b34fb"}], "temperature": 23.5, "x": 51.0, "y": 29.0, "zones": [{"id": "479f6eca-6276-4993-bfeb-5acbbbbabf08", "since": 0}]}}, "AssetfilterExample": {"value": {"created_time": 0, "disabled": true, "eddystone_uid_namespace": "string", "eddystone_url": "string", "for_site": true, "ibeacon_major": 1, "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"}}, "AssetsArrayStatsExample": {"value": [{"_ttl": 86400, "battery_voltage": 3370, "by": "asset", "device_id": "00000000-0000-0000-1000-5c5b35000001", "device_name": "BLE Device", "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", "id": "845a23bf-bed9-e43c-4c86-6fa474be7ae5", "last_seen": 1480716946, "mac": "4a0222000e31", "manufacture": "Asset Manufacturer Name", "map_id": "63eda950-c6da-11e4-a628-60f81dd250cc", "mfg_company_id": 935, "mfg_data": "648520a1020000", "name": "Asset Name", "rssi": -45, "rssizones": [{"id": "478f6eca-6276-4993-bfeb-5bcbbbbacf08", "since": 0}], "service_packets": [{"data": "640", "last_rx_time": 1645855923, "rx_cnt": 213065, "uuid": "00003e10-0000-1000-8000-00805f9b34fb"}], "temperature": 23.5, "x": 51.0, "y": 29.0, "zones": [{"id": "477f6eca-6276-4993-bfeb-5ccbbbbadf08", "since": 0}]}]}, "AssetsArrayStatsSearchExample": {"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": 1, "ibeacon_minor": 1, "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}}, "AssignSuccessExample": {"value": {"success": ["5c5b350e0001"]}}, "AsyncClaimCreateExample": {"value": {"claim_id": "8e2a0c6f-6f3c-4c4e-9c72-8c5b1c1b6b9b", "inventory_pending": [{"mac": "5c5b35000012"}, {"mac": "5c5b35000018"}]}}, "AsyncClaimStatusExample": {"value": {"claim_id": "8e2a0c6f-6f3c-4c4e-9c72-8c5b1c1b6b9b", "completed": ["000000000022", "000000000011"], "details": [{"mac": "000000000022", "status": "added", "timestamp": 1709598053}, {"mac": "000000000011", "status": "added", "timestamp": 1709598053}], "failed": 0, "incompleted": [], "org_id": "44fe2c6b-7d7d-46e6-8d4f-5ce6a7c6b01a", "processed": 2, "scheduled_at": 1709598052, "status": "done", "succeed": 2, "timestamp": 1709598053, "total": 2}}, "AsyncClaimsListDetailExample": {"value": {"claims": [{"claim_id": "8e2a0c6f-6f3c-4c4e-9c72-8c5b1c1b6b9b", "completed": ["000000000022", "000000000011"], "details": [{"mac": "000000000022", "status": "added", "timestamp": 1709598053}, {"mac": "000000000011", "status": "added", "timestamp": 1709598053}], "failed": 0, "incompleted": [], "org_id": "44fe2c6b-7d7d-46e6-8d4f-5ce6a7c6b01a", "processed": 2, "scheduled_at": 1709598052, "status": "done", "succeed": 2, "timestamp": 1709598053, "total": 2}]}}, "AsyncClaimsListExample": {"value": {"claims": [{"claim_id": "8e2a0c6f-6f3c-4c4e-9c72-8c5b1c1b6b9b", "completed": ["000000000022", "000000000011"], "failed": 0, "incompleted": [], "org_id": "44fe2c6b-7d7d-46e6-8d4f-5ce6a7c6b01a", "processed": 2, "scheduled_at": 1709598052, "status": "done", "succeed": 2, "timestamp": 1709598053, "total": 2}, {"claim_id": "3a7b6c1e-4e5a-4eaa-9c7f-9a9c62b7f402", "completed": ["000000000044"], "failed": 0, "incompleted": ["000000000033"], "org_id": "44fe2c6b-7d7d-46e6-8d4f-5ce6a7c6b01a", "processed": 1, "scheduled_at": 1709598070, "status": "ongoing", "succeed": 1, "timestamp": 1709598075, "total": 2}]}}, "AsyncLicenseExample": {"value": {"completed": ["000000000022", "000000000011"], "details": [{"mac": "000000000022", "status": "added", "timestamp": 1709598053}], "failed": 0, "incompleted": [], "processed": 2, "scheduled_at": 1709598052, "status": "done", "succeed": 2, "timestamp": 1709598053, "total": 2}}, "AutoMapAssignmentApplyExample": {"value": {"accepted_maps": ["d3c42998-9012-4859-9743-6b9bee475309", "f7a21456-7891-4abc-def0-123456789abc"], "message": "Accepted map assignments for map_ids: ['d3c42998-9012-4859-9743-6b9bee475309', 'f7a21456-7891-4abc-def0-123456789abc']"}}, "AutoMapAssignmentClearExample": {"value": {"message": "Rejected map assignments for map_ids: ['d3c42998-9012-4859-9743-6b9bee475309', 'f7a21456-7891-4abc-def0-123456789abc']", "rejected_maps": ["d3c42998-9012-4859-9743-6b9bee475309", "f7a21456-7891-4abc-def0-123456789abc"]}}, "AutoMapAssignmentExample": {"value": {"devices": {"5c5b35000001": {"reason": "Device meets the minimum requirements for auto map assignment", "valid": true}, "5c5b35000002": {"reason": "Device meets the minimum requirements for auto map assignment", "valid": true}, "5c5b35000003": {"reason": "Device meets the minimum requirements for auto map assignment", "valid": true}}, "estimated_runtime": 300, "reason": "Started auto map assignment", "started": true, "valid": true}}, "AutoMapAssignmentInfoExample": {"value": {"est_time_left": 280.5, "start_time": 1678900062, "status": "in_progress", "time_updated": 1678900100}}, "AutoOrientationDryrunForMapCompleted": {"value": {"devices": {"00000000001": {"reason": "Device meets the minimum requirements for auto orient", "valid": true}, "00000000002": {"reason": "Device meets the minimum requirements for auto orient", "valid": true}, "00000000003": {"reason": "Device meets the minimum requirements for auto orient", "valid": true}}, "estimated_runtime": 300, "reason": "Map has met the minimum requirements for auto orient", "valid": true, "wifi_interrupting": true}}, "AutoOrientationFailedExample": {"value": {"detail": "Map has less than 3 APs associated with it to perform auto orient"}}, "AutoOrientationFailedExample2": {"value": {"detail": "Auto AP orient is already in progress for this Map"}}, "AutoOrientationFailedExample3": {"value": {"detail": "Auto orient data does not exist or has gone stale"}}, "AutoOrientationInfoCompleted": {"value": {"start_time": 1678900062, "status": "done", "stop_time": 1678900362}}, "AutoOrientationInfoInProgress": {"value": {"est_time_left": 300.0, "start_time": 1678900062, "status": "inprogress"}}, "AutoOrientationMapFailedToStartAsItHadLessThan3APsAssociatedWithIt": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 300, "reason": "Map Already Enqueued", "started": false, "valid": true, "wifi_interrupting": true}}, "AutoOrientationServiceFailedToStartDueContainingInvalidAPs": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}, "00000000004": {"reason": "Device model AP41 is not supported for auto orient", "valid": false}, "00000000005": {"reason": "Device firmware 0.14.28300 does not meet the minimum requirement 0.14.28310", "valid": false}}, "reason": "Map has APs that do not meet the minimum requirements for auto orient", "started": false, "valid": false}}, "AutoOrientationServiceStartedAfterOverrideForLocalizationOrientCollection": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}, "00000000004": {"reason": "Device model AP32 is not supported for auto orient", "valid": false}, "00000000005": {"reason": "Device firmware 0.14.28300 does not meet the minimum requirement 0.14.28310", "valid": false}}, "estimated_runtime": 300, "reason": "Started collection for auto orient", "started": true, "valid": false}}, "AutoOrientationServiceStartedSuccessfullyForLocalizationOrientCollection": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 300, "reason": "Started collection for auto orient", "started": true, "valid": true}}, "AutoOrientationUnableToReachTheOrientService": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 300, "reason": "Unable to reach auto orient service", "started": false, "valid": true, "wifi_interrupting": true}}, "AutoPlacementInfoDone": {"value": {"end_time": 1678900362, "start_time": 1678900062, "status": "done"}}, "AutoPlacementInfoError": {"value": {"end_time": 1678900362, "start_time": 1678900062, "status": "error"}}, "AutoPlacementInfoInProgress": {"value": {"est_time_left": 300, "start_time": 1678900062, "status": "inprogress"}}, "AutoPlacementInfoPending": {"value": {"status": "pending"}}, "AutoZoneStatusExample": {"value": {"status": "awaiting_review", "zones": [{"name": "zone1", "vertices": [{"x": 0, "y": 0}, {"x": 0, "y": 10}, {"x": 10, "y": 10}, {"x": 10, "y": 0}]}, {"name": "zone2", "vertices": [{"x": 0, "y": 0}, {"x": 0, "y": 20}, {"x": 20, "y": 20}, {"x": 20, "y": 0}]}]}}, "AvProfileExample": {"value": {"fallback_action": "permit", "max_filesize": 10000, "mime_whitelist": [], "name": "av-custom", "protocols": ["http"], "url_whitelist": []}}, "AvProfilesArrayExample": {"value": [{"fallback_action": "permit", "max_filesize": 10000, "mime_whitelist": [], "name": "av-custom", "protocols": ["http"], "url_whitelist": []}]}, "BeaconExample": {"value": {"created_time": 0, "eddystone_instance": "string", "eddystone_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "ibeacon_minor": 1, "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}}, "BeaconsArrayExample": {"value": [{"created_time": 0, "eddystone_instance": "string", "eddystone_namespace": "string", "eddystone_url": "string", "ibeacon_major": 1, "ibeacon_minor": 1, "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}]}, "BgpStatsArraySearchExample": {"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}}, "CallStatsSummaryExample": {"value": {"bad_minutes": 5566.0, "bad_minutes_client": 526.0, "bad_minutes_site_wan": 3612.0, "bad_minutes_wireless": 1428.0, "num_aps": 1, "num_users": 3, "total_minutes": 575217}}, "CallTroubleshootExample": {"value": {"mac": "983a78ea4a44", "meeting_id": "b784d744-9a7c-4fad-9af0-f78858a319b1", "results": [{"ap_num_clients": -0.08802365511655807, "ap_rtt": 0.09924473613500595, "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_distance": 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_distance": 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}, "client_cpu": 0.00834270566701889, "client_n_streams": 0.00734270566701889, "client_radio_band": 0.5841414928436279, "client_rssi": 0.7594696879386902, "client_rx_bytes": 2.365511655807e-05, "client_rx_rates": 0.02441493794322014, "client_rx_retries": -0.14325742423534393, "client_tx_bytes": 0.00102365511655807, "client_tx_rates": 0.22236637771129608, "client_tx_retries": 0.3308201730251312, "client_vpn_distance": -0.0001660545531194657, "client_wifi_version": 7.0566701889e-07, "expected": -2.8630001056670187, "radio_ap_change": 0.01850946433842182, "radio_bandwidth": -0.021175479516386986, "radio_channel": 0.11686426401138306, "radio_rx_failed": 1.1782013177871704, "radio_tx_power": 0.121039018034935, "radio_util": 0.2452986091375351, "radio_util_interference": 3.4367904663085938, "site_num_clients": 0.055026158690452576, "site_wan_avg_download_mbps": 3.0566701889e-07, "site_wan_avg_upload_mbps": 5.566701889e-08, "site_wan_download_mbps": 8.0566701889e-07, "site_wan_jitter": 1.00566701889e-06, "site_wan_rtt": 4.0566701889e-07, "site_wan_upload_mbps": 2.0566701889e-07, "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_distance": 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_distance": 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}}]}}, "CallTroubleshootSummaryExample": {"value": {"mac": "983a78ea4a44", "meeting_id": "b784d744-9a7c-4fad-9af0-f78858a319b1", "results": [{"ap_num_clients": -0.08802365511655807, "ap_rtt": 0.09924473613500595, "audio_in": {"ap_num_clients": 45.48306793636746, "ap_rtt": 6.352042701509264, "client_cpu": 9.323452578650581, "client_radio_band": 0.5841414928436279, "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_mbps": -0.988989942603641, "site_wan_jitter": 0.7875519659784105, "site_wan_rtt": 15.094849904378256, "site_wan_upload_mbps": -0.8131117953194512}, "audio_out": {"ap_num_clients": 45.48306793636746, "ap_rtt": 6.352042701509264, "client_cpu": 9.323452578650581, "client_radio_band": 0.5841414928436279, "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_mbps": -0.988989942603641, "site_wan_jitter": 0.7875519659784105, "site_wan_rtt": 15.094849904378256, "site_wan_upload_mbps": -0.8131117953194512}, "client_cpu": 0.00834270566701889, "client_n_streams": 0.00734270566701889, "client_radio_band": 0.5841414928436279, "client_rssi": 0.7594696879386902, "client_rx_bytes": 2.365511655807e-05, "client_rx_rates": 0.02441493794322014, "client_rx_retries": -0.14325742423534393, "client_tx_bytes": 0.00102365511655807, "client_tx_rates": 0.22236637771129608, "client_tx_retries": 0.3308201730251312, "client_vpn_distance": -0.0001660545531194657, "client_wifi_version": 7.0566701889e-07, "expected": -2.8630001056670187, "radio_ap_change": 0.01850946433842182, "radio_bandwidth": -0.021175479516386986, "radio_channel": 0.11686426401138306, "radio_rx_failed": 1.1782013177871704, "radio_tx_power": 0.121039018034935, "radio_util": 0.2452986091375351, "radio_util_interference": 3.4367904663085938, "site_num_clients": 0.055026158690452576, "site_wan_avg_download_mbps": 3.0566701889e-07, "site_wan_avg_upload_mbps": 5.566701889e-08, "site_wan_download_mbps": 8.0566701889e-07, "site_wan_jitter": 0.7875519659784105, "site_wan_rtt": 15.094849904378256, "site_wan_upload_mbps": 2.0566701889e-07, "timestamp": 1695425115, "video_in": {"ap_num_clients": 45.48306793636746, "ap_rtt": 6.352042701509264, "client_cpu": 9.323452578650581, "client_radio_band": 0.5841414928436279, "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_mbps": -0.988989942603641, "site_wan_jitter": 0.7875519659784105, "site_wan_rtt": 15.094849904378256, "site_wan_upload_mbps": -0.8131117953194512}, "video_out": {"ap_num_clients": 45.48306793636746, "ap_rtt": 6.352042701509264, "client_cpu": 9.323452578650581, "client_radio_band": 0.5841414928436279, "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_mbps": -0.988989942603641, "site_wan_jitter": 0.7875519659784105, "site_wan_rtt": 15.094849904378256, "site_wan_upload_mbps": -0.8131117953194512}}]}}, "CertificateExample": {"value": {"cert": "-----BEGIN CERTIFICATE-----\nMIIowDQYJKoZIhvcNAQELBQE\n-----END CERTIFICATE-----"}}, "ChannelScoresExample": {"value": {"results": [{"channel": 36, "util_score": 0.009, "util_score_noise_floor": 0.001, "util_score_non_wifi": 0.003, "util_score_other": 0.002, "util_score_radar": 0.0, "util_score_undecodable_wifi": 0.004, "util_score_unknown_wifi": 0.0}]}}, "ClaimLicenseLicensesSuccessfullyClaimedAndApplied": {"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"}], "inventory_pending": [{"mac": "5c5b35000012"}], "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": ""}]}}, "ClaimMxedgeExample": {"value": {"id": "95ddd29a-6a3c-929e-a431-51a5b09f36a6", "magic": "ExNpT5gi-ADR8WTFd4EiQPY3cP5WdSoD"}}, "ClientEventsSearchExample": {"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}}, "ClientNacSearchExample": {"value": {"end": 1513362753, "limit": 3, "results": [{"ap": ["5c5b35bf16bb", "d4dc090041b4"], "auth_type": "eap-tls", "cert_cn": ["john@mycorp.net"], "cert_issuer": ["/C=US/ST=CA/CN=MyCorp"], "client_ip": ["10.7.51.74"], "edr_managed": true, "edr_provider": "sentinelone", "edr_status": "sentinelone_healthy", "idp_id": "string", "idp_role": ["string"], "last_ap": "string", "last_cert_cn": "john@mycorp.net", "last_cert_expiry": 1746711240, "last_cert_issuer": "/C=US/ST=CA/CN=MyCorp", "last_cert_serial": "2c63510123456789", "last_cert_subject": "/C=US/O=MyCorp/CN=john@mycorp.net/emailAddress=john@mycorp.net", "last_client_ip": "10.7.51.74", "last_nacrule_id": "603b62db-d839-4152-9f7f-f2578443de8d", "last_nacrule_name": "Wireless Cert Auth", "last_nas_vendor": "juniper-mist", "last_ssid": "string", "last_status": "permitted", "mac": "string", "nacrule_id": ["603b62db-d839-4152-9f7f-f2578443de8d"], "nacrule_matched": true, "nacrule_name": ["Wireless Cert Auth"], "nas_vendor": ["juniper-mist"], "org_id": "31f27122-68a9-47a4-b526-8fb8a62a8acb", "random_mac": "true", "site_id": "832b1d74-9531-409b-ae37-4d7f3edbde92", "ssid": ["string"], "timestamp": 1694689718.612, "type": "wireless", "usermac_label": ["non-compliant", "building26", "floor52"]}], "start": 1513276353, "total": 2}}, "ClientSessionsSearchExample": {"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}}, "ClientStatsArrayExample": {"value": [{"annotation": "unknown", "ap_id": "00000000-0000-0000-1000-5c5b35963d70", "ap_mac": "5c5b358e6fea", "assoc_time": 1741152905, "band": "5", "bssid": "5c5b358298f2", "channel": 157, "dual_band": true, "family": "", "group": "", "hostname": "android-9b228dc33690", "idle_time": 5, "ip": "10.100.0.47", "is_guest": false, "key_mgmt": "WPA3-SAE-FT/CCMP", "last_seen": 1741257505, "mac": "dadbfc123456", "manufacture": "Unknown", "map_id": "ed7a0a4e-8835-4c94-ba78-6c1169c9f135", "model": "", "num_locating_aps": 2, "os": "Android 10", "proto": "ac", "rssi": -39, "rx_bps": 0, "rx_bytes": 14451780, "rx_pkts": 44175, "rx_rate": 6, "rx_retries": 2010, "site_id": "96c348a9-d6d7-4732-b4f5-23350a2843cd", "snr": 47, "ssid": "Live_demo_only", "tx_bps": 0, "tx_bytes": 56364072, "tx_pkts": 43685, "tx_rate": 173.3, "tx_retries": 5413, "uptime": 104600, "vlan_id": "1", "wlan_id": "497fc18a-79b5-405a-bf5a-192eed31ea60", "x": 695.3357339330526, "x_m": 24.086588, "y": 760.6746524247893, "y_m": 26.349943}]}, "ClientStatsExample": {"value": {"annotation": "unknown", "ap_id": "00000000-0000-0000-1000-5c5b35963d70", "ap_mac": "5c5b358e6fea", "assoc_time": 1741152905, "band": "5", "bssid": "5c5b358298f2", "channel": 157, "dual_band": true, "family": "", "group": "", "hostname": "android-9b228dc33690", "idle_time": 5, "ip": "10.100.0.47", "is_guest": false, "key_mgmt": "WPA3-SAE-FT/CCMP", "last_seen": 1741257505, "mac": "dadbfc123456", "manufacture": "Unknown", "map_id": "ed7a0a4e-8835-4c94-ba78-6c1169c9f135", "model": "", "num_locating_aps": 2, "os": "Android 10", "proto": "ac", "rssi": -39, "rx_bps": 0, "rx_bytes": 14451780, "rx_pkts": 44175, "rx_rate": 6, "rx_retries": 2010, "site_id": "96c348a9-d6d7-4732-b4f5-23350a2843cd", "snr": 47, "ssid": "Live_demo_only", "tx_bps": 0, "tx_bytes": 56364072, "tx_pkts": 43685, "tx_rate": 173.3, "tx_retries": 5413, "uptime": 104600, "vlan_id": "1", "wlan_id": "497fc18a-79b5-405a-bf5a-192eed31ea60", "x": 695.3357339330526, "x_m": 24.086588, "y": 760.6746524247893, "y_m": 26.349943}}, "ClientWirelessStatsArrayExample": {"value": [{"annotation": "unknown", "ap_id": "00000000-0000-0000-1000-5c5b35963d70", "ap_mac": "5c5b358e6fea", "assoc_time": 1741152905, "band": "5", "bssid": "5c5b358298f2", "channel": 157, "dual_band": true, "family": "", "group": "", "hostname": "android-9b228dc33690", "idle_time": 5, "ip": "10.100.0.47", "is_guest": false, "key_mgmt": "WPA3-SAE-FT/CCMP", "last_seen": 1741257505, "mac": "dadbfc123456", "manufacture": "Unknown", "map_id": "ed7a0a4e-8835-4c94-ba78-6c1169c9f135", "model": "", "num_locating_aps": 2, "os": "Android 10", "proto": "ac", "rssi": -39, "rx_bps": 0, "rx_bytes": 14451780, "rx_pkts": 44175, "rx_rate": 6, "rx_retries": 2010, "site_id": "96c348a9-d6d7-4732-b4f5-23350a2843cd", "snr": 47, "ssid": "Live_demo_only", "tx_bps": 0, "tx_bytes": 56364072, "tx_pkts": 43685, "tx_rate": 173.3, "tx_retries": 5413, "uptime": 104600, "vlan_id": "1", "wlan_id": "497fc18a-79b5-405a-bf5a-192eed31ea60", "x": 695.3357339330526, "x_m": 24.086588, "y": 760.6746524247893, "y_m": 26.349943}]}, "ClientsSearchExample": {"value": {"end": 17141231418.812, "limit": 118, "next": "next8", "results": [{"ap": ["a83a79a947ee", "003e73170b4c"], "app_version": ["0.100.3"], "band": "5", "device": ["Mac"], "ftc": false, "hardware": "Apple Wi-Fi adapter", "hostname": ["hostname-a", "hostname-b"], "ip": ["10.5.23.43", "192.168.0.2"], "last_ap": "a83a79a947ee", "last_device": "Mac", "last_firmware": "wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675", "last_hostname": "hostname-a", "last_ip": "10.5.23.43", "last_model": "MBP 16\\\" M1 2021", "last_os": "Sonoma", "last_os_version": "14.4.1 (Build 23E224)", "last_psk_id": "abf7dc5c-bb51-4bb7-93b6-5547400ffe11", "last_psk_name": "iot", "last_ssid": "IoT SSID", "last_username": "user@corp.com", "last_vlan": 10, "last_wlan_id": "e5d67b07-aae8-494b-8584-cbc20c8110aa", "mac": "bcd074000000", "mfg": "Apple", "model": "MBP 16\\\" M1 2021", "org_id": "1abff1aa-4571-4c1f-a409-153a1e7a7a24", "os": ["Sonoma"], "os_version": ["14.4.1 (Build 23E224)"], "protocol": "ax", "psk_id": ["abf7dc5c-bb51-4bb7-93b6-5547400ffe11"], "psk_name": ["iot"], "sdk_version": ["0.100.3"], "site_id": "25ff5219-9be7-4db9-907d-0c9b60445147", "site_ids": ["25ff5219-9be7-4db9-907d-0c9b60445147"], "ssid": ["IoT SSID"], "timestamp": 1714124722.113, "username": ["user@corp.com"], "vlan": [10]}], "start": 10, "total": 44}}, "ConfigsHistorySearchExample": {"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}}, "ConstAlarmDefinitionsExample": {"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"}]}, "ConstApChannelsExample": {"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"}}, "ConstApEslVersionsExample": {"value": [{"esl_version": "2.5.1", "model": "AP34"}, {"esl_version": "2.5.0", "model": "AP43"}]}, "ConstApLedDefinitionsExample": {"value": [{"code": "01", "description": "LED not working", "key": "LED_FAILURE", "name": "LED Failure"}]}, "ConstAppCategoryDefinitionsExample": {"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"}]}, "ConstAppSubCategoryDefinitionsExample": {"value": [{"display": "Office Documents", "key": "Office_Documents", "traffic_type": "data_interactive"}]}, "ConstApplicationsExample": {"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}]}, "ConstClientEventsExample": {"value": [{"display": "11r Association", "key": "CLIENT_AUTH_ASSOCIATION_11R"}]}, "ConstCountriesExample": {"value": [{"alpha2": "FR", "certified": true, "name": "France", "numeric": 250}]}, "ConstDefaultGatewayConfigExample": {"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"]}]}}, "ConstDeviceEventsExample": {"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"}]}, "ConstDeviceModelsAP": {"value": [{"ap_type": "jewel", "band24": {"band5_channels_op": "low", "max_clients": 128, "max_power": 19, "min_power": 8}, "band5": {"max_clients": 128, "max_power": 17, "min_power": 8}, "band6": {"max_clients": 128, "max_power": 17, "min_power": 8}, "band_24_usages": ["5"], "ce_dfs_ok": true, "cisco_pace": true, "description": "AP-45", "disallowed_channels": {"property1": {"property1": [0], "property2": [0]}, "property2": {"property1": [0], "property2": [0]}}, "display": "AP45", "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": false, "radios": {"r0": "6", "r1": "5", "r2": "24"}, "shared_scanning_radio": true, "type": "ap", "unmanaged": true, "vble": {"beacon_rate": 4, "beams": 9, "power": 8}}]}, "ConstDeviceModelsGateway": {"value": [{"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_node0_fpc": 3, "ha_node1_fpc": 3, "has_bgp": true, "has_fxp0": false, "has_ha_control": false, "has_ha_data": false, "has_irb": true, "has_poe_out": true, "has_snapshot": true, "irb_disabled_by_default": false, "model": "SRX320", "number_fans": 1, "oc_device": true, "pic": {"0": "ge*6, sfp*2"}, "sub_required": "wan1", "type": "gateway"}]}, "ConstDeviceModelsSwitch": {"value": [{"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", "evolved_os": false, "evpn_ri_type": "mac-vrf", "fans_pluggable": true, "has_bgp": true, "has_ets": true, "has_evpn": true, "has_irb": true, "has_poe_out": true, "model": "EX4100-48P", "modular": true, "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"}]}, "ConstFingerprintTypesExample": {"value": {"family": ["2Wire Router", "3Com Switches", "ACTi Corporation Network Camera", "APC Video Equipment", "APC-Schneider UPS", "Aastra VoIP", "Acer", "Actiontec Wireless Router", "Aerohive Access Point", "Alcatel", "Alcatel VoIP", "Amazon Echo"], "mfg": ["100fio Networks Technology llc", "10NET COMMUNICATIONS/DCA", "11wave Technonlogy Co.,Ltd", "12Sided Technology, LLC", "1Net Corporation", "1Verge Internet Technology (Beijing) Co., Ltd."], "model": ["10T Lite", "10T Pro", "10th Gen", "11 Lite", "11 Pro", "11 Pro Max"], "os": ["Android", "Apple OS", "Asha Platform OS"]}}, "ConstGatewayApplicationsExample": {"value": [{"app_id": true, "key": "4shared", "name": "4shared", "ssr_app_id": true}]}, "ConstInsightMetricsExample": {"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": ""}}}, "ConstLanguagesExample": {"value": [{"display": "English (US)", "display_native": "English (US)", "key": "en-US"}]}, "ConstLicenseTypesExample": {"value": [{"description": "Wired Assurance 12", "includes": ["sub_ex12a", "sub_ex12p"], "key": "sub_ex12", "name": "SUB-EX12"}]}, "ConstMarvisClientVersionsExample": {"value": [{"label": "default", "notes": "", "os": "android", "url": "https://mobile.mist.com/installers/marvisclient/android/1.1.9/marvisclient-installer.apk", "version": "1.1.9"}, {"label": "default", "notes": "", "os": "macos", "url": "https://mobile.mist.com/installers/marvisclient/macos/0.100.29/marvisclient-installer.dmg", "version": "0.100.29"}, {"label": "default", "notes": "", "os": "windows", "url": "https://mobile.mist.com/installers/marvisclient/windows/0.100.26/marvisclient-installer.zip", "version": "0.100.26"}]}, "ConstMxEdgeEventsExample": {"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"}]}, "ConstMxEdgeModelsExample": {"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}}}]}, "ConstNacEventsExample": {"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"}]}, "ConstOtherDeviceEventsExample": {"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"}]}, "ConstOtherDeviceModelsExample": {"value": [{"_vendor_model_id": "65", "display": "W1850", "model": "W1850", "type": "router", "vendor": "cradlepoint"}]}, "ConstStatesExample": {"value": [{"iso_code": "AK", "name": "Alaska"}, {"iso_code": "AL", "name": "Alabama"}, {"iso_code": "AS", "name": "American Samoa"}, {"iso_code": "AZ", "name": "Arizona"}, {"iso_code": "CA", "name": "California"}]}, "ConstSystemEventsExample": {"value": [{"display": "AP Disconnect", "group": "ap_health", "key": "ap_disconnected"}]}, "ConstTrafficTypesExample": {"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"}]}, "ConstWebhookTopicsExample": {"value": [{"for_org": true, "has_delivery_results": true, "key": "alarms"}, {"key": "asset-raw-rssi"}, {"for_org": true, "has_delivery_results": true, "key": "audits"}, {"for_org": true, "key": "client-info"}, {"for_org": true, "key": "client-join"}, {"key": "client-latency"}, {"for_org": true, "key": "client-sessions"}, {"allows_single_event_per_message": true, "for_org": true, "key": "device-events"}, {"for_org": true, "has_delivery_results": true, "key": "device-updowns"}, {"for_org": true, "key": "minis-reachability"}]}, "CountExample": {"value": {"distinct": "string", "end": 0, "limit": 0, "results": [{"count": 0, "property": "string"}], "start": 0, "total": 0}}, "CountMarvisActionsExample": {"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}}, "DeleteSelfFailedIfAnyOfTheOrgToBeDeletedStillHasInventory": {"value": {"detail": "inventory not empty", "org_id": "424f6eca-7276-4993-bfeb-53cbbbba6f05"}}, "DeviceAp": {"value": {"aeroscout": {"enabled": false, "host": "aero.pvt.net", "locate_connected": true}, "airista": {"enabled": false}, "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": 6, "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": 1500, "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, "pwr_config": {"base": 2000, "prefer_usb_over_wifi": false}, "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811", "type": "ap", "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}}, "DeviceBiosUpgradeExample": {"value": {"status": "inprogress", "timestamp": 1428949501}}, "DeviceConfigCmdExample": {"value": {"cli": ["set system hostname corp-a135"]}}, "DeviceEventsSearchExample": {"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}}, "DeviceIotExample": {"value": {"A1": 1, "DO": 0}}, "DeviceMetricExample": {"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-01 20:00:00+00:00", "2020-11-01 21:00:00+00:00", "2020-11-01 22:00:00+00:00", "2020-11-01 23:00:00+00:00", "2020-11-02 00:00:00+00:00", "2020-11-02 01:00:00+00:00", "2020-11-02 02:00:00+00:00", "2020-11-02 03:00:00+00:00", "2020-11-02 04:00:00+00:00", "2020-11-02 05:00:00+00:00", "2020-11-02 06:00:00+00:00", "2020-11-02 07:00:00+00:00", "2020-11-02 08:00:00+00:00", "2020-11-02 09:00:00+00:00", "2020-11-02 10:00:00+00:00", "2020-11-02 11:00:00+00:00", "2020-11-02 12:00:00+00:00", "2020-11-02 13:00:00+00:00", "2020-11-02 14:00:00+00:00", "2020-11-02 15:00:00+00:00", "2020-11-02 16:00:00+00:00", "2020-11-02 17:00:00+00:00", "2020-11-02 18:00:00+00:00", "2020-11-02 19:00:00+00:00"], "start": 1604260800}}, "DeviceOtherArrayExample": {"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"}]}, "DeviceOtherExample": {"value": {"device_mac": "00112233abcd", "id": "ae9dee49-69e7-4710-a114-5b827a777738", "mac": "5c5b35000018", "model": "W2005", "name": "W2005-268", "org_id": "2818e386-8dec-2562-9ede-5b8a0fbbdc71", "serial": "WB23015E025468", "site_id": "4ac1dcf4-9d8b-7211-65c4-057819f0862b", "state": "online", "vendor": "cradlepoint", "vendor_api_id": "4658714"}}, "DeviceOtherStatsOtherdeviceStats": {"value": {"cached_stats": true, "connected_devices": {"0200010edbca": {"mac": "020001abcdef", "name": "DNT-NTR-GWE", "port_id": "ge-0/0/1", "type": "gateway"}}, "last_seen": 1740996902, "lldp_enabled": true, "mac": "00304498a1e8", "uptime": 622828, "vendor": "cradlepoint", "vendor_specific": {"interfaces": {"ethernet-IPPT": {"bytes_in": 331068567, "bytes_out": 6763536255, "display_name": "Primary LAN", "ip": "192.168.0.1", "link": true, "mode": "lan", "port_parent": "Primary LAN", "service_mode": "Ethernet", "type": "ethernet", "uptime": 0}, "ethernet-lan": {"bytes_in": 13072566048, "bytes_out": 5617915438, "display_name": "Secondary LAN", "ip": "192.168.0.1", "link": false, "mode": "lan", "port_parent": "Secondary LAN", "service_mode": "Ethernet", "type": "ethernet", "uptime": 0}, "mdm-8a1084c9": {"bytes_in": 0, "bytes_out": 0, "carrier": "Unknown Service", "imei": "866401234567894", "imsi": "", "ip": "", "link": false, "mode": "wan", "mtu": 1400, "rsrp": 0, "rsrq": 0, "rssi": 0, "service_mode": "Not Available", "sinr": 0, "state": "NOSIM", "type": "mdm", "uptime": 0}, "mdm-8a1fc70c": {"bytes_in": 5623096929, "bytes_out": 12372750366, "carrier": "AT&T", "imei": "866401234567893", "imsi": "208001234567893", "ip": "12.68.86.17", "link": true, "mode": "wan", "mtu": 1400, "rsrp": -108, "rsrq": -14, "rssi": -74, "service_mode": "5G NSA", "sinr": -1.2, "state": "READY", "type": "mdm", "uptime": 2095779}}}, "version": "7.24.80"}}, "DeviceRadioChannelsExample": {"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"}}, "DeviceStatsAccessPointStats": {"value": {"auto_upgrade_stat": {"lastcheck": 1720594762}, "ble_stat": {"beacon_enabled": true, "beacon_rate": 4, "eddystone_uid_enabled": false, "eddystone_uid_freq_msec": 1000, "eddystone_uid_instance": "5c5b35d0077b", "eddystone_uid_namespace": "9777c1a06ef611e68bbf", "eddystone_url_enabled": false, "eddystone_url_freq_msec": 1000, "eddystone_url_url": "", "ibeacon_enabled": false, "ibeacon_freq_msec": 1000, "ibeacon_major": 894, "ibeacon_minor": 9328, "ibeacon_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "major": 894, "minors": [9328, 9329, 9330, 9331, 9332, 9333, 9334, 9335, -1], "power": 8, "rx_bytes": 158500843, "rx_pkts": 3549163, "tx_bytes": 509640, "tx_pkts": 85411, "tx_resets": 0, "uuid": "af010e2b-f829-4975-b49e-2e896ed1d627"}, "config_reverted": false, "cpu_system": 21921854, "cpu_user": 7496631, "cpu_util": 5, "created_time": 1718228350, "env_stat": {"accel_x": -0.092, "accel_y": 0.004, "accel_z": -1.02, "ambient_temp": 43, "attitude": 0, "cpu_temp": 53, "humidity": 9, "magne_x": 0, "magne_y": 0, "magne_z": 0, "pressure": 968, "vcore_voltage": 0}, "ext_ip": "66.129.234.28", "hw_rev": "C02", "id": "00000000-0000-0000-1000-5c5b35d0077b", "inactive_wired_vlans": [], "ip": "192.168.95.3", "ip_stat": {"dhcp_server": "192.168.95.1", "dns": ["8.8.8.8"], "gateway": "192.168.95.1", "ip": "192.168.95.3", "ip6": "fe80:0:0:0:5e5b:35ff:fed0:77b", "ips": {"vlan1": "192.168.95.3/24,fe80:0:0:0:5e5b:35ff:fed0:77b/64"}, "netmask": "255.255.255.0", "netmask6": "/64"}, "last_seen": 1720595866, "last_trouble": {"code": "07", "timestamp": 1720039666}, "lldp_stat": {"chassis_id": "d0:07:ca:f5:21:00", "lldp_med_supported": false, "mgmt_addr": "100.123.105.1", "mgmt_addrs": ["100.123.105.1"], "port_desc": "ge-0/0/4", "port_id": "ge-0/0/4", "power_allocated": 0, "power_draw": 0, "power_request_count": 0, "power_requested": 0, "system_desc": "Juniper Networks, Inc. ex4300-48t internet router, kernel JUNOS 20.4R3-S7.2, Build date: 2023-04-21 19:47:18 UTC Copyright (c) 1996-2023 Juniper Networks, Inc.", "system_name": "Phoenix-Switch"}, "mac": "5c5b35d0077b", "mem_total_kb": 505468, "mem_used_kb": 202096, "model": "AP43", "modified_time": 1718530662, "mount": "faceup", "name": "Phoenix", "notes": "", "num_clients": 1, "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "port_stat": {"eth0": {"full_duplex": true, "rx_bytes": 1284143195, "rx_errors": 0, "rx_peak_bps": 17585, "rx_pkts": 5199816, "speed": 1000, "tx_bytes": 1283744961, "tx_peak_bps": 26484, "tx_pkts": 3990463, "up": true}, "eth1": {"full_duplex": false, "rx_bytes": 0, "rx_errors": 0, "rx_peak_bps": 0, "rx_pkts": 0, "speed": 0, "tx_bytes": 0, "tx_peak_bps": 0, "tx_pkts": 0, "up": false}}, "power_budget": 8400, "power_constrained": false, "power_src": "DC Input", "radio_config": {}, "radio_stat": {"band_24": {"bandwidth": 20, "channel": 11, "mac": "5c5b35dea810", "noise_floor": -80, "num_clients": 0, "power": 17, "rx_bytes": 12948211, "rx_pkts": 65292, "tx_bytes": 19071943, "tx_pkts": 76926, "usage": "24", "util_all": 24, "util_non_wifi": 2, "util_rx_in_bss": 0, "util_rx_other_bss": 17, "util_tx": 4, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}, "band_5": {"bandwidth": 40, "channel": 36, "mac": "5c5b35dea7f0", "noise_floor": -90, "num_clients": 1, "power": 17, "rx_bytes": 578362619, "rx_pkts": 2687577, "tx_bytes": 1199571353, "tx_pkts": 2479302, "usage": "5", "util_all": 13, "util_non_wifi": 0, "util_rx_in_bss": 0, "util_rx_other_bss": 10, "util_tx": 1, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}}, "rx_bps": 9276, "rx_bytes": 591310830, "rx_pkts": 2752869, "serial": "A0703200709E6", "site_id": "46fc665e-9706-4296-8fe2-78f42f2e67e4", "status": "connected", "switch_redundancy": {"num_redundant_aps": 1}, "tx_bps": 8067, "tx_bytes": 1218643296, "tx_pkts": 2556228, "type": "ap", "uptime": 1593120, "version": "0.14.29313"}}, "DeviceStatsGatewayStats": {"value": {"arp_table_stats": {"arp_table_count": 21, "max_entries_supported": 64000}, "auto_upgrade_stat": {"lastcheck": 1720595477}, "cert_expiry": 1743292763, "cluster_config": {"configuration": "active-active", "control_link_info": {"name": "fxp1", "status": "Up"}, "ethernet_connection": [{"name": "reth0", "status": "Up"}, {"name": "reth1", "status": "Up"}, {"name": "reth2", "status": "Down"}, {"name": "reth3", "status": "Down"}, {"name": "reth4", "status": "Up"}], "fabric_link_info": {"DataPlaneNotifiedStatus": "Up", "Interface": [], "InternalStatus": "Up", "State": "Enabled", "Status": "Enabled"}, "last_status_change_reason": "No failures", "operational": "active-active", "primary_node_health": "Healthy", "redundancy_group_information": [{"Id": 0, "MonitoringFailure": "none", "Threshold": 255}, {"Id": 1, "MonitoringFailure": "interface-monitoring", "Threshold": 0}, {"Id": 2, "MonitoringFailure": "none", "Threshold": 255}], "secondary_node_health": "Not healthy", "status": "Green"}, "config_status": "COMMITED", "config_timestamp": 1720182848, "config_version": 1720182848, "cpu2_stat": {"idle": 86, "interrupt": 0, "load_avg": [0.13, 0.17, 0.16], "system": 5, "user": 9}, "cpu_stat": {"idle": 76, "interrupt": 0, "load_avg": [0.18, 0.31, 0.39], "system": 10, "user": 14}, "created_time": 1711756611, "deviceprofile_id": "5e5daedf-e650-4013-b41c-845f0d2b9414", "deviceprofile_name": "wan_srx_tor_hub1", "dhcpd_stat": {"byod_dc1": {"num_ips": 100, "num_leased": 0}, "corp_dc1": {"num_ips": 100, "num_leased": 4}, "guest_dc1": {"num_ips": 241, "num_leased": 0}, "iot_dc1": {"num_ips": 100, "num_leased": 0}, "mgmt_dc1": {"num_ips": 100, "num_leased": 2}, "teleworker": {"num_ips": 140, "num_leased": 0}}, "ext_ip": "69.196.157.189", "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1718392692.580769, "will_retry": false}, "has_pcap": false, "hostname": "wan_srx_tor_hub1-srx", "id": "00000000-0000-0000-1000-4db14e107134", "if_stat": {"ge-0/0/5.130": {"address_mode": "Unknown", "nat_addresses": [], "port_id": "ge-0/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}, "ge-1/0/5.120": {"address_mode": "Unknown", "nat_addresses": [], "port_id": "ge-1/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}}, "ip": "69.196.157.190", "ip_stat": {"gateway": "69.196.157.185", "ip": "69.196.157.190", "ips": {"vlan1": "69.196.157.190,69.196.157.190"}, "netmask": "255.255.255.255"}, "is_ha": true, "last_seen": 1720598726, "mac": "4db14e107134", "mac_table_stats": {"mac_table_count": 0, "max_mac_entries_supported": 160000}, "memory2_stat": {"usage": 32}, "memory_stat": {"usage": 39}, "model": "SRX300", "modified_time": 1720092942, "module2_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598717, "mac": "ec38739270c0", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV2218AF1505", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 64, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 580964, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "secondary", "vc_state": "active", "version": "21.2R3-S6.11"}], "module_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598716.999985, "mac": "4db14e107134", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV0219AN0335", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 65, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 1945193, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "primary", "vc_state": "active", "version": "21.2R3-S6.11"}], "name": "wan_srx_tor_hub1-srx", "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "route_summary_stats": {"fib_routes": 0, "max_unicast_routes_supported": 1240000, "rib_routes": 0, "total_routes": 0}, "serial": "CV0219AN0335", "service_stat": {}, "service_status": {"appid_status": "enabled", "appid_version": 3720, "ewf_status": "disabled", "idp_install_result": "successful", "idp_install_timestamp": "2024-07-10T06:29:11.708164029Z", "idp_status": "disabled", "idp_update_timestamp": "2024-07-10T06:28:28.567046244Z"}, "site_id": "83c31971-ad70-4419-ae20-7f2b90748986", "spu2_stat": [{"spu_cpu": 0, "spu_current_session": 39, "spu_max_session": 32768, "spu_memory": 31, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "spu_stat": [{"spu_cpu": 1, "spu_current_session": 47, "spu_max_session": 32768, "spu_memory": 34, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "status": "connected", "tag_id": 3550217, "tag_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "type": "gateway", "uptime": 581259, "version": "21.2R3-S6.11"}}, "DeviceStatsSwitchStats": {"value": {"ap_redundancy": {"num_aps": 1, "num_aps_with_switch_redundancy": 1}, "arp_table_stats": {"arp_table_count": 16, "max_entries_supported": 32000}, "auto_upgrade_stat": {"lastcheck": 1720600596}, "cert_expiry": 1743932274, "clients": [{"device_mac": "0912f561b653", "mac": "001132f5ad23", "port_id": "ge-1/0/11"}], "clients_stats": {"total": {"num_aps": [0, 0], "num_wired_clients": 13}}, "config_status": "COMMITED", "config_timestamp": 1720552389, "config_version": 1720552389, "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "created_time": 1712346090, "dhcpd_stat": {"ifo": {"num_ips": 5, "num_leased": 0}}, "ext_ip": "153.142.221.41", "fw_versions_outofsync": false, "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1712409702.9714448, "will_retry": false}, "has_pcap": true, "hostname": "SW-HLAB-ea2e00", "hw_rev": "A", "id": "00000000-0000-0000-1000-0912f561b653", "if_stat": {"ge-0/0/5.0": {"port_id": "ge-0/0/5", "rx_bytes": 0, "rx_pkts": 78110, "tx_bytes": 0, "tx_pkts": 61037, "up": true}, "ge-1/0/0.0": {"port_id": "ge-1/0/0", "rx_bytes": 0, "rx_pkts": 56415, "tx_bytes": 0, "tx_pkts": 72209, "up": true}, "irb.172": {"ips": ["10.3.172.41/24"], "port_id": "irb", "rx_bytes": 0, "rx_pkts": 1291755, "servp_info": {}, "tx_bytes": 0, "tx_pkts": 990327, "up": true, "vlan": 172}, "vme.0": {"port_id": "vme", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true}}, "ip": "10.3.10.10", "ip_stat": {"gateway": "10.3.172.9", "ip": "10.3.10.10", "ips": {"vlan172": "10.3.172.41"}, "netmask": "255.255.255.255"}, "last_seen": 1720601189, "last_trouble": {"code": "103", "timestamp": 1712412455215}, "mac": "0912f561b653", "mac_table_stats": {"mac_table_count": 58, "max_mac_entries_supported": 64000}, "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "modified_time": 1720552388, "module_stat": [{"boot_partition": "junos", "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "fpc_idx": 0, "mac": "0912f561b653", "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 7.3}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0324AV0077", "temperatures": [{"celsius": 51, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 51, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 50, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 57, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/1", "port_id": "vcp-0/1/0"}, {"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/0", "port_id": "vcp-0/1/1"}], "vc_mode": "HiGiG", "vc_role": "master", "vc_state": "present", "version": "22.4R3.25"}, {"boot_partition": "junos", "cpu_stat": {"idle": 79, "interrupt": 0, "load_avg": [0.52, 0.46, 0.46], "system": 6, "user": 15}, "fpc_idx": 1, "mac": "485a0deb2380", "memory_stat": {"usage": 14}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 22.1}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0424AV0101", "temperatures": [{"celsius": 52, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 53, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 52, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 59, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/1", "port_id": "vcp-1/1/0"}, {"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/0", "port_id": "vcp-1/1/1"}], "vc_mode": "HiGiG", "vc_role": "backup", "vc_state": "present", "version": "22.4R3.25"}], "name": "SW-HLAB-ea2e00", "org_id": "c5324060-19da-48fa-af28-2b530bd08765", "route_summary_stats": {"fib_routes": 7, "max_unicast_routes_supported": 32150, "rib_routes": 40, "total_routes": 3}, "serial": "FJ0324AV0077", "site_id": "a0e43ffb-94a6-4f27-92aa-9cf832e1143d", "status": "connected", "tag_id": 3564806, "tag_uuid": "507604a4-6b34-449c-acb3-87955430b006", "type": "switch", "uptime": 1692720, "vc_mac": "0912f561b653", "vc_setup_info": {"config_type": "nonprovisioned", "err_missing_dev_id_fpc": false}, "version": "22.4R3.25"}}, "DeviceVersionExample": {"value": [{"model": "AP41", "tag": "stable", "version": "v0.1.543"}, {"model": "AP21", "version": "v0.1.545"}]}, "Devicegateway": {"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", "2001:4860:4860::8888"], "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"}}, "mist_configured": true, "modified_time": 0, "name": "corp-a135", "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"}, "ge-0/0/0": {"ip_config": {"type": "dhcp"}, "usage": "wan"}, "ge-0/0/0,ge-7/0/0": {"reth_idx": 3, "usage": "wan"}, "ge-0/0/1-5": {"usage": "lan"}, "ge-0/0/7": {"ip_config": {"type": "static"}, "usage": "wan"}}, "site_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "type": "gateway", "vars": {"RADIUS_IP1": "172.31.2.5", "RADIUS_SECRET": "11s64632d"}}}, "DeviceprofileDeviceprofileAp": {"value": {"aeroscout": {"enabled": true, "host": "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": 1500, "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": 1, "role": "base"}, "modified_time": 0, "name": "string", "org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "poe_passthrough": true, "switch_config": {"enabled": true, "eth0": {"port_vlan_id": 1, "vlan_ids": [1, 10]}, "eth1": {"port_vlan_id": 1, "vlan_ids": [10]}, "eth2": {"port_vlan_id": 1, "vlan_ids": [10]}, "eth3": {"port_vlan_id": 1, "vlan_ids": [10]}, "module": {"port_vlan_id": 1, "vlan_ids": [10]}, "wds": {"port_vlan_id": 1, "vlan_ids": [10]}}, "type": "ap", "usb_config": {"cacert": "string", "enabled": true, "host": "string", "type": "imagotag", "verify_cert": true}}}, "DeviceprofileDeviceprofileHub": {"value": {"created_time": 1680762730, "dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "id": "4ea55b5d-7313-4a81-a292-7ee125fd4ebb", "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "modified_time": 1680762890, "name": "ITParis", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "org_id": "93986f10-773b-42be-9438-8d3e6d127f1a", "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "traffic_shaping": {"enabled": false}, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}, {"action": "deny", "idp": {"enabled": false}, "name": "ITParis-internet", "path_preference": "untrust", "services": ["internet_any"], "tenants": ["ITParis"]}], "type": "gateway"}}, "DeviceprofilesArrayDeviceprofileAp": {"value": [{"aeroscout": {"enabled": true, "host": "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": 1500, "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": 1, "role": "base"}, "modified_time": 0, "name": "string", "org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "poe_passthrough": true, "switch_config": {"enabled": true, "eth0": {"port_vlan_id": 1, "vlan_ids": [1, 10]}, "eth1": {"port_vlan_id": 1, "vlan_ids": [10]}, "eth2": {"port_vlan_id": 1, "vlan_ids": [10]}, "eth3": {"port_vlan_id": 1, "vlan_ids": [10]}, "module": {"port_vlan_id": 1, "vlan_ids": [10]}, "wds": {"port_vlan_id": 1, "vlan_ids": [10]}}, "type": "ap", "usb_config": {"cacert": "string", "enabled": true, "host": "string", "type": "imagotag", "verify_cert": true}}]}, "DeviceprofilesArrayDeviceprofileHub": {"value": [{"created_time": 1680762730, "dhcpd_config": {"Corp-Mgmt": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.172.9", "ip_end": "10.3.172.99", "ip_start": "10.3.172.50", "type": "local"}, "Corp-lan": {"dns_servers": ["8.8.8.8"], "dns_suffix": ["stag.one"], "gateway": "10.3.171.9", "ip_end": "10.3.171.99", "ip_start": "10.3.171.50", "type": "local"}}, "dnsOverride": true, "dns_servers": ["10.3.20.201", "10.3.51.222", "1.1.1.1"], "dns_suffix": ["example.com"], "extra_routes": {"10.101.0.0/16": {"via": "10.3.100.10"}}, "id": "4ea55b5d-7313-4a81-a292-7ee125fd4ebb", "ip_configs": {"Corp-Core": {"ip": "10.3.100.9", "netmask": "/24", "type": "static"}, "Corp-Mgmt": {"ip": "10.3.172.9", "netmask": "/24", "type": "static"}, "Corp-lan": {"ip": "10.3.171.9", "netmask": "/24", "type": "static"}}, "modified_time": 1680762890, "name": "ITParis", "ntpOverride": true, "ntp_servers": ["10.3.51.222"], "org_id": "93986f10-773b-42be-9438-8d3e6d127f1a", "path_preferences": {"core": {"paths": [{"networks": ["Corp-Core"], "type": "local"}], "strategy": "ordered"}, "lab": {"paths": [{"networks": ["Corp-lan"], "type": "local"}], "strategy": "ordered"}, "mgmt": {"paths": [{"networks": ["Corp-Mgmt"], "type": "local"}], "strategy": "ordered"}, "untrust": {"paths": [{"name": "wan", "type": "wan"}], "strategy": "ordered"}}, "port_config": {"ge-0/0/0": {"aggregated": false, "ip_config": {"gateway": "192.168.1.1", "ip": "192.168.1.9", "netmask": "/24", "type": "static"}, "name": "wan", "redundant": false, "traffic_shaping": {"enabled": false}, "usage": "wan", "wan_type": "broadband"}, "ge-0/0/6-7": {"ae_disable_lacp": false, "ae_idx": "0", "ae_lacp_force_up": true, "aggregated": true, "networks": ["Corp-lan", "Corp-Mgmt", "Corp-Core"], "usage": "lan"}}, "service_policies": [{"action": "allow", "idp": {"enabled": false}, "name": "ITParis-Internal", "path_preference": "core", "services": ["internal_dns", "drive"], "tenants": ["ITParis"]}, {"action": "deny", "idp": {"enabled": false}, "name": "ITParis-internet", "path_preference": "untrust", "services": ["internet_any"], "tenants": ["ITParis"]}], "type": "gateway"}]}, "DevicesArrayStatsOrgAccessPointStats": {"value": [{"auto_upgrade_stat": {"lastcheck": 1720594762}, "ble_stat": {"beacon_enabled": true, "beacon_rate": 4, "eddystone_uid_enabled": false, "eddystone_uid_freq_msec": 1000, "eddystone_uid_instance": "5c5b35d0077b", "eddystone_uid_namespace": "9777c1a06ef611e68bbf", "eddystone_url_enabled": false, "eddystone_url_freq_msec": 1000, "eddystone_url_url": "", "ibeacon_enabled": false, "ibeacon_freq_msec": 1000, "ibeacon_major": 894, "ibeacon_minor": 9328, "ibeacon_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "major": 894, "minors": [9328, 9329, 9330, 9331, 9332, 9333, 9334, 9335, -1], "power": 8, "rx_bytes": 158500843, "rx_pkts": 3549163, "tx_bytes": 509640, "tx_pkts": 85411, "tx_resets": 0, "uuid": "af010e2b-f829-4975-b49e-2e896ed1d627"}, "config_reverted": false, "cpu_system": 21921854, "cpu_user": 7496631, "cpu_util": 5, "created_time": 1718228350, "env_stat": {"accel_x": -0.092, "accel_y": 0.004, "accel_z": -1.02, "ambient_temp": 43, "attitude": 0, "cpu_temp": 53, "humidity": 9, "magne_x": 0, "magne_y": 0, "magne_z": 0, "pressure": 968, "vcore_voltage": 0}, "ext_ip": "66.129.234.28", "hw_rev": "C02", "id": "00000000-0000-0000-1000-5c5b35d0077b", "inactive_wired_vlans": [], "ip": "192.168.95.3", "ip_stat": {"dhcp_server": "192.168.95.1", "dns": ["8.8.8.8"], "gateway": "192.168.95.1", "ip": "192.168.95.3", "ip6": "fe80:0:0:0:5e5b:35ff:fed0:77b", "ips": {"vlan1": "192.168.95.3/24,fe80:0:0:0:5e5b:35ff:fed0:77b/64"}, "netmask": "255.255.255.0", "netmask6": "/64"}, "last_seen": 1720595866, "last_trouble": {"code": "07", "timestamp": 1720039666}, "lldp_stat": {"chassis_id": "d0:07:ca:f5:21:00", "lldp_med_supported": false, "mgmt_addr": "100.123.105.1", "mgmt_addrs": ["100.123.105.1"], "port_desc": "ge-0/0/4", "port_id": "ge-0/0/4", "power_allocated": 0, "power_draw": 0, "power_request_count": 0, "power_requested": 0, "system_desc": "Juniper Networks, Inc. ex4300-48t internet router, kernel JUNOS 20.4R3-S7.2, Build date: 2023-04-21 19:47:18 UTC Copyright (c) 1996-2023 Juniper Networks, Inc.", "system_name": "Phoenix-Switch"}, "mac": "5c5b35d0077b", "mem_total_kb": 505468, "mem_used_kb": 202096, "model": "AP43", "modified_time": 1718530662, "mount": "faceup", "name": "Phoenix", "notes": "", "num_clients": 1, "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "port_stat": {"eth0": {"full_duplex": true, "rx_bytes": 1284143195, "rx_errors": 0, "rx_peak_bps": 17585, "rx_pkts": 5199816, "speed": 1000, "tx_bytes": 1283744961, "tx_peak_bps": 26484, "tx_pkts": 3990463, "up": true}, "eth1": {"full_duplex": false, "rx_bytes": 0, "rx_errors": 0, "rx_peak_bps": 0, "rx_pkts": 0, "speed": 0, "tx_bytes": 0, "tx_peak_bps": 0, "tx_pkts": 0, "up": false}}, "power_budget": 8400, "power_constrained": false, "power_src": "DC Input", "radio_config": {}, "radio_stat": {"band_24": {"bandwidth": 20, "channel": 11, "mac": "5c5b35dea810", "noise_floor": -80, "num_clients": 0, "power": 17, "rx_bytes": 12948211, "rx_pkts": 65292, "tx_bytes": 19071943, "tx_pkts": 76926, "usage": "24", "util_all": 24, "util_non_wifi": 2, "util_rx_in_bss": 0, "util_rx_other_bss": 17, "util_tx": 4, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}, "band_5": {"bandwidth": 40, "channel": 36, "mac": "5c5b35dea7f0", "noise_floor": -90, "num_clients": 1, "power": 17, "rx_bytes": 578362619, "rx_pkts": 2687577, "tx_bytes": 1199571353, "tx_pkts": 2479302, "usage": "5", "util_all": 13, "util_non_wifi": 0, "util_rx_in_bss": 0, "util_rx_other_bss": 10, "util_tx": 1, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}}, "rx_bps": 9276, "rx_bytes": 591310830, "rx_pkts": 2752869, "serial": "A0703200709E6", "site_id": "46fc665e-9706-4296-8fe2-78f42f2e67e4", "status": "connected", "switch_redundancy": {"num_redundant_aps": 1}, "tx_bps": 8067, "tx_bytes": 1218643296, "tx_pkts": 2556228, "type": "ap", "uptime": 1593120, "version": "0.14.29313"}]}, "DevicesArrayStatsOrgGatewayStats": {"value": [{"arp_table_stats": {"arp_table_count": 21, "max_entries_supported": 64000}, "auto_upgrade_stat": {"lastcheck": 1720595477}, "cert_expiry": 1743292763, "cluster_config": {"configuration": "active-active", "control_link_info": {"name": "fxp1", "status": "Up"}, "ethernet_connection": [{"name": "reth0", "status": "Up"}, {"name": "reth1", "status": "Up"}, {"name": "reth2", "status": "Down"}, {"name": "reth3", "status": "Down"}, {"name": "reth4", "status": "Up"}], "fabric_link_info": {"DataPlaneNotifiedStatus": "Up", "Interface": [], "InternalStatus": "Up", "State": "Enabled", "Status": "Enabled"}, "last_status_change_reason": "No failures", "operational": "active-active", "primary_node_health": "Healthy", "redundancy_group_information": [{"Id": 0, "MonitoringFailure": "none", "Threshold": 255}, {"Id": 1, "MonitoringFailure": "interface-monitoring", "Threshold": 0}, {"Id": 2, "MonitoringFailure": "none", "Threshold": 255}], "secondary_node_health": "Not healthy", "status": "Green"}, "config_status": "COMMITED", "config_timestamp": 1720182848, "config_version": 1720182848, "cpu2_stat": {"idle": 86, "interrupt": 0, "load_avg": [0.13, 0.17, 0.16], "system": 5, "user": 9}, "cpu_stat": {"idle": 76, "interrupt": 0, "load_avg": [0.18, 0.31, 0.39], "system": 10, "user": 14}, "created_time": 1711756611, "deviceprofile_id": "5e5daedf-e650-4013-b41c-845f0d2b9414", "deviceprofile_name": "wan_srx_tor_hub1", "dhcpd_stat": {"byod_dc1": {"num_ips": 100, "num_leased": 0}, "corp_dc1": {"num_ips": 100, "num_leased": 4}, "guest_dc1": {"num_ips": 241, "num_leased": 0}, "iot_dc1": {"num_ips": 100, "num_leased": 0}, "mgmt_dc1": {"num_ips": 100, "num_leased": 2}, "teleworker": {"num_ips": 140, "num_leased": 0}}, "ext_ip": "69.196.157.189", "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1718392692.580769, "will_retry": false}, "has_pcap": false, "hostname": "wan_srx_tor_hub1-srx", "id": "00000000-0000-0000-1000-4db14e107134", "if_stat": {"ge-0/0/5.130": {"address_mode": "Unknown", "nat_addresses": [], "network_name": "", "port_id": "ge-0/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}, "ge-1/0/5.120": {"address_mode": "Unknown", "nat_addresses": [], "network_name": "", "port_id": "ge-1/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}}, "ip": "69.196.157.190", "ip_stat": {"gateway": "69.196.157.185", "ip": "69.196.157.190", "ips": {"vlan1": "69.196.157.190,69.196.157.190"}, "netmask": "255.255.255.255"}, "is_ha": true, "last_seen": 1720598726, "mac": "4db14e107134", "mac_table_stats": {"mac_table_count": 0, "max_mac_entries_supported": 160000}, "memory2_stat": {"usage": 32}, "memory_stat": {"usage": 39}, "model": "SRX300", "modified_time": 1720092942, "module2_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598717, "mac": "ec38739270c0", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV2218AF1505", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 64, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 580964, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "secondary", "vc_state": "active", "version": "21.2R3-S6.11"}], "module_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598716.999985, "mac": "4db14e107134", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV0219AN0335", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 65, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 1945193, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "primary", "vc_state": "active", "version": "21.2R3-S6.11"}], "name": "wan_srx_tor_hub1-srx", "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "route_summary_stats": {"fib_routes": 0, "max_unicast_routes_supported": 1240000, "rib_routes": 0, "total_routes": 0}, "serial": "CV0219AN0335", "service_stat": {}, "service_status": {"appid_status": "enabled", "appid_version": 3720, "ewf_status": "disabled", "idp_install_result": "successful", "idp_install_timestamp": "2024-07-10T06:29:11.708164029Z", "idp_status": "disabled", "idp_update_timestamp": "2024-07-10T06:28:28.567046244Z"}, "site_id": "83c31971-ad70-4419-ae20-7f2b90748986", "spu2_stat": [{"spu_cpu": 0, "spu_current_session": 39, "spu_max_session": 32768, "spu_memory": 31, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "spu_stat": [{"spu_cpu": 1, "spu_current_session": 47, "spu_max_session": 32768, "spu_memory": 34, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "status": "connected", "tag_id": 3550217, "tag_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "type": "gateway", "uptime": 581259, "version": "21.2R3-S6.11"}]}, "DevicesArrayStatsOrgSwitchStats": {"value": [{"ap_redundancy": {"num_aps": 1, "num_aps_with_switch_redundancy": 1}, "arp_table_stats": {"arp_table_count": 16, "max_entries_supported": 32000}, "auto_upgrade_stat": {"lastcheck": 1720600596}, "cert_expiry": 1743932274, "clients": [{"device_mac": "0912f561b653", "mac": "001132f5ad23", "port_id": "ge-1/0/11"}], "clients_stats": {"total": {"num_aps": [0, 0], "num_wired_clients": 13}}, "config_status": "COMMITED", "config_timestamp": 1720552389, "config_version": 1720552389, "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "created_time": 1712346090, "dhcpd_stat": {"ifo": {"num_ips": 5, "num_leased": 0}}, "ext_ip": "153.142.221.41", "fw_versions_outofsync": false, "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1712409702.9714448, "will_retry": false}, "has_pcap": true, "hostname": "SW-HLAB-ea2e00", "hw_rev": "A", "id": "00000000-0000-0000-1000-0912f561b653", "if_stat": {"ge-0/0/5.0": {"port_id": "ge-0/0/5", "rx_bytes": 0, "rx_pkts": 78110, "tx_bytes": 0, "tx_pkts": 61037, "up": true}, "ge-1/0/0.0": {"port_id": "ge-1/0/0", "rx_bytes": 0, "rx_pkts": 56415, "tx_bytes": 0, "tx_pkts": 72209, "up": true}, "irb.172": {"ips": ["10.3.172.41/24"], "port_id": "irb", "rx_bytes": 0, "rx_pkts": 1291755, "tx_bytes": 0, "tx_pkts": 990327, "up": true, "vlan": 172}, "vme.0": {"port_id": "vme", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true}}, "ip": "10.3.10.10", "ip_stat": {"gateway": "10.3.172.9", "ip": "10.3.10.10", "ips": {"vlan172": "10.3.172.41"}, "netmask": "255.255.255.255"}, "last_seen": 1720601189, "last_trouble": {"code": "103", "timestamp": 1712412455215}, "mac": "0912f561b653", "mac_table_stats": {"mac_table_count": 58, "max_mac_entries_supported": 64000}, "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "modified_time": 1720552388, "module_stat": [{"boot_partition": "junos", "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "fpc_idx": 0, "mac": "0912f561b653", "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 7.3}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0324AV0077", "temperatures": [{"celsius": 51, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 51, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 50, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 57, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/1", "port_id": "vcp-0/1/0"}, {"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/0", "port_id": "vcp-0/1/1"}], "vc_mode": "HiGiG", "vc_role": "master", "vc_state": "present", "version": "22.4R3.25"}, {"boot_partition": "junos", "cpu_stat": {"idle": 79, "interrupt": 0, "load_avg": [0.52, 0.46, 0.46], "system": 6, "user": 15}, "fpc_idx": 1, "mac": "485a0deb2380", "memory_stat": {"usage": 14}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 22.1}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0424AV0101", "temperatures": [{"celsius": 52, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 53, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 52, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 59, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/1", "port_id": "vcp-1/1/0"}, {"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/0", "port_id": "vcp-1/1/1"}], "vc_mode": "HiGiG", "vc_role": "backup", "vc_state": "present", "version": "22.4R3.25"}], "name": "SW-HLAB-ea2e00", "org_id": "c5324060-19da-48fa-af28-2b530bd08765", "route_summary_stats": {"fib_routes": 7, "max_unicast_routes_supported": 32150, "rib_routes": 40, "total_routes": 3}, "serial": "FJ0324AV0077", "site_id": "a0e43ffb-94a6-4f27-92aa-9cf832e1143d", "status": "connected", "tag_id": 3564806, "tag_uuid": "507604a4-6b34-449c-acb3-87955430b006", "type": "switch", "uptime": 1692720, "vc_mac": "0912f561b653", "vc_setup_info": {"config_type": "nonprovisioned", "err_missing_dev_id_fpc": false}, "version": "22.4R3.25"}]}, "DevicesArrayStatsSiteAccessPointStats": {"value": [{"auto_upgrade_stat": {"lastcheck": 1720594762}, "ble_stat": {"beacon_enabled": true, "beacon_rate": 4, "eddystone_uid_enabled": false, "eddystone_uid_freq_msec": 1000, "eddystone_uid_instance": "5c5b35d0077b", "eddystone_uid_namespace": "9777c1a06ef611e68bbf", "eddystone_url_enabled": false, "eddystone_url_freq_msec": 1000, "eddystone_url_url": "", "ibeacon_enabled": false, "ibeacon_freq_msec": 1000, "ibeacon_major": 894, "ibeacon_minor": 9328, "ibeacon_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "major": 894, "minors": [9328, 9329, 9330, 9331, 9332, 9333, 9334, 9335, -1], "power": 8, "rx_bytes": 158500843, "rx_pkts": 3549163, "tx_bytes": 509640, "tx_pkts": 85411, "tx_resets": 0, "uuid": "af010e2b-f829-4975-b49e-2e896ed1d627"}, "config_reverted": false, "cpu_system": 21921854, "cpu_user": 7496631, "cpu_util": 5, "created_time": 1718228350, "env_stat": {"accel_x": -0.092, "accel_y": 0.004, "accel_z": -1.02, "ambient_temp": 43, "attitude": 0, "cpu_temp": 53, "humidity": 9, "magne_x": 0, "magne_y": 0, "magne_z": 0, "pressure": 968, "vcore_voltage": 0}, "ext_ip": "66.129.234.28", "hw_rev": "C02", "id": "00000000-0000-0000-1000-5c5b35d0077b", "inactive_wired_vlans": [], "ip": "192.168.95.3", "ip_stat": {"dhcp_server": "192.168.95.1", "dns": ["8.8.8.8"], "gateway": "192.168.95.1", "ip": "192.168.95.3", "ip6": "fe80:0:0:0:5e5b:35ff:fed0:77b", "ips": {"vlan1": "192.168.95.3/24,fe80:0:0:0:5e5b:35ff:fed0:77b/64"}, "netmask": "255.255.255.0", "netmask6": "/64"}, "last_seen": 1720595866, "last_trouble": {"code": "07", "timestamp": 1720039666}, "lldp_stat": {"chassis_id": "d0:07:ca:f5:21:00", "lldp_med_supported": false, "mgmt_addr": "100.123.105.1", "mgmt_addrs": ["100.123.105.1"], "port_desc": "ge-0/0/4", "port_id": "ge-0/0/4", "power_allocated": 0, "power_draw": 0, "power_request_count": 0, "power_requested": 0, "system_desc": "Juniper Networks, Inc. ex4300-48t internet router, kernel JUNOS 20.4R3-S7.2, Build date: 2023-04-21 19:47:18 UTC Copyright (c) 1996-2023 Juniper Networks, Inc.", "system_name": "Phoenix-Switch"}, "mac": "5c5b35d0077b", "mem_total_kb": 505468, "mem_used_kb": 202096, "model": "AP43", "modified_time": 1718530662, "mount": "faceup", "name": "Phoenix", "notes": "", "num_clients": 1, "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "port_stat": {"eth0": {"full_duplex": true, "rx_bytes": 1284143195, "rx_errors": 0, "rx_peak_bps": 17585, "rx_pkts": 5199816, "speed": 1000, "tx_bytes": 1283744961, "tx_peak_bps": 26484, "tx_pkts": 3990463, "up": true}, "eth1": {"full_duplex": false, "rx_bytes": 0, "rx_errors": 0, "rx_peak_bps": 0, "rx_pkts": 0, "speed": 0, "tx_bytes": 0, "tx_peak_bps": 0, "tx_pkts": 0, "up": false}}, "power_budget": 8400, "power_constrained": false, "power_src": "DC Input", "radio_config": {}, "radio_stat": {"band_24": {"bandwidth": 20, "channel": 11, "mac": "5c5b35dea810", "noise_floor": -80, "num_clients": 0, "power": 17, "rx_bytes": 12948211, "rx_pkts": 65292, "tx_bytes": 19071943, "tx_pkts": 76926, "usage": "24", "util_all": 24, "util_non_wifi": 2, "util_rx_in_bss": 0, "util_rx_other_bss": 17, "util_tx": 4, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}, "band_5": {"bandwidth": 40, "channel": 36, "mac": "5c5b35dea7f0", "noise_floor": -90, "num_clients": 1, "power": 17, "rx_bytes": 578362619, "rx_pkts": 2687577, "tx_bytes": 1199571353, "tx_pkts": 2479302, "usage": "5", "util_all": 13, "util_non_wifi": 0, "util_rx_in_bss": 0, "util_rx_other_bss": 10, "util_tx": 1, "util_undecodable_wifi": 0, "util_unknown_wifi": 1}}, "rx_bps": 9276, "rx_bytes": 591310830, "rx_pkts": 2752869, "serial": "A0703200709E6", "site_id": "46fc665e-9706-4296-8fe2-78f42f2e67e4", "status": "connected", "switch_redundancy": {"num_redundant_aps": 1}, "tx_bps": 8067, "tx_bytes": 1218643296, "tx_pkts": 2556228, "type": "ap", "uptime": 1593120, "version": "0.14.29313"}]}, "DevicesArrayStatsSiteGatewayStats": {"value": [{"arp_table_stats": {"arp_table_count": 21, "max_entries_supported": 64000}, "auto_upgrade_stat": {"lastcheck": 1720595477}, "cert_expiry": 1743292763, "cluster_config": {"configuration": "active-active", "control_link_info": {"name": "fxp1", "status": "Up"}, "ethernet_connection": [{"name": "reth0", "status": "Up"}, {"name": "reth1", "status": "Up"}, {"name": "reth2", "status": "Down"}, {"name": "reth3", "status": "Down"}, {"name": "reth4", "status": "Up"}], "fabric_link_info": {"DataPlaneNotifiedStatus": "Up", "Interface": [], "InternalStatus": "Up", "State": "Enabled", "Status": "Enabled"}, "last_status_change_reason": "No failures", "operational": "active-active", "primary_node_health": "Healthy", "redundancy_group_information": [{"Id": 0, "MonitoringFailure": "none", "Threshold": 255}, {"Id": 1, "MonitoringFailure": "interface-monitoring", "Threshold": 0}, {"Id": 2, "MonitoringFailure": "none", "Threshold": 255}], "secondary_node_health": "Not healthy", "status": "Green"}, "config_status": "COMMITED", "config_timestamp": 1720182848, "config_version": 1720182848, "cpu2_stat": {"idle": 86, "interrupt": 0, "load_avg": [0.13, 0.17, 0.16], "system": 5, "user": 9}, "cpu_stat": {"idle": 76, "interrupt": 0, "load_avg": [0.18, 0.31, 0.39], "system": 10, "user": 14}, "created_time": 1711756611, "deviceprofile_id": "5e5daedf-e650-4013-b41c-845f0d2b9414", "deviceprofile_name": "wan_srx_tor_hub1", "dhcpd_stat": {"byod_dc1": {"num_ips": 100, "num_leased": 0}, "corp_dc1": {"num_ips": 100, "num_leased": 4}, "guest_dc1": {"num_ips": 241, "num_leased": 0}, "iot_dc1": {"num_ips": 100, "num_leased": 0}, "mgmt_dc1": {"num_ips": 100, "num_leased": 2}, "teleworker": {"num_ips": 140, "num_leased": 0}}, "ext_ip": "69.196.157.189", "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1718392692.580769, "will_retry": false}, "has_pcap": false, "hostname": "wan_srx_tor_hub1-srx", "id": "00000000-0000-0000-1000-4db14e107134", "if_stat": {"ge-0/0/5.130": {"address_mode": "Unknown", "nat_addresses": [], "network_name": "", "port_id": "ge-0/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}, "ge-1/0/5.120": {"address_mode": "Unknown", "nat_addresses": [], "network_name": "", "port_id": "ge-1/0/5", "port_usage": "lan", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true, "vlan": 0}}, "ip": "69.196.157.190", "ip_stat": {"gateway": "69.196.157.185", "ip": "69.196.157.190", "ips": {"vlan1": "69.196.157.190,69.196.157.190"}, "netmask": "255.255.255.255"}, "is_ha": true, "last_seen": 1720598726, "mac": "4db14e107134", "mac_table_stats": {"mac_table_count": 0, "max_mac_entries_supported": 160000}, "memory2_stat": {"usage": 32}, "memory_stat": {"usage": 39}, "model": "SRX300", "modified_time": 1720092942, "module2_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598717, "mac": "ec38739270c0", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV2218AF1505", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 64, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 580964, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "secondary", "vc_state": "active", "version": "21.2R3-S6.11"}], "module_stat": [{"backup_version": "21.2R3-S7.7", "fans": [], "last_seen": 1720598716.999985, "mac": "4db14e107134", "model": "SRX300", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.2R3-S7.7", "serial": "CV0219AN0335", "status": "connected", "temperatures": [{"celsius": 49, "name": "Routing Engine", "status": "ok"}, {"celsius": 65, "name": "Routing Engine CPU", "status": "ok"}], "uptime": 1945193, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "fxp1", "port_id": "fxp1"}], "vc_role": "primary", "vc_state": "active", "version": "21.2R3-S6.11"}], "name": "wan_srx_tor_hub1-srx", "org_id": "af010e2b-f829-4975-b49e-2e896ed1d627", "route_summary_stats": {"fib_routes": 0, "max_unicast_routes_supported": 1240000, "rib_routes": 0, "total_routes": 0}, "serial": "CV0219AN0335", "service_stat": {}, "service_status": {"appid_status": "enabled", "appid_version": 3720, "ewf_status": "disabled", "idp_install_result": "successful", "idp_install_timestamp": "2024-07-10T06:29:11.708164029Z", "idp_status": "disabled", "idp_update_timestamp": "2024-07-10T06:28:28.567046244Z"}, "site_id": "83c31971-ad70-4419-ae20-7f2b90748986", "spu2_stat": [{"spu_cpu": 0, "spu_current_session": 39, "spu_max_session": 32768, "spu_memory": 31, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "spu_stat": [{"spu_cpu": 1, "spu_current_session": 47, "spu_max_session": 32768, "spu_memory": 34, "spu_pending_session": 0, "spu_uptime": 1944572, "spu_valid_session": 0}], "status": "connected", "tag_id": 3550217, "tag_uuid": "af010e2b-f829-4975-b49e-2e896ed1d627", "type": "gateway", "uptime": 581259, "version": "21.2R3-S6.11"}]}, "DevicesArrayStatsSiteSwitch": {"value": [{"ap_redundancy": {"num_aps": 1, "num_aps_with_switch_redundancy": 1}, "arp_table_stats": {"arp_table_count": 16, "max_entries_supported": 32000}, "auto_upgrade_stat": {"lastcheck": 1720600596}, "cert_expiry": 1743932274, "clients": [{"device_mac": "0912f561b653", "mac": "001132f5ad23", "port_id": "ge-1/0/11"}], "clients_stats": {"total": {"num_aps": [0, 0], "num_wired_clients": 13}}, "config_status": "COMMITED", "config_timestamp": 1720552389, "config_version": 1720552389, "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "created_time": 1712346090, "dhcpd_stat": {"ifo": {"num_ips": 5, "num_leased": 0}}, "ext_ip": "153.142.221.41", "fw_versions_outofsync": false, "fwupdate": {"progress": 100, "status": "upgraded", "status_id": 3037, "timestamp": 1712409702.9714448, "will_retry": false}, "has_pcap": true, "hostname": "SW-HLAB-ea2e00", "hw_rev": "A", "id": "00000000-0000-0000-1000-0912f561b653", "if_stat": {"ge-0/0/5.0": {"port_id": "ge-0/0/5", "rx_bytes": 0, "rx_pkts": 78110, "tx_bytes": 0, "tx_pkts": 61037, "up": true}, "ge-1/0/0.0": {"port_id": "ge-1/0/0", "rx_bytes": 0, "rx_pkts": 56415, "tx_bytes": 0, "tx_pkts": 72209, "up": true}, "irb.172": {"ips": ["10.3.172.41/24"], "port_id": "irb", "rx_bytes": 0, "rx_pkts": 1291755, "servp_info": {}, "tx_bytes": 0, "tx_pkts": 990327, "up": true, "vlan": 172}, "vme.0": {"port_id": "vme", "rx_bytes": 0, "rx_pkts": 0, "tx_bytes": 0, "tx_pkts": 0, "up": true}}, "ip": "10.3.10.10", "ip_stat": {"gateway": "10.3.172.9", "ip": "10.3.10.10", "ips": {"vlan172": "10.3.172.41"}, "netmask": "255.255.255.255"}, "last_seen": 1720601189, "last_trouble": {"code": "103", "timestamp": 1712412455215}, "mac": "0912f561b653", "mac_table_stats": {"mac_table_count": 58, "max_mac_entries_supported": 64000}, "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "modified_time": 1720552388, "module_stat": [{"boot_partition": "junos", "cpu_stat": {"idle": 74, "interrupt": 0, "load_avg": [0.8, 0.75, 0.78], "system": 13, "user": 13}, "fpc_idx": 0, "mac": "0912f561b653", "memory_stat": {"usage": 16}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 7.3}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0324AV0077", "temperatures": [{"celsius": 51, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 51, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 50, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 57, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/1", "port_id": "vcp-0/1/0"}, {"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/0", "port_id": "vcp-0/1/1"}], "vc_mode": "HiGiG", "vc_role": "master", "vc_state": "present", "version": "22.4R3.25"}, {"boot_partition": "junos", "cpu_stat": {"idle": 79, "interrupt": 0, "load_avg": [0.52, 0.46, 0.46], "system": 6, "user": 15}, "fpc_idx": 1, "mac": "485a0deb2380", "memory_stat": {"usage": 14}, "model": "EX4100-F-12P", "pics": [{"index": 0, "model_number": "EX4100-F-12P", "port_groups": [{"count": 12, "type": "GE"}]}, {"index": 1, "model_number": "EX4100-F-12P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}, {"index": 2, "model_number": "EX4100-F-12P", "port_groups": [{"count": 2, "type": "GE"}]}], "poe": {"max_power": 180, "power_draw": 22.1}, "psus": [{"name": "Power Supply 0", "status": "ok"}, {"name": "Power Supply 1", "status": "absent"}, {"name": "Power Supply 2", "status": "absent"}], "serial": "FJ0424AV0101", "temperatures": [{"celsius": 52, "name": "Thermal board Sensor 1", "status": "ok"}, {"celsius": 53, "name": "Thermal board Sensor 2", "status": "ok"}, {"celsius": 52, "name": "Thermal board Sensor 3", "status": "ok"}, {"celsius": 59, "name": "PFE Die Sensor", "status": "ok"}], "type": "fpc", "uptime": 1692720, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/1", "port_id": "vcp-1/1/0"}, {"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/0", "port_id": "vcp-1/1/1"}], "vc_mode": "HiGiG", "vc_role": "backup", "vc_state": "present", "version": "22.4R3.25"}], "name": "SW-HLAB-ea2e00", "org_id": "c5324060-19da-48fa-af28-2b530bd08765", "route_summary_stats": {"fib_routes": 7, "max_unicast_routes_supported": 32150, "rib_routes": 40, "total_routes": 3}, "serial": "FJ0324AV0077", "site_id": "a0e43ffb-94a6-4f27-92aa-9cf832e1143d", "status": "connected", "tag_id": 3564806, "tag_uuid": "507604a4-6b34-449c-acb3-87955430b006", "type": "switch", "uptime": 1692720, "vc_mac": "0912f561b653", "vc_setup_info": {"config_type": "nonprovisioned", "err_missing_dev_id_fpc": false}, "version": "22.4R3.25"}]}, "DevicesSearchAp": {"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)\nTechnical Support: https://www.cisco.com/techsupport\nCopyright (c) 1986-2013 by Cisco Systems, Inc.\nCompiled 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", "power_constrained": false, "power_opmode": "", "site_id": "a8178443-ecb5-461c-b854-f16627619ab3", "sku": "AP41-US", "timestamp": 1596588619.007, "uptime": 85280, "version": "0.7.20216", "wlans": [{"id": "28c36fc7-dc22-4960-9d81-34087511c2e5", "ssid": "Live-Demo-NAC"}, {"id": "51b82e2b-f9e8-470b-a32a-cecde5501b0f", "ssid": "Live-Demo"}]}], "start": 0, "total": 0}}, "DevicesSearchGateway": {"value": {"end": 0, "limit": 0, "next": "string", "results": [{"clustered": true, "evpn_missing_links": false, "evpntopo_id": "", "ext_ip": "250.242.0.102", "hostname": ["wan-teleworker", "00ec77599d00", "router"], "ip": "250.242.0.102", "last_config_status": "success", "last_hostname": "wan-teleworker", "mac": "00ec77599d00", "mist_configured": true, "model": "SSR120", "node": "node1", "node0_mac": "00ec77599d00", "node1_mac": "00ec77599d01", "num_members": 0, "org_id": "6748cfa6-4e12-11e6-9188-0242ac110007", "role": "", "site_id": "a8178443-ecb5-461c-b854-f16627619ab3", "t128agent_version": "3.8.0-201", "time_drifted": false, "timestamp": 1734001399.025, "type": "gateway", "uptime": 3586951, "version": "6.2.5-5.r2"}], "start": 0, "total": 0}}, "DevicesSearchSwitch": {"value": {"end": 0, "limit": 0, "next": "string", "results": [{"clustered": false, "evpn_missing_links": false, "evpntopo_id": "", "ext_ip": "0.0.0.0", "hostname": ["ld-cup-idf-bbb"], "ip": "10.0.0.217", "last_config_status": "success", "last_hostname": "ld-cup-idf-bbb", "last_trouble_code": "106", "last_trouble_timestamp": 1719540, "mac": "00c78d939c00", "mist_configured": true, "model": "EX4100-48MP", "num_members": 1, "org_id": "6748cfa6-4e12-11e6-9188-0242ac110007", "role": "", "site_id": "a8178443-ecb5-461c-b854-f16627619ab3", "time_drifted": false, "timestamp": 1733998766.256, "type": "switch", "uptime": 19287811, "version": "22.4R3.25"}], "start": 0, "total": 0}}, "Deviceswitch": {"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"}, "modified_time": 0, "name": "corp", "notes": "slightly off center", "ntp_servers": ["pool.ntp.org", "time.google.com"], "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": {"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"}}, "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", "type": "switch", "vars": {"RADIUS_IP1": "172.31.2.5", "RADIUS_SECRET": "11s64632d"}}}, "DiscoveredSwitchMetricsExample": {"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": [{"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}}, "DiscoveredSwitchesExample": {"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}}, "DiscoveredSwitchesMetricsExample": {"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}}}, "EventsDevicesExample": {"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": [{"chassis_mac": "60c78d939c0f", "count": 1, "device_type": "switch", "mac": "60c78d939c0f", "model": "EX4100-48MP", "org_id": "9777c1a0-6ef6-11e6-8bbf-02e208b2d34f", "port_id": "ge-0/0/17", "site_id": "978c48e6-6ef6-11e6-8bbf-02e208b2d34f", "text": "ifIndex 533, ifAdminStatus up(1), ifOperStatus down(2), ifName ge-0/0/17", "timestamp": 1764236687.435, "type": "SW_PORT_DOWN", "version": "23.4R2-S4.11"}, {"ap": "5c5b35d0077b", "device_type": "ap", "mac": "5c5b35d0077b", "model": "AP43", "org_id": "9777c1a0-6ef6-11e6-8bbf-02e208b2d34f", "site_id": "46fc665e-9706-4296-8fe2-78f42f2e67e4", "timestamp": 1764235684.467825, "type": "AP_CONFIGURED"}], "start": 1531776183, "total": 14}}, "EventsFastroamExample": {"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}}, "EventsNacClientSearchNACclientevents": {"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}}, "EventsOtherDevicesSearchExample": {"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}}, "EventsSearchExample": {"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}}, "EvpnTopologiesArrayExample": {"value": [{"created_time": 1736421230, "evpn_options": {"auto_loopback_subnet": "172.16.192.0/24", "auto_loopback_subnet6": "fd33:ab00:2::/64", "auto_router_id_subnet": "172.16.254.0/23", "core_as_border": true, "overlay": {"as": 65000}, "per_vlan_vga_v4_mac": false, "routed_at": "core", "underlay": {"as_base": 65001, "subnet": "10.255.240.0/20", "use_ipv6": false}}, "for_site": false, "id": "764fb173-94f9-447c-8454-def62e5a999f", "modified_time": 1736421230, "name": "tert", "org_id": "3a2627d7-bfbc-45af-b85d-8841581c6d63", "pod_names": {"1": "Pod 1"}, "site_id": "00000000-0000-0000-0000-000000000000"}]}, "EvpnTopologyExample": {"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"]}]}}, "FingerprintSearchExample": {"value": {"end": 1735678700, "limit": 10, "results": [{"family": "Apple", "mac": "d420b080516e", "mfg": "Apple, Inc.", "model": "Unknown", "org_id": "bb2fb165-0931-49c7-a1b8-9b5814326b7d", "os": "iOS 18.1.1", "os_type": "iOS", "random_mac": true, "site_id": "441a1214-6928-442a-8e92-e1d34b8ec6a6", "timestamp": 1735678662.58}, {"family": "EX Series Switch", "mac": "d420b080516d", "mfg": "Juniper Networks, Inc.", "model": "ex4100-f-12p", "org_id": "b6bc08f3-60a3-402b-8f0d-caf9132a1e9a", "os": "JUNOS 22.3R1.12", "os_type": "JUNOS", "random_mac": false, "site_id": "441a1214-6928-442a-8e92-e1d34b8ec6a6", "timestamp": 1735669092.932}], "start": 1735678650, "total": 2}}, "GatewayClusterGatewayCluster": {"value": {"nodes": [{"mac": "aff827549235"}, {"mac": "8396cd006c8c"}]}}, "GatewayMetricsExample": {"value": {"config_success": 99.9, "version_compliance": {"major_version": {"SRX320": {"major_count": 0, "major_version": "19.4R2-S1.2"}}, "score": 99.9, "type": "gateway"}}}, "GuestExample": {"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"}}, "GuestExample2": {"value": {"authorized": true, "authorized_expiring_time": 1480704955, "authorized_time": 1480704355, "company": "abc", "email": "john@abc.com", "field1": "xxx", "mac": "5684dae9ac8b", "name": "John Smith"}}, "GuestsArrayExample": {"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"}]}, "GuestsArrayExample2": {"value": [{"authorized": true, "authorized_expiring_time": 1480704955, "authorized_time": 1480704355, "company": "abc", "email": "john@abc.com", "field1": "xxx", "mac": "5684dae9ac8b", "name": "John Smith"}]}, "GuestsSearchExample": {"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}}, "HTTP200AutoPlacementAutoplacementisalreadyinprogressforthismap": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 30, "reason": "Map Already Enqueued", "started": false, "valid": true, "wifi_interrupting": true}}, "HTTP200AutoPlacementDryrunformapcompleted": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 30, "reason": "Map has met the minimum requirements for auto placement", "valid": true, "wifi_interrupting": true}}, "HTTP200AutoPlacementMapfailedtostartasithadlessthan3APsassociatedwithit": {"value": {"devices": {}, "reason": "Map has less than 3 APs associated with it to perform auto placement", "started": false, "valid": false}}, "HTTP200AutoPlacementServicefailedtostartduecontaininginvalidAPs": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}, "00000000004": {"reason": "Device model AP41 is not supported for auto placement", "valid": false}, "00000000005": {"reason": "Device firmware 0.14.28300 does not meet the minimum requirement 0.14.28310", "valid": false}}, "reason": "Map has APs that do not meet the minimum requirements for auto placement", "started": false, "valid": false}}, "HTTP200AutoPlacementServicestartedafteroverrideforlocalization": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}, "00000000004": {"reason": "Device model AP41 is not supported for auto placement", "valid": false}, "00000000005": {"reason": "Device firmware 0.14.28300 does not meet the minimum requirement 0.14.28310", "valid": false}}, "reason": "Started localization for auto placement", "started": true, "valid": false}}, "HTTP200AutoPlacementServicestartedafteroverridefororchestration": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}, "00000000004": {"reason": "Device model AP41 is not supported for auto placement", "valid": false}, "00000000005": {"reason": "Device firmware 0.14.28300 does not meet the minimum requirement 0.14.28310", "valid": false}}, "estimated_runtime": 30, "reason": "Started collection for auto placement", "started": true, "valid": false, "wifi_interrupting": true}}, "HTTP200AutoPlacementServicestartedsuccessfullyforlocalization": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "reason": "Started localization for auto placement", "started": true, "valid": true}}, "HTTP200AutoPlacementServicestartedsuccessfullyfororchestration": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 30, "reason": "Started collection for auto placement", "started": true, "valid": true, "wifi_interrupting": true}}, "HTTP200AutoPlacementUnabletoreachtheautoplacementservice": {"value": {"devices": {"00000000001": {"valid": true}, "00000000002": {"valid": true}, "00000000003": {"valid": true}}, "estimated_runtime": 30, "reason": "Unable to reach auto placement service", "started": false, "valid": true, "wifi_interrupting": true}}, "HTTP400Example": {"value": {"detail": "JSON parse error - Expecting value: line 5 column 8 (char 56)"}}, "HTTP400WebhookDuplicateassetfilterid": {"value": {"detail": "invalid field: assetfilter_ids", "reason": "contains duplicate uuids"}}, "HTTP400WebhookInvalidassetfilterid": {"value": {"detail": "invalid field: assetfilter_ids"}}, "HTTP400WebhookMalformedassetfilterid": {"value": {"detail": "invalid field: assetfilter_ids"}}, "HTTP400WebhookRawDataWebhookalreadycreated": {"value": {"detail": "Webhook already configured for special location topic"}}, "HTTP400WebhookRawDataWebhookmultipletopics": {"value": {"detail": "Only one location topic can be configured per URL"}}, "HTTP400Webhookorglevelfilterwebhook": {"value": {"detail": "invalid field: topics", "reason": "filtered asset webhooks must be associated with a site"}}, "HTTP401Example": {"value": {"detail": "Authentication credentials were not provided."}}, "HTTP403Example": {"value": {"detail": "You do not have permission to perform this action."}}, "HTTP429Example": {"value": {"detail": "Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold"}}, "IdpProfileArrayIdpprofiles": {"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"]}}]}]}, "IdpProfileIdpprofile": {"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"]}}]}}, "InsightMetricExample": {"value": {"end": 0, "interval": 0, "results": [{}], "start": 0}}, "InsightMetricMspOrgsSle": {"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": "ab0aca7a-d45c-469b-b3bb-4fe240642d0b", "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}}, "InsightMetricOrgWorstSitesBySle": {"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": "ab0aca7a-d45c-469b-b3bb-4fe240642d0b", "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}}, "InsightRogueClientsExample": {"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}}, "InsightRogueExample": {"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}}, "InstallerAlarmtemplatesExample": {"value": [{"id": "684dfc5c-fe77-2290-eb1d-ef3d677fe168", "name": "AlarmTemplate 1"}]}, "InstallerDeviceProfilesExample": {"value": [{"id": "6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9", "name": "DeviceProfile 1"}]}, "InstallerDevicesArrayExample": {"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}]}, "InstallerRftemplatesArrayExample": {"value": [{"id": "bb8a9017-1e36-5d6c-6f2b-551abe8a76a2", "name": "RFTemplate 1"}]}, "InstallerSitegroupsArrayExample": {"value": [{"id": "581328b6-e382-f54e-c9dc-999983183a34", "name": "SiteGroup 1"}]}, "InstallerSitesArrayExample": {"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"}]}, "InviteVerifyNotFoundInvalidSecret": {"value": {"detail": "invalid secret"}}, "InviteVerifyNotFoundInviteCreatedBySelf": {"value": {"detail": "invite created by self"}}, "IotEndpointsSearchExample": {"value": {"end": 1531862583.0, "results": [{"ap_mac": "5c5b350e0001", "id": "63f9e299182b63f9", "lqi": 178, "mac": "63f9e299182b63f9", "mfg": "Assa Abloy", "model": "Assa Abloy", "timestamp": 1531782218, "type": "zigbee"}], "start": 1531776183.0, "total": 2}}, "IssuedClientCertificatesExample": {"value": {"limit": 100, "page": 1, "results": [{"cert_provider": "jamf", "common_name": "john@corp.com", "created_time": 1431382121, "device_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "expire_time": 1718921115, "serial_number": "13 00 13 03 23 EE D5 84 01"}]}}, "JseInfoExample": {"value": {"cloud_name": "devcentral.juniperclouds.net", "org_names": ["Mist-Sys", "Mist-Eng"]}}, "JsiDevicesExample": {"value": [{"ext_ip": "73.92.124.103", "last_seen": 1654636867, "mac": "c15353123096", "model": "EX2300-C-12P", "serial": "DGCOO0015"}]}, "JsiInventoryErrorNoJuniperAccountLinked": {"value": {"detail": "no juniper account linked"}}, "JsiInventoryExample": {"value": [{"device_name": "name1", "end_of_sale_time": 1561507200, "eos_time": 1672012800, "master": true, "model": "EX2300-24MP", "org_id": "6e843b41-f953-4af9-80e5-e1a70f65754a", "serial": "XN3123300095", "sku": "EX2300", "status": "connected", "suggested_version": "Latest 21.4R3-Sx", "type": "switch", "version": "23.4R2-S4.11", "version_eos_time": 1672012800, "version_time": 1561507200, "warranty": "Enhanced Hardware Warranty", "warranty_time": 1672012800, "warranty_type": "Enhanced Hardware Warranty"}]}, "JsiInventorySearchExample": {"value": {"end": 1748023308, "limit": 1000, "results": [{"claimed": true, "device_name": "name1", "end_of_sale_time": 1561507200, "eos_time": 1672012800, "has_support": true, "master": true, "model": "EX2300-24MP", "org_id": "6e843b41-f953-4af9-80e5-e1a70f65754a", "serial": "XN3123300095", "sku": "EX2300", "status": "connected", "suggested_version": "Latest 21.4R3-Sx", "type": "switch", "version": "23.4R2-S4.11", "version_eos_time": 1672012800, "version_time": 1561507200, "warranty": "Enhanced Hardware Warranty", "warranty_time": 1672012800, "warranty_type": "Enhanced Hardware Warranty"}], "start": 1748019708, "total": 1}}, "JuniperLinkAccountFailedExample": {"value": {"detail": "Account[ABC Corp] already linked"}}, "JuniperLinkAccountSuccessExample": {"value": {"account": {"linked_by": "John Smith (john@abccorp.com)", "name": "ABC Corp"}}}, "JunosRegisterCmdExample": {"value": {"cmd": "set system services ssh...\n...\nset system services outbound-ssh client mist ..."}}, "LicenseExample": {"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}}}, "LicenseUsageOrgExample": {"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}}]}, "LicenseUsageSiteExample": {"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}}, "LocationCoverageExample": {"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}}, "LoginFailureExample": {"value": {"detail": "sso admin login needs to be initiated by IdP", "forward_url": "https://my.sso/idp_sso_url"}}, "LoginFailuresExample": {"value": {"email": "admin@test.com", "last_failure_at": 1509161968, "num_attempts": 40, "src_ips": ["192.168.1.39", "192.168.1.38", "192.168.1.37"], "user_agents": ["Test UA 39", "Test UA 38", "Test UA 37"]}}, "LoginLookupSSOuserexists": {"value": {"sso_url": "https://my.sso/idp_sso_url"}}, "LoginLookuplocaluserexists": {"value": {}}, "LoginOauthUrlExample": {"value": {"authorization_url": "https://accounts.google.com/o/oauth2/v2/auth?.....", "client_id": "173131512-mpbnju32.apps.googleusercontent.com"}}, "LoginSuccess2FArequired": {"value": {"email": "test@mistsys.com", "two_factor_passed": false, "two_factor_required": true}}, "LoginSuccessOK": {"value": {}}, "LogoutExample": {"value": {"forward_url": "https://my.sso/custom_logout_url"}}, "LogsSearchExample": {"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": "2818e386-8dec-2562-9ede-5b8a0fbbdc71", "site_id": "4ac1dcf4-9d8b-7211-65c4-057819f0862b", "timestamp": 1431382121}], "start": 1428939600, "total": 135}}, "MacsArrayExample": {"value": {"macs": ["18-65-90-de-f4-c6", "84-89-ad-5d-69-0d"]}}, "MapImportAssignedAndPlaced": {"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}}}, "MapImportAssignedNamedAndPlaced": {"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}}}, "MapImportPlaced": {"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}}}, "MapsArrayExample": {"value": [{"created_time": 0, "flags": {}, "group_idx": 1, "group_name": "East Wing", "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}]}, "MapstacksArrayExample": {"value": [{"created_time": 0, "id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "modified_time": 0, "name": "Board Room", "org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "site_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1"}]}, "MarvisClientEventsSearchExample": {"value": {"limit": 100, "results": [{"bssid": "00:11:22:33:44:55", "channel": 6, "device_id": "0c2a2c6c-5a95-4956-a02d-e1b39c2e5c6e", "hostname": "my-android-phone", "neighbor_ap_report": [{"band": "2.4GHz", "bssid": "aa:bb:cc:dd:ee:ff", "channel": 1, "rssi": -72}], "org_id": "c168ddee-c14c-11e5-8e81-1258369c38a9", "pre_bssid": "aa:bb:cc:dd:ee:ff", "pre_channel": 1, "pre_rssi": -70, "rssi": -58, "ssid": "Corp-WiFi", "timestamp": 1717027200, "type": "ROAM", "wifi_ip": "192.168.1.55", "wifi_mac": "00:aa:bb:cc:dd:ee"}], "total": 1}}, "MarvisClientExample": {"value": {"enrollment_url": "marvisclient://api.mist.com/path/to/url", "id": "3a14098f-b995-7552-b0a4-b8ee39b337a6", "name": "Handhelds"}}, "MarvisClientInsightsExample": {"value": {"avg_battery": [82, 79], "avg_cellular_rssi": [-95, -92], "avg_cpu": [12.5, 15.2], "avg_memory": [43.1, 44.8], "avg_wifi_rssi": [-62, -60], "end": 1717113600, "interval": 3600, "limit": 100, "page": 1, "rt": ["2026-05-30T16:00:00Z", "2026-05-30T17:00:00Z"], "start": 1717027200}}, "MarvisClientsArrayExample": {"value": [{"enrollment_url": "marvisclient://api.mist.com/path/to/url", "id": "3a14098f-b995-7552-b0a4-b8ee39b337a6", "name": "Handhelds"}]}, "MarvisConfigActionsSearchExample": {"value": {"end": 1775122221, "limit": 10, "results": [{"admin_id": "6d617276-0000-0000-3157-000000000000", "id": "05b46288-37d4-4860-9de4-1edc6e8d5363", "mac": "f8c1165aba00", "op": "disable_port", "org_id": "174260d5-cb22-4ea8-badb-c77a89acb0a9", "port_id": "ge-0/0/2", "reason": "rogue_dhcp_server_detected", "site_id": "437ac5f0-fc76-4a2b-87ab-d8d1e5c00405", "src": "marvis", "timestamp": 1775028130.405962, "type": "wired", "vlan_ids": []}, {"admin_id": "6d617276-0000-0000-3157-000000000000", "id": "b1a81ed4-a7a2-4945-b01d-f54afe6d5cc4", "mac": "f8c1165aba00", "op": "add_vlans_to_port", "org_id": "174260d5-cb22-4ea8-badb-c77a89acb0a9", "port_id": "ge-0/0/12", "reason": "missing_vlans", "site_id": "437ac5f0-fc76-4a2b-87ab-d8d1e5c00405", "src": "marvis", "timestamp": 1774866716.15723, "type": "wired", "vlan_ids": [100, 200]}], "start": 1775118621, "total": 2}}, "MarvisConfigFeedbackResponseExample": {"value": {"feedback_note": "this port config is intended, do not change anymore", "feedback_type": "invalid"}}, "MlExample": {"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}}}]}, "MobileVerifySecretExample": {"value": {"name": "Macy's", "org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "secret": "device-specific-secret"}}, "MspExample": {"value": {"created_time": 0, "id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "modified_time": 0, "name": "string"}}, "MspInventoryDeviceExample": {"value": {"mac": "5c5b35000018", "model": "AP200", "org_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "serial": "FXLH2015150025", "site_id": "4ac1dcf4-9d8b-7211-65c4-057819f0862b", "type": "ap"}}, "MxEdgeEventsSearchExample": {"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}}, "MxEdgeSearchExample": {"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}}, "MxclusterExample": {"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"]}}, "MxclustersArrayExample": {"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"]}]}, "MxedgeExample": {"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": {"gateway": "10.2.1.254", "ip": "10.2.1.1", "netmask": "255.255.255.0"}}}, "MxedgeStatsArrayExample": {"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}}, "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"}]}, "MxedgeStatsExample": {"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", "inactive_vlan_strs": {"wired": ["100", "102-106"]}, "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}}, "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"}}, "MxedgeUpgradeInfoExample": {"value": [{"default": true, "distro": "bullseye", "package": "mxagent", "version": "2.4.100"}, {"distro": "bullseye", "package": "tunterm", "version": "1.0.0"}]}, "MxedgesArrayExample": {"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": "\u0005Gi4/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"}]}, "MxedgesArrayStatsExample": {"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}, "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_stat": {"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, "virtualization_type": "string"}]}, "MxtunnelExample": {"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]}}, "MxtunnelsArrayExample": {"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]}]}, "NacPortalArrayExample": {"value": [{"access_type": "wireless", "additional_cacerts": ["-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END CERTIFICATE-----"], "cert_expire_time": 365, "enable_telemetry": true, "expiry_notification_time": 2, "name": "get-wifi", "notify_expiry": true, "ssid": "Corp", "sso": {"idp_cert": "-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----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}}]}, "NacPortalExample": {"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-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----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}}}, "NacRulesArrayExample": {"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"}]}, "NacTagEgressVlanNames": {"value": {"egress_vlan_names": ["1vlan-30", "1vlan-20", "2vlan10"], "name": "trunk_ap", "type": "egress_vlan_names"}}, "NacTagMatchesCertCN": {"value": {"match": "cert_cn", "name": "staff", "type": "match", "values": ["john", "staff*"]}}, "NacTagMatchesCertEku": {"value": {"match": "cert_eku", "name": "EKU-Match", "type": "match", "values": ["1.3.6.1.4.1.54321.10.1", "1.3.6.1.4.1.54321.20.2"]}}, "NacTagMatchesCertIssuer": {"value": {"match": "cert_issuer", "name": "issuer1", "type": "match", "values": ["/C=CN/ST=defy/L=defy/O=defy/OU=defy/CN=defy"]}}, "NacTagMatchesCertSAN": {"value": {"match": "cert_san", "name": "san1", "type": "match", "values": ["henry1@defy.com"]}}, "NacTagMatchesCertSerial": {"value": {"match": "cert_serial", "name": "serial1", "type": "match", "values": ["6a524ab782fb468c00c59f51cff00268d95533b8"]}}, "NacTagMatchesCertSub": {"value": {"match": "cert_sub", "name": "subject1", "type": "match", "values": ["/C=CN/ST=defy/O=defy/OU=defy/CN=steve"]}}, "NacTagMatchesCertTemplate": {"value": {"match": "cert_template", "name": "templ1", "type": "match", "values": ["1.3.6.1.4.1.311.21.8.4200806.605933.871088.11229391.9863893.29.13545645.4807979", "1.3.6.1.4.1.311.21.8.3285427.4093958.2707341.9961608.11572555.6.4903431.2258457"]}}, "NacTagMatchesClientMac": {"value": {"match": "client_mac", "name": "cameras", "type": "match", "values": ["010203040506", "abcdef*"]}}, "NacTagMatchesEdrStatus": {"value": {"match": "edr_status", "match_all": false, "name": "edr_health", "type": "match", "values": ["sentinelone_healthy", "sentinelone_infected", "crowdstrike_low", "crowdstrike_medium", "crowdstrike_high", "crowdstrike_critical", "crowdstrike_informational", "unknown"]}}, "NacTagMatchesHostname": {"value": {"match": "hostname", "name": "hostname1", "type": "match", "values": ["CP*", "USR*"]}}, "NacTagMatchesRadiusGroup": {"value": {"name": "VIP_group", "radius_group": "VIP", "type": "radius_group"}}, "NacTagMatchesRealm": {"value": {"match": "realm", "name": "defy", "type": "match", "values": ["defy.com"]}}, "NacTagMatchesRole": {"value": {"match": "idp_role", "name": "VIP", "type": "match", "values": ["vip"]}}, "NacTagMatchesUsername": {"value": {"match": "user_name", "name": "admins", "type": "match", "values": ["bob", "steve"]}}, "NacTagMatchesVlan": {"value": {"name": "guest_vlan", "type": "vlan", "vlan": "30"}}, "NacTagRadiusAttrs": {"value": {"name": "custom_attrs", "radius_attrs": ["Idle-Timeout=600", "Termination-Action=RADIUS-Request"], "type": "radius_attrs"}}, "NacTagRadiusVendorAttrs": {"value": {"name": "custom_radius_vendor_attrs", "radius_vendor_attrs": ["PaloAlto-Admin-Role=superuser", "PaloAlto-Panorama-Admin-Role=administrator"], "type": "radius_vendor_attrs"}}, "NacTagSessionTimeout": {"value": {"name": "timeout", "session_timeout": 86400, "type": "session_timeout"}}, "NacTagUsernameAttr": {"value": {"allow_usermac_override": true, "name": "username_attr", "type": "username_attr", "username_attr": "automatic"}}, "NetworkExample": {"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": ["10.10.10.10"]}, "property2": {"addresses": ["10.10.10.52"]}}, "vlan_id": 10, "vpn_access": {"property1": {"allow_ping": true, "destination_nat": {"property1": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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"}}}}, "NetworksArrayExample": {"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": ["10.10.10.10"]}, "property2": {"addresses": ["10.10.10.45"]}}, "vlan_id": 10, "vpn_access": {"property1": {"allow_ping": true, "destination_nat": {"property1": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}, "property2": {"internal_ip": "192.168.70.5/30", "name": "web server", "port": "443"}}, "nat_pool": "172.16.0.0/26", "routed": true, "source_nat": {"external_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"}}}]}, "NetworktemplateExample": {"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, "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_auth_protocol": "pap", "mac_limit": 0, "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "storm_control": {"no_broadcast": false, "no_multicast": false, "no_registered_multicast": false, "no_unknown_unicast": false, "percentage": 80}, "stp_edge": true, "voip_network": "string"}}, "switch_mgmt": {"config_revert_timer": 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"]}}}}, "NetworktemplatesArrayExample": {"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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "trunk", "networks": ["guest", "corp"], "persist_mac": false, "poe_disabled": false, "port_network": "default", "server_reject_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": "*"}]}, "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_timer": 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"]}}}]}, "OauthAppLinkCrowdstrike": {"value": {"accounts": [{"account_id": "ae9dee49-69e7-4710-a114-5b827a777738", "last_status": "success", "last_sync": 1665465339000, "linked_by": "Testname1", "linked_timestamp": 1728275689.284758, "name": "Test Company1 Ltd"}, {"account_id": "845a23bf-bed9-e43c-4c86-6fa474be7ae5", "error": "Get token failed, please re-link crowdstrike", "last_status": "failed", "last_sync": 1234567890123, "linked_by": "Testname2", "linked_timestamp": 1728275689.284758, "name": "Test Company2 Ltd"}], "linked": true}}, "OauthAppLinkJamf": {"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 Company1 Ltd", "smartgroup_name": "CompliantGroup1"}], "linked": true}}, "OauthAppLinkMobicontrol": {"value": {"accounts": [{"account_id": "7f80cd00-40b1-49e5-b2cb-9386d89af0d6", "client_id": "3e408b13255844149f2830e8609fe8f3", "instance_url": "https://a0020372.mobicontrol.cloud", "last_status": "success", "last_sync": 1665465339000, "linked_by": "User1", "linked_timestamp": 1702284364, "name": "Company1 Ltd."}, {"account_id": "80364a28-7ccc-4746-b110-ecf3dfd3a359", "client_id": "e81cfb1980454b4bb6109c74136ca528", "error": "Get token failed, please re-link MobiControl account", "instance_url": "https://a0032314.mobicontrol.cloud", "last_status": "failed", "last_sync": 1234567890123, "linked_by": "User2", "linked_timestamp": 1702284364, "name": "Company2 Ltd."}], "linked": true}}, "OauthAppLinkPrisma": {"value": {"accounts": [{"account_id": "80364a28-7ccc-4746-b110-ecf3dfd3a359", "auto_probe_subnet": "11.0.0.0/8", "cloud_name": "api.sase.paloaltonetworks.com", "enable_probe": true, "region": "americas", "regions": {"us-west-1": {"aggregate_region": "us-southwest", "allocated_bandwidth": 50, "name": "US West"}}, "service_account_name": "Corp SA", "service_connections": [{"MCD_LAB_SC_1": null, "region": "us-west-1"}], "tsg_id": "189953456"}], "linked": true}}, "OauthAppLinkSentinelOne": {"value": {"accounts": [{"account_id": "00fd8b39-cf92-4b43-a2ff-a461b48e7059", "instance_url": "usea1-015.sentinelone.net", "last_status": "success", "last_sync": 1234567891, "linked_by": "user1@test.com", "linked_timestamp": 1234567891, "name": "company1"}, {"account_id": "00fd8b39-cf92-4b43-a2ff-a461b48e7060", "error": "Get token failed, please re-link SentinelOne account", "instance_url": "usea1-017.sentinelone.net", "last_status": "failed", "last_sync": 1234567800, "linked_by": "user2@test.com", "linked_timestamp": 1234567891, "name": "company2"}], "linked": true}}, "OauthAppLinkVmware": {"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 Company1 Ltd", "webhook_auth_type": "Basic", "webhook_enabled": true, "webhook_password": "password_1234", "webhook_url": "https://websync.nac-staging.mistsys.com/v1/S_41b2525af1d8dcbe9005/f43ea4c48f22/vmware/mdm", "webhook_username": "username_1234"}, {"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 Company2 Ltd", "webhook_auth_type": "Basic", "webhook_enabled": true, "webhook_password": "password_1234", "webhook_url": "https://websync.nac-staging.mistsys.com/v1/S_41b2525af1d8dcbe9005/f43ea4c48f22/vmware/mdm", "webhook_username": "username_1234"}], "linked": true}}, "OauthAppLinkZDX": {"value": {"accounts": [{"account_id": "80364a28-7ccc-4746-b110-ecf3dfd3a359", "cloud_name": "zdxcloud.net", "key_id": "K35vrZcK3JvrZc", "webhook_url": "https://webhook.url/xxx", "zdx_org_id": "123456"}], "linked": true}}, "OauthAppLinkZoom": {"value": {"accounts": [{"account_id": "KkEM7orQSIWHZNFzwMLuRA", "company": "Test Company1 Ltd", "last_status": "success", "last_sync": 1665465339, "linked_by": "Testname1", "max_daily_api_requests": 1500}, {"account_id": "kojzWgIJQ0ujR73VvydOdg", "company": "Test Company2 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": 1665465346, "linked_by": "Testname2", "max_daily_api_requests": 5000}, {"account_id": "iojzXIJWEuiD73ZvydOfg", "company": "Test Company3 Ltd", "last_status": "failed", "last_sync": 1665465538, "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}}, "OrgDeviceUpgradeExample": {"value": {"enable_p2p": true, "force": true, "id": "31223085-405d-4b64-8aea-9c5b98098b4b", "strategy": "big_bang", "target_version": "0.14.29411", "upgrades": [{"site_id": "1bbe6e79-2583-403c-be1a-9881b4691ab6", "upgrade": {"id": "473f6eca-6276-4993-bfeb-53cbbbba6f18", "start_time": 1717658765, "status": "upgrading", "targets": {"download_requested": ["5c5b3550bd2e"], "downloaded": ["003e7316ff9e"], "total": 4, "upgraded": ["5c5b3550bd2e", "003e7316ff9e"]}}}]}}, "OrgDeviceUpgradeListExample": {"value": [{"id": "466f6eca-6276-4993-bfeb-53cbbbba6f88", "site_upgrades": [{"site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811", "upgrade_id": "174bda0-06a3-40ee-b918-d9cbde303690"}]}]}, "OrgDevicesExample": {"value": {"results": [{"mac": "string", "name": "string"}]}}, "OrgDevicesSummaryExample": {"value": {"num_aps": 630, "num_gateways": 6, "num_mxedges": 1, "num_switches": 30, "num_unassigned_aps": 5, "num_unassigned_gateways": 0, "num_unassigned_switches": 0}}, "OrgExample": {"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": 1440}}, "OrgInventoryAddExample": {"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"}], "reason": ["belongs to another org ('e2f543f7-d6e1-409f-a565-e77a1f098d3b' (other) != '0de5d6fc-219a-414d-a840-67d6b919ad8f' (you))"]}}, "OrgInventoryChangesAssign": {"value": {"error": [], "op": "assign", "reason": [], "success": ["5c5b350e0001"]}}, "OrgInventoryChangesDelete": {"value": {"error": ["FXLH2015150026"], "op": "delete", "reason": [], "success": ["FXLH2015150025", "5c5b350e0001"]}}, "OrgInventoryChangesError": {"value": {"error": ["5c5b350e0001"], "op": "upgrade_to_mist", "reason": ["already managed"], "success": ["c15353123096"]}}, "OrgInventoryExample": {"value": [{"connected": true, "created_time": 1542328276, "deviceprofile_id": "6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9", "id": "00000000-0000-0000-0000-5c5b35000018", "last_disconnected": 1542828000, "mac": "5c5b35000018", "model": "AP41", "modified_time": 1542829778, "name": "hallway", "serial": "FXLH2015150025", "site_id": "4ac1dcf4-9d8b-7211-65c4-057819f0862b", "type": "ap"}]}, "OrgInventorySearchExample": {"value": {"limit": 1000, "results": [{"mac": "f01c2df166e0", "master": true, "members": [{"mac": "f01c2df166e0", "model": "EX4300-48P", "serial": "PD3714460200"}], "model": "EX4300-48P", "name": "mist-wa-ex4300-VC", "org_id": "9b853544-51e4-45fb-81ac-a442e4a111d0", "serial": "PD3714460200", "site_id": "01dc141d-b6af-4baa-b00f-0e31ef954c4f", "sku": "EX4300-48P", "status": "disconnected", "type": "switch", "vc_mac": "f01c2df166e0", "version": "21.4R3.5"}], "total": 1}}, "OrgInventoryUnassignFailedInvalidMacGivenForReplacingMac": {"value": {"detail": "invalid replacing_mac"}}, "OrgInventoryUnassignFailedInventoryDeviceIsAlreadyAssigned": {"value": {"detail": "device already assigned"}}, "OrgInventoryUnassignFailedOutsideOfGracePeriod": {"value": {"detail": "outside of grace period"}}, "OrgInventoryUnassignFailedReplacingMacDeviceIsNotAssignedToASite": {"value": {"detail": "replacing_mac device is unassigned"}}, "OrgInventoryUnassignFailedReplacingMacDeviceLastModifiedOutsideOfGracePeriod": {"value": {"detail": "replacing_mac device outside of grace period"}}, "OrgInventoryUnassignNotFoundReplacingMacDeviceIsNotInOrgInventory": {"value": {"detail": "replacing_mac inventory not found"}}, "OrgInventoryUnassignNotFoundReplacingMacDeviceNotFound": {"value": {"detail": "replacing_mac device not found"}}, "OrgScepExample": {"value": {"cert_providers": ["jamf", "intune", "byod"], "enabled": false, "intune_scep_url": "https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep", "jamf_access_token": "1Z4QqEnCt05Jjt3TV5LgPJ4V_WL_RWnJ7dqVMLYHj81=", "jamf_scep_url": "https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep", "jamf_webhook_url": "https://scep.mistsys.com/api/v1/webhook/jamf/:org_id/scep"}}, "OrgSettingExample": {"value": {"auto_device_naming": {"enable": true, "rules": [{"match_device": "ap", "prefix": "MIST-", "src": "lldp_port_desc"}]}, "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, "expiry_in_days": 180, "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}}, "OrgSettingExample2": {"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-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END CERTIFICATE-----", "-----BEGIN CERTIFICATE-----\nBhMCRVMxFDASBgNVBAoMC1N0YXJ0Q29tIENBMSwwKgYDVn-----END CERTIFICATE-----"], "cloudshark": {"apitoken": "accbd6f10c6d05c3", "url": "https://cloudshark.hosted.domain"}, "device_cert": {"cert": "-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----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, "expiry_in_days": 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}}, "OrgSiteSleWANSLE": {"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}}, "OrgSiteSleWiFiSLE": {"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}}, "OrgSiteSleWiredSLE": {"value": {"end": 1651323600, "interval": 3600, "limit": 1, "page": 2, "results": [{"num_clients": 6, "num_switches": 1, "site_id": "f5fcbee5-1234-5678-9101-1619ede87879", "switch-bandwidth": 0.9669529756744796, "switch-health": 1, "switch-throughput": 1}], "start": 1651269600, "total": 4}}, "OrgSslProxyCertExample": {"value": {"cert": "-----BEGIN CERTIFICATE-----\\nMIIowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"}}, "OrgStatsExample": {"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}}]}}, "OrgSuppressedAlarmsExample": {"value": {"results": [{"duration": 48, "expire_time": 1678233080, "scheduled_time": 1678232900, "scope": "site", "site_id": "581328b6-e382-f54e-c9dc-9c998d183a34"}, {"duration": 48, "expire_time": 1678233080, "scheduled_time": 1678232900, "scope": "org", "site_id": "581328b6-e382-f54e-c9dc-9c998d183a35"}]}}, "OrgSystemEventsSearchExample": {"value": {"end": 1741312800, "limit": 1000, "results": [{"change_cat": "admin_action", "metadata": "{\"\\wlan_id\\\": \\\"None\\\",\\\"admin_name\\\": \\\"API Automation api_automation@mistsys.com\\\",\\\"desc\\\": \\\"Delete WLAN \\\\\"Automation Test\\\\\"\\\"}", "org_id": "268e599f-5379-473f-b18b-4384e9b3f244", "scope": "org", "site_id": "dc47920f-52d5-499c-af72-dcd646764f84", "timestamp": 1741309621, "type": "delete-wlan"}, {"change_cat": "admin_action", "metadata": "{\\\"wlan_id\\\": \\\"3855dc19-63fb-4490-b113-0176dc1cc8f4\\\",\\\"admin_name\\\": \\\"API Automation api_automation@mistsys.com\\\",\\\"desc\\\": \\\"Add WLAN \\\\\"Automation Test\\\\\"\\\"}", "org_id": "268e599f-5379-473f-b18b-4384e9b3f244", "scope": "org", "site_id": "dc47920f-52d5-499c-af72-dcd646764f84", "timestamp": 1741309601, "type": "add-wlan"}, {"change_cat": "admin_action", "metadata": "{\\\"template_id\\\": \\\"7e49acf4-6841-4e56-ad7d-68d0801cbba8\\\",\\\"admin_name\\\": \\\"API Automation api_automation@mistsys.com\\\",\\\"desc\\\": \\\"Add Template \\\\\"Automation template\\\\\"\\\"}", "org_id": "268e599f-5379-473f-b18b-4384e9b3f244", "scope": "org", "timestamp": 1741309280, "type": "add-template"}], "start": 1741309200, "total": 3}}, "OrgUiSettingsArrayExample": {"value": [{"created_time": 1749083436, "description": "AP related stats", "for_site": false, "id": "9a702097-0dd3-48af-909b-2be4ff94d139", "isCustomDataboard": true, "modified_time": 1749083436, "name": "AP Stats", "org_id": "2818e386-8dec-2562-9ede-5b8a0fbbdc71", "purpose": "marvisdashboard", "site_id": "00000000-0000-0000-0000-000000000000", "tiles": [{"description": "User typed tile descr", "id": "3eef7c83-3d33-417a-a729-4772d4a1013a", "isAutoTitle": true, "name": "List top 10 APs by bandwidth", "nl_query": "List top 10 APs by bandwidth", "position": {"col": 1, "colSpan": 2, "row": 1, "rowSpan": 1}}]}]}, "OrgUiSettingsExample": {"value": {"created_time": 1749083436, "description": "AP related stats", "for_site": false, "id": "9a702097-0dd3-48af-909b-2be4ff94d139", "isCustomDataboard": true, "modified_time": 1749083436, "name": "AP Stats", "org_id": "2818e386-8dec-2562-9ede-5b8a0fbbdc71", "purpose": "marvisdashboard", "site_id": "00000000-0000-0000-0000-000000000000", "tiles": [{"description": "User typed tile descr", "id": "3eef7c83-3d33-417a-a729-4772d4a1013a", "isAutoTitle": true, "name": "List top 10 APs by bandwidth", "nl_query": "List top 10 APs by bandwidth", "position": {"col": 1, "colSpan": 2, "row": 1, "rowSpan": 1}}]}}, "OrggroupExample": {"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"]}}, "OrggroupsArrayExample": {"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"]}]}, "OrgsArrayExample": {"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": 1440}]}, "OrgsSearchExample": {"value": {"end": 1614383378.4365287, "limit": 10, "next": "/api/v1/msps/43e96c5a-6ef6-11e6-9909-9596d1d1534f/orgs/search?end=1760601621&limit=1&search_after=%5B1760599794477%5D&start=1759996821", "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}}, "PastSpectrumAnalysis": {"value": {"end": 1694708579, "limit": 10, "results": [{"band": "5", "channel_usage": [{"channel": 36, "noise": -78, "non_wifi": 0.08, "wifi": 0.13}], "fft_samples": [{"frequency": 2437, "rssi": -92, "signal7": -93}], "mac": "5c5b35bd76bb", "org_id": "f2695c32-0e83-4936-b1b2-96fc88051213", "timestamp": 1694098696}], "start": 1694622179, "total": 4}}, "PcapBucketConfigFailed": {"value": {"bucket": "company-private-pcap", "detail": "failed to write bucket - 403 AccessDenied"}}, "PcapBucketConfigSuccess": {"value": {}}, "PcapStartExample": {"value": {"ap_count": 3, "aps": [], "duration": 600, "enabled": true, "expiry": 1614886726.5411825, "format": "stream", "id": "a9a84e13-a714-b1eb-152f-a434416217d5", "include_mcast": false, "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"}}, "PcapStatusExample": {"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"}}, "PcapsSearchExample": {"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://..."}, {"duration": 9999.0, "format": "stream", "id": "80cec4c9-322c-4712-95ce-6ba47fb54fc0", "last_seen": 1693482149.417, "mxedges": ["00000000-0000-0000-1000-001122334455"], "org_id": "78c11da8-f984-4425-bedb-a7ddd7d0f6da", "pcap_url": "https://...", "site_id": null, "termination_reason": "default", "timestamp": 1693525333.234066, "type": "mxedge", "url": "https://..."}], "start": 1461099816}}, "PmaDashboardsExample": {"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&....."}]}, "PortaltemplateExample": {"value": {"portal_template": {"accessCodeAlternateEmail": "string", "alignment": "left", "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": 5, "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"}}}, "PskPortal": {"value": {"auth": "sso", "created_time": 1727272316, "expire_time": 262800, "expiry_notification_time": 2, "hide_psks_created_by_other_admins": false, "id": "86ef73e5-e360-4e33-abd8-c2da7b11cbd6", "max_usage": 1, "modified_time": 1727272316, "name": "USR-test", "notify_expiry": false, "org_id": "8f6c24d5-b618-4c30-b6ff-b2febc1078ab", "passphrase_rules": {"alphabets_enabled": true, "length": 8, "numerics_enabled": true, "symbols": "()[]{}_%@#&$", "symbols_enabled": true}, "role": "", "ssid": "USR-test", "sso": {"idp_cert": "-----BEGIN CERTIFICATE-----\nMIIDqDCCApCgA...-----END CERTIFICATE-----", "idp_sign_algo": "sha256", "idp_sso_url": "https://dev-00000000.okta.com/app/dev-00000000/a6b88bec5ab7/sso/saml", "issuer": "http://www.okta.com/a6b88bec5ab7", "nameid_format": "email"}, "type": "byod", "ui_url": "https://pskportal.gc1.mist.com/#!byod/a6b88bec-5ab7-41ae-a34c-44ff52a8b81d", "vlan_id": 123}}, "PskPortalLogsSearchPSKPortalLogs": {"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}}, "PsksArrayExample": {"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": "secretpsk", "site_id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "ssid": "string", "usage": "multi", "vlan_id": 1}]}, "RadioMacsExample": {"value": [{"mac": "5c5b35000001", "radio_macs": ["5c5b35000040", "5c5b35000050", "5c5b35000060"]}, {"mac": "5c5b45000001", "radio_macs": ["5c5b45000040", "5c5b45000050", "5c5b45000060"]}]}, "ReauthWiredClientExample": {"value": {"device_mac": "5c5b35000002", "port_id": "ge-0/0/0", "session": "0a2a11b8-4b30-40d8-a6d1-e91ea540d86f"}}, "RecaptchaGoogle": {"value": {"flavor": "google", "required": true, "sitekey": "6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd"}}, "RecaptchaHcaptcha": {"value": {"flavor": "hcaptcha", "required": true, "sitekey": "6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd"}}, "RfdiagExample": {"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"}]}, "RfdiagsArrayExample": {"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"}]]}, "RftemplateExample": {"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"}}, "RftemplatesArrayExample": {"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"}]}, "RogueDetailsExample": {"value": {"manufacture": "Intel Corporate", "seen_as_client": true}}, "RogueEventsSearchExample": {"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}}, "RouterSsrRegisterCmdExample": {"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"}}, "RrmConsiderationExample": {"value": {"results": [{"channel": 36, "noise": -78, "other_rssi": -66, "other_ssid": "Rivendell5G", "rssi": -48, "util_score": 0.1, "util_score_non_wifi": 0.01, "util_score_other": 0.05}]}}, "RrmEventsExample": {"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": "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}}, "RrmExample": {"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, "channels": [1, 6, 11], "disabled": true, "power": 5, "power_max": 3, "power_min": 18, "preamble": "auto"}, "band_5": {"allow_rrm_disable": true, "antenna_mode": "default", "bandwidth": 20, "channels": [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112], "disabled": true, "power": 9, "power_max": 6, "power_min": 17, "preamble": "auto"}, "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, "channels": [1, 6, 11], "disabled": true, "power": 9, "power_max": 6, "power_min": 17, "preamble": "auto"}, "band_5": {"allow_rrm_disable": true, "antenna_mode": "default", "bandwidth": 20, "channels": [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112], "disabled": true, "power": 10, "power_max": 6, "power_min": 15, "preamble": "auto"}}}, "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}}, "RrmNeighborsExample": {"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": [{"mac": "a7c7096d7b8f", "neighbors": [{"mac": "5c5b35000311", "rssi": -75}]}], "start": 1428939600}}, "RssiZoneStatsArrayExample1": {"value": [{"assets_wait": {"avg": 0, "max": 0, "min": 0, "p95": 0}, "clients_wait": {"avg": 39259.333333333336, "max": 58361, "min": 12376, "p95": 58361}, "created_time": 1733864928, "devices": [{"device_id": "00000000-0000-0000-1000-c8786708bb5d", "rssi": -70}], "discovered_assets_wait": {"avg": 0, "max": 0, "min": 0, "p95": 0}, "id": "17ef7169-e000-4dcd-abc7-f721f0a8ffda", "modified_time": 1733864928, "name": "proximity openspace", "num_assets": 0, "num_clients": 3, "num_discovered_assets": 0, "num_sdkclients": 0, "num_unconnected_clients": 7, "org_id": "c5fbc9e4-12bf-436e-98c4-1c842c66ab6c", "sdkclients_wait": {"avg": 0, "max": 0, "min": 0, "p95": 0}, "site_id": "079fafd3-ef5c-4b23-90f0-9fcebec0023a", "unconnected_clients_wait": {"avg": 37552.857142857145, "max": 68342, "min": 6649, "p95": 68342}}]}, "RssizoneExample": {"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"}}, "RssizonesArrayExample": {"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"}]}, "RunningSpectrumAnalysis": {"value": {"band": "5", "channels": [36, 40, 44, 48], "device_id": "00000000-0000-0000-1000-5c5b35bd76bb", "duration": 600, "format": "stream", "started_time": 1435080709, "width": 20}}, "SamlMetadataExample": {"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": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"}}, "SdkinviteExample": {"value": {"created_time": 1428954000, "enabled": true, "expire_time": 1428954000, "id": "5034b980-b49e-501c-66e0-9de4c38f18a2", "name": "Macy's", "quota": -1}}, "SdkinvitesArrayExample": {"value": [{"created_time": 1428954000, "enabled": true, "expire_time": 1428954000, "id": "5034b980-b49e-501c-66e0-9de4c38f18a2", "name": "Macy's", "quota": -1}]}, "SdktemplateExample": {"value": {"bg_image": "https://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"}}, "SdktemplatesArrayExample": {"value": [{"bg_image": "https://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"}]}, "SearchExample": {"value": {"limit": 0, "page": 0, "results": [{"id": "b069b358-4c97-5319-1f8c-7c5ca64d6ab1", "text": "string", "type": "string"}], "total": 0}}, "SearchVarExample": {"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}}, "SecIntelProfileExample": {"value": {"name": "secintel-custom", "profiles": [{"action": "default", "category": "CC"}]}}, "SecIntelProfilesArrayExample": {"value": [{"name": "secintel-custom", "profiles": [{"action": "default", "category": "CC"}]}]}, "SecpoliciesArrayExample": {"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"}]}]}, "SecpolicyExample": {"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"}]}}, "SelfAuditLogsExample": {"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}}, "SelfOauthLinkFailureExample": {"value": {"error": "access_denied", "error_description": "The resource owner or authorization server denied the request."}}, "SelfOauthLinkSuccessExample": {"value": {"action": "oauth account linked", "id": "google_user_id"}}, "SelfOauthUrlExample": {"value": {"authorization_url": "https://accounts.google.com/o/oauth2/v2/auth?.....", "linked": false}}, "SelfVerifyEmailFailedInvalidOrExpiredToken": {"value": {"detail": "invalid token"}}, "SelfVerifyEmailFailedNewEmailAddressAlreadyExists": {"value": {"detail": "email already existed"}}, "SelfVerifyEmailFailedRequestComesFromAuthenticatedUsersOtherThanAdmin": {"value": {"detail": "invalid token"}}, "ServiceExample": {"value": {"addresses": ["string"], "app_categories": ["string"], "apps": ["string"], "created_time": 0, "dscp": 0, "failover_policy": "revertible", "hostnames": ["string"], "id": "497f6eca-6276-5004-bfeb-53cbbbba6f16", "max_jitter": 0, "max_latency": 0, "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"}}, "ServicePathEventsSearchExample": {"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}}, "ServicePoliciesArrayExample": {"value": [{"action": "allow", "created_time": 0, "id": "string", "modified_time": 0, "name": "string", "org_id": "string", "services": ["string"], "tenants": ["string"]}]}, "ServicesArrayExample": {"value": [{"addresses": ["string"], "apps": ["string"], "dscp": 8, "hostnames": ["string"], "max_jitter": 0, "max_latency": 0, "max_loss": 0, "name": "string", "specs": [{"port_range": "0", "protocol": "any"}], "traffic_class": "best_effort", "traffic_type": "default", "type": "custom"}]}, "SetDevicesMapExample": {"value": {"locked": ["5c5b35584a6f"], "moved": ["5c5b35000001"]}}, "SiteAppsExample": {"value": [{"group": "string", "key": "string", "name": "string"}]}, "SiteDeviceUpgradeExample": {"value": {"canary_phases": [1, 10, 50, 100], "current_phase": 0, "enable_p2p": true, "force": false, "id": "b910de88-0e0e-43a0-b20e-a43aa8788917", "max_failure_percentage": 5, "max_failures": [5, 5, 5, 5], "p2p_cluster_size": 10, "p2p_parallelism": 2, "reboot_at": 1738233315, "start_time": 1738232698, "status": "created", "strategy": "canary", "target_version": "0.14.29633", "targets": {"downloaded": ["30783a619182"], "total": 2, "upgraded": ["a8378280da5e"]}, "upgrade_plan": {"1": ["30783a619182"], "2": ["a8378280da5e"]}}}, "SiteExample": {"value": {"address": "1601 S. Deanza Blvd., Cupertino, CA, 95014", "alarmtemplate_id": "684dfc5c-fe77-2290-eb1d-ef3d677fe168", "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"}}, "SiteSettingsDerivedExample": {"value": {"additional_config_cmds": ["set snmp community public"], "analytic": {"enabled": false}, "ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "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_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": 6, "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", "hostnames": ["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": "192.168.1.1", "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"}}, "mxedge_mgmt": {"mist_password": "MIST_PASSWORD", "root_password": "ROOT_PASSWORD"}, "ntp_servers": ["pool.ntp.org"], "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": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["ge-0/0/3"], "output_port_id": "ge-0/0/5"}, "property2": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["ge-0/0/3"], "output_network": "analyze"}}, "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "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/"}, "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_mgmt": {"ap_affinity_threshold": 10, "config_revert_timer": 10, "dhcp_option_fqdn": false, "mxedge_proxy_host": "string", "mxedge_proxy_port": 2222, "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}, "teams_accounts": [{"account_id": "aaaaaaaa-1bed-4a49-9fd6-123456789012", "last_status": "success", "last_sync": 1738119600}], "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"}}}}, "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}, "zoom_accounts": [{"account_id": "123451111", "errors": ["OAuth token refresh failed, please re-link your account"], "last_status": "failed", "last_sync": 1738119600}]}}, "SiteSettingsExample": {"value": {"additional_config_cmds": ["set snmp community public"], "analytic": {"enabled": false}, "ap_matching": {"enabled": true, "rules": [{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "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_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": 6, "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", "hostnames": ["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": "192.168.1.1", "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"}}, "mxedge_mgmt": {"mist_password": "MIST_PASSWORD", "root_password": "ROOT_PASSWORD"}, "ntp_servers": ["pool.ntp.org"], "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": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["ge-0/0/3"], "output_network": "analyze", "output_port_id": "ge-0/0/5"}, "property2": {"input_networks_ingress": ["corp"], "input_port_ids_egress": ["ge-0/0/3"], "input_port_ids_ingress": ["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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_auth": "dot1x", "port_network": "string", "server_reject_network": null, "speed": "auto", "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, "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_auth_protocol": "pap", "mac_limit": 0, "mode": "access", "networks": ["string"], "persist_mac": false, "poe_disabled": false, "port_network": "string", "server_reject_network": null, "speed": "auto", "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/"}, "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_mgmt": {"ap_affinity_threshold": 10, "config_revert_timer": 10, "dhcp_option_fqdn": false, "mxedge_proxy_host": "string", "mxedge_proxy_port": 2222, "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}, "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"}}}}, "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}}}, "SiteSleMetricsExample": {"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"]}}, "SiteTemplateExample": {"value": {"auto_upgrade": {"day_of_week": "mon", "enabled": true, "time_of_day": "string", "version": "string"}, "name": "string", "vars": {"SSID_STR": "string", "VLAN_ID": "string"}}}, "SiteTemplatesArrayExample": {"value": [{"auto_upgrade": {"day_of_week": "mon", "enabled": true, "time_of_day": "string", "version": "string"}, "name": "string", "vars": {"SSID_STR": "string", "VLAN_ID": "string"}}]}, "SitegroupExample": {"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"]}}, "SitegroupsArrayExample": {"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"]}]}, "SitesArrayExample": {"value": [{"address": "1601 S. Deanza Blvd., Cupertino, CA, 95014", "alarmtemplate_id": "684dfc5c-fe77-2290-eb1d-ef3d677fe168", "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"}]}, "SitesArrayStatsExample": {"value": [{"address": "1601 S De Anza Blvd, Cupertino, CA 95014, USA", "alarmtemplate_id": null, "analyticEnabled": true, "aptemplate_id": null, "country_code": "US", "created_time": 1472591606, "engagementEnabled": true, "gatewaytemplate_id": "e571f2a2-d748-4ad4-bd6c-895467957c21", "id": "83bc290a-b76d-47fa-a294-d34e47f30f7f", "lat": 37.295553, "latlng": {"lat": 37.295553, "lng": -122.033007}, "lng": -122.033007, "modified_time": 1728057857, "msp_id": "a9af4951-a1de-4520-b398-c95a58947349", "name": "Live-Demo", "networktemplate_id": "964cb213-deb2-469d-8c1e-a5f8661c6886", "notes": "This site is used for demonstration purposes.", "num_ap": 17, "num_ap_connected": 14, "num_clients": 14, "num_devices": 26, "num_devices_connected": 22, "num_gateway": 1, "num_gateway_connected": 1, "num_switch": 8, "num_switch_connected": 7, "org_id": "b9814b40-ac4b-4424-86a8-b787eb68b86a", "rftemplate_id": "2c134c07-3c57-46b3-a53b-8aea92ed7234", "secpolicy_id": null, "sitegroup_ids": ["5644a432-eea9-4a2f-a30a-ddaf4dbc79cf", "5fc0f305-f626-49db-8869-10b87f201bba", "882796ef-190b-405e-98ef-cb487140cf64"], "sitetemplate_id": null, "timezone": "America/Los_Angeles", "tzoffset": 960}]}, "SitesSearchExample": {"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}}, "SkyAtpEventsSearchExample": {"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}}, "SkyAtpListExample": {"value": {"domains": [{"comment": "restricted", "value": "unsafe.xxx"}], "ips": [{"comment": "nas", "value": "10.1.3.5"}]}}, "SleClassifierSummaryExample": {"value": {"classifier": {"impact": {"num_aps": 2, "num_users": 17, "total_aps": 3, "total_users": 20}, "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}}, "SleClassifierSummaryTrendExample": {"value": {"classifier": {"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, "metric": "capacity", "start": 1627226471}}, "SleHistogramExample": {"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"}}, "SleImpactSummaryExample": {"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"}]}}, "SleImpactedApplicationsExample": {"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}}, "SleImpactedApsExample": {"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}}, "SleImpactedChassisExample": {"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}}, "SleImpactedClientsExample": {"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}}, "SleImpactedGatewaysExample": {"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}}, "SleImpactedInterfacesExample": {"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}}, "SleImpactedSwitchesExample": {"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}}, "SleImpactedUsersExample": {"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"}]}}, "SleSummaryExample": {"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}}, "SleSummaryTrendExample": {"value": {"classifiers": [{"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"}, {"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"}, {"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"}, {"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, "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}}, "SleThresholdExample": {"value": {"default": -72, "direction": "left", "maximum": -60, "metric": "coverage", "minimum": -90, "threshold": "-66", "units": "dBm"}}, "SsoExample": {"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": "sha256", "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"}}, "SsoLatestFailuresExample": {"value": {"results": [{"detail": "string", "saml_assertion_xml": "string", "timestamp": 0}]}}, "SsoRoleMspExample": {"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"}}, "SsoRoleOrgExample": {"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"}}, "SsosArrayExample": {"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": "sha256", "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"}]}, "SsrExportIdTokensExample": {"value": {"results": [{"mac": "025b35000020", "token": "string"}]}}, "SsrUpgradeExample": {"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": {}}}, "SsrUpgradeStatusExample": {"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": {}}}, "SsrUpgradesArrayExample": {"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": {}}]}, "SsrVersionsExample": {"value": [{"default": true, "package": "SSR", "version": "5.3.1-17"}]}, "StatsMarvisClientsSearchExample": {"value": {"limit": 100, "results": [{"battery_charging": false, "battery_level": 82, "cpu_background": 2.1, "cpu_idle": 78.3, "cpu_system": 5.4, "cpu_user": 14.2, "device_id": "0c2a2c6c-5a95-4956-a02d-e1b39c2e5c6e", "hostname": "my-android-phone", "location": {"map_id": "b4695157-0d1d-4da0-8f9e-5c38149d8b81", "site_id": "d14f16d8-d14f-11e5-8e81-1258369c38a9", "timestamp": 1717027100, "x": 423.5, "y": 201.0}, "memory_total": 8589934592, "memory_usage": 3758096384, "mfg": "Samsung", "model": "Galaxy S23", "org_id": "c168ddee-c14c-11e5-8e81-1258369c38a9", "os_type": "Android", "os_version": "14", "serial": "R5CX123456A", "storage_total": 128849018880, "storage_usage": 52428800000, "timestamp": 1717027200, "wifi_band": "5GHz", "wifi_bssid": "00:11:22:33:44:55", "wifi_channel": 36, "wifi_ip": "192.168.1.55", "wifi_mac": "00:aa:bb:cc:dd:ee", "wifi_rssi": -58, "wifi_ssid": "Corp-WiFi"}], "total": 1}}, "SwitchMetricsSiteScoped": {"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}}}, "SwitchMetricsSwitchScoped": {"value": {"active_ports_summary": {"details": {"active_port_count": 1, "total_port_count": 2}, "score": 50, "total_switch_count": 1}}}, "SwitchPortsSearchExample": {"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}}, "SyntheticTestExample": {"value": {"id": "a42775f6-edc8-69b5-f979-542fa1b43ff9", "message": "Successfully queued synthetic test for the site.", "status": "string"}}, "SynthetictestSearchExample": {"value": {"end": 0, "limit": 0, "next": "string", "results": [{"by": "user", "device_type": "gateway", "failed": false, "latency": 40, "mac": "aff827549235", "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": "8396cd006c8c", "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}}, "SynthetictestStatusExample": {"value": {"device_type": "gateway", "mac": "5c5b35584a6f", "port_id": "ge-0/0/1.100", "start_time": 1675718807, "status": "inprogress", "type": "speedtest"}}, "TemplateExample": {"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"}}, "TemplatesArrayExample": {"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"}]}, "TestCradlepointCrowdstrike": {"value": {"error": "Cradlepoint API keys are no longer valid, please verify and update the keys under organization settings.", "last_status": "inactive"}}, "TicketAttachmentExample": {"value": {"content_url": "https://api.mist.com/api/v1/forward/download?jwt=..."}}, "TicketExample": {"value": {"comments": [{"attachments": [{"content_type": "string", "content_url": "string"}], "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}}, "TicketsArrayExample": {"value": [{"comments": [{"attachments": [{"content_type": "string", "content_url": "string"}], "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}]}, "TroubleshootExample": {"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}}, "TunnelsSearchTypeWan": {"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}}, "TunnelsSearchTypeWxtunnel": {"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}}, "TwoFactorExample": {"value": {"two_factor_secret": "NRMTSTRWNBVECY3GJVYEY3DDJFRGSNCZGJUDO4RVN5FDM3DUMJSA"}}, "UiSettingsArrayExample": {"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", "timeRange": {"end": 1508823743, "endDate": "10/23/2017", "interval": "1d", "name": "Past 7 Days", "shortName": "7d", "start": 1508223600, "usePreset": true}, "trendType": "line", "vizType": "averageTimeSeriesChart"}]}]}, "UiSettingsExample": {"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", "timeRange": {"end": 1508823743, "endDate": "10/23/2017", "interval": "1d", "name": "Past 7 Days", "shortName": "7d", "start": 1508223600, "usePreset": true}, "trendType": "line", "vizType": "averageTimeSeriesChart"}]}}, "UpdateSelfFailedInvalidEmailAddress": {"value": {}}, "UpdateSelfFailedNewEmailAddressAlreadyExists": {"value": {"detail": "email already existed"}}, "UpgradeDeviceExample": {"value": {"status": "inprogress", "timestamp": 1428949501}}, "UpgradeIdExample": {"value": {"upgrade_id": "4316c116-0acb-4c43-8f06-6723154e741e"}}, "UpgradeSiteDevicesListExample": {"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"}]}, "UserMacExample": {"value": {"id": "111cafd2-ba1b-5169-bfcb-9cdf1d473ddb", "labels": ["flor1", "bld4"], "mac": "921b638445cd", "notes": "MAC address refers to Canon printers", "vlan": "30"}}, "UserMacImportAsyncExample": {"value": {"detail": "import in progress"}}, "UserMacImportExample": {"value": {"added": ["921b638445cd"], "errors": ["921b638445ce - mac invalid", "921b638445cf - mac already provided"], "updated": ["721b638445ef", "721b638445ee"]}}, "UserMacsArrayExample": {"value": [{"id": "111cafd2-ba1b-5169-bfcb-9cdf1d473ddb", "labels": ["flor1", "bld4"], "mac": "921b638445cd", "notes": "MAC address refers to Canon printers", "vlan": "30"}]}, "UserMacsUpdateAsyncExample": {"value": {"detail": "batch update in progress"}}, "UserMacsUpdateExample": {"value": {"errors": ["2feacc8e-5893-418a-acaa-4d7c1afd01fe - invalid id"], "updated": ["1041c16c-ca87-4d3f-bb94-b97c5819fc09", "a016cc8e-5893-418a-acaa-4d7c1af6ac0f"]}}, "VBeaconExample": {"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}}, "VBeaconsArrayExample": {"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}]}, "VerifyRegisterTokenAlreadyRegisteredAlreadyRegistered": {"value": {"detail": "already registered"}}, "VerifyRegisterTokenAlreadyRegisteredVerificationExpired": {"value": {"detail": "expired"}}, "VerifyRegisterTokenInvalidNotFound": {"value": {"detail": "Not found."}}, "VerifyRegisterTokenSuccessSuccess": {"value": {"return_to": "https://mist.zendesk.com/hc/quickstart.pdf"}}, "VerifyRegisterTokenSuccesssuccessbutfailedtoapplytheinvitationautomatically": {"value": {"detail": "password policy not met", "invite_not_applied": true, "min_length": 8}}, "VirtualChassisExample": {"value": {"config_type": "nonprovisioned", "id": "00000000-0000-0000-1000-52d9107af289", "mac": "52d9107af289", "members": [{"boot_partition": "junos", "cpld_version": "6", "cpu_stat": {"idle": 69, "interrupt": 1, "load_avg": [0.8, 1.09, 1.07], "system": 11, "user": 19}, "fans": [{"airflow": "out", "name": "Fan Tray 0 Fan 0", "rpm": 0, "status": "ok"}, {"airflow": "out", "name": "Fan Tray 1 Fan 0", "rpm": 0, "status": "ok"}], "fpc_idx": 0, "mac": "52d9107af289", "memory_stat": {"usage": 42}, "model": "EX2300-48P", "pics": [{"index": 0, "model_number": "EX2300-48P", "port_groups": [{"count": 48, "type": "GE"}]}, {"index": 1, "model_number": "EX2300-48P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}], "poe": {"max_power": 750, "power_draw": 40.4, "status": "AT_MODE"}, "poe_version": "2.1.1.19.3 (type1)", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.4R3-S4.18", "serial": "JW0000000000", "temperatures": [{"celsius": 33, "name": "CPU Sensor", "status": "ok"}, {"celsius": 29, "name": "PSU Sensor", "status": "ok"}], "type": "fpc", "uboot_version": "U-Boot 2016.01-rc1 (Nov 11 2016 - 14:26:00 -0800) 1.3.2", "uptime": 27636720, "vc_links": [{"neighbor_module_idx": 1, "neighbor_port_id": "vcp-1/1/0", "port_id": "vcp-0/1/0"}], "vc_mode": "HiGiG", "vc_role": "master", "vc_state": "present", "version": "21.4R3-S4.18"}, {"boot_partition": "junos", "cpld_version": "6", "cpu_stat": {"idle": 76, "interrupt": 0, "load_avg": [0.96, 0.87, 0.76], "system": 6, "user": 17}, "fans": [{"airflow": "out", "name": "Fan Tray 0 Fan 0", "rpm": 0, "status": "ok"}, {"airflow": "out", "name": "Fan Tray 1 Fan 0", "rpm": 0, "status": "ok"}], "fpc_idx": 1, "mac": "d0dd4991652d", "memory_stat": {"usage": 18}, "model": "EX2300-48P", "pics": [{"index": 0, "model_number": "EX2300-48P", "port_groups": [{"count": 48, "type": "GE"}]}, {"index": 1, "model_number": "EX2300-48P", "port_groups": [{"count": 4, "type": "SFP/SFP+"}]}], "poe": {"max_power": 750, "power_draw": 21.2, "status": "AT_MODE"}, "poe_version": "2.1.1.19.3 (type1)", "psus": [{"name": "Power Supply 0", "status": "ok"}], "recovery_version": "21.4R3-S4.18", "serial": "JW3619300922", "temperatures": [{"celsius": 32, "name": "CPU Sensor", "status": "ok"}, {"celsius": 29, "name": "PSU Sensor", "status": "ok"}], "type": "fpc", "uboot_version": "U-Boot 2016.01-rc1 (Nov 11 2016 - 14:26:00 -0800) 1.3.2", "uptime": 27636720, "vc_links": [{"neighbor_module_idx": 0, "neighbor_port_id": "vcp-0/1/0", "port_id": "vcp-1/1/0"}], "vc_mode": "HiGiG", "vc_role": "backup", "vc_state": "present", "version": "21.4R3-S4.18"}], "model": "EX2300-48P", "num_routing_engines": 1, "org_id": "1e9a61a9-bc42-42ca-bf67-1ad87443d9b8", "serial": "JW3619300157", "site_id": "ab0aca7a-d45c-469b-b3bb-4fe240642d0b", "status": "connected", "type": "switch", "vc_mac": "52d9107af289"}}, "VpnExample": {"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"}}}}, "VpnPeersStatsExample": {"value": {"end": 1619518989.4989712, "limit": 10, "results": [{"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": 4, "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}}, "VpnsArrayExample": {"value": [{"name": "string", "paths": {"property1": {"bfd_profile": "broadband", "ip": "string"}, "property2": {"bfd_profile": "lte", "ip": "string"}}}]}, "WanClientEventsSearchExample": {"value": {"end": 0, "limit": 0, "results": {"When": "2022-12-31 23:59:59.293000+00:00", "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}}, "WanClientsSearchExample": {"value": {"end": 0, "limit": 0, "results": [{"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}}, "WebhookDeliverySearchWebhookDeliveries": {"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": "https://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}}, "WebhookExample": {"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}}, "WebhooksArrayExample": {"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}]}, "WiredClientsSearchExample": {"value": {"end": 1648529800.8221116, "limit": 1000, "results": [{"auth_method": "mac_auth", "auth_state": "authenticated", "device_mac": ["001122334455"], "dhcp_client_identifier": "MAC address 00155df6d500", "dhcp_client_options": [{"code": "DHO_DHCP_MESSAGE_TYPE(53)", "data": "DHCPREQUEST"}, {"code": "DHO_DHCP_CLIENT_IDENTIFIER(61)", "data": "MAC address 00155df6d500"}, {"code": "DHO_DHCP_REQUESTED_ADDRESS(50)", "data": "172.17.10.255"}, {"code": "DHO_DHCP_SERVER_IDENTIFIER(54)", "data": "172.17.8.1"}, {"code": "DHO_DHCP_MAX_MESSAGE_SIZE(57)", "data": "1280"}, {"code": "DHO_DHCP_PARAMETER_REQUEST_LIST(55)", "data": " 1 3 6 12 15 28 43 180"}, {"code": "DHO_VENDOR_CLASS_IDENTIFIER(60)", "data": "MSFT 5.0"}, {"code": "DHO_HOST_NAME(12)", "data": "ITS-VMMT0-D1N02"}], "dhcp_fqdn": "ITS-VMMT0-D1N02.mgthub.local", "dhcp_hostname": "ITS-VMMT0-D1N02", "dhcp_request_params": "1 3 6 15 31 33 43 44 46 47 119 121 249 252", "dhcp_vendor_class_identifier": "MSFT 5.0", "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}}, "WirelessClientSessionsSearchExample": {"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}}, "WlanExample": {"value": {"allow_ipv6_ndp": true, "allow_mdns": false, "allow_ssdp": false, "arp_filter": false, "band_steer": false, "band_steer_force_band5": false, "bands": ["24", "5"], "block_blacklist_clients": false, "bonjour": {"additional_vlan_ids": "10, 20", "enabled": false, "services": {"airplay": {"radius_groups": ["teachers"], "scope": "same_ap"}}}, "client_limit_down": 1000, "client_limit_down_enabled": false, "client_limit_up": 512, "client_limit_up_enabled": false, "disable_11ax": false, "disable_ht_vht_rates": false, "disable_uapsd": false, "disable_v1_roam_notify": false, "disable_v2_roam_notify": false, "disable_wmm": false, "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, "hide_ssid": false, "hostname_ie": false, "ssid": "demo"}}, "WxTagsAppsArrayExample": {"value": [{"group": "Emails", "key": "gmail", "name": "Gmail - web/app"}]}, "WxruleArrayExample": {"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"]}]}, "WxruleExample": {"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"]}}, "WxruleStatsArrayExample": {"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}}}]}, "WxtagArrayExample": {"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", "subnets": ["string"]}], "subnet": "string", "type": "match", "values": ["string"]}]}, "WxtagExample": {"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", "subnets": ["string"]}], "subnet": "string", "type": "match", "values": ["string"]}}, "WxtunnelArrayExample": {"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}]}, "WxtunnelExample": {"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}}, "ZigbeeJoinExample": {"value": {"session_id": "19e73828-937f-05e6-f709-e29efdb0a82b"}}, "ZoneExample": {"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}]}}, "ZoneSessionsSearchExample": {"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}}, "ZoneStatsArrayExample1": {"value": [{"assets_wait": {"avg": 0, "max": 0, "min": 0, "p95": 0}, "clients_wait": {"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_wait": {"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}]}]}, "ZoneStatsArraywithoutmapidqueryparam": {"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}]}]}, "ZoneStatsExample": {"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"]}}, "ZonesArrayExample": {"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}]}]}, "ZscalerAccountExample": {"value": {"cloud_name": "zscalerbeta.net", "partner_key": "K35vrZcK3JvrZc", "username": "john@nmo.com"}}}, "parameters": {"aamwprofile_id": {"in": "path", "name": "aamwprofile_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "account_id": {"in": "path", "name": "account_id", "required": true, "schema": {"examples": ["iojzXIJWEuiD73ZvydOfg"], "type": "string"}}, "admin_id": {"in": "path", "name": "admin_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "alarm_group": {"description": "Alarm group used to filter alarm results. enum: `certificate_expiry`, `infrastructure`, `marvis`, `security`. The `marvis` group is used to retrieve AI-driven network issue detections. Known Marvis alarm types include: `bad_cable`, `bad_wan_uplink`, `dns_failure`, `arp_failure`, `auth_failure`, `dhcp_failure`, `missing_vlan`, `negotiation_mismatch`, `port_flap`. Results include resolution status (`status`, `resolved_time`) and affected entity details.", "in": "query", "name": "group", "schema": {"$ref": "#/components/schemas/alarm_group"}}, "alarm_id": {"in": "path", "name": "alarm_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "alarm_severity": {"description": "Alarm severity used to filter results. enum: `critical`, `info`, `warn`", "in": "query", "name": "severity", "schema": {"$ref": "#/components/schemas/alarm_severity"}}, "alarmtemplate_id": {"in": "path", "name": "alarmtemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "apitoken_id": {"in": "path", "name": "apitoken_id", "required": true, "schema": {"examples": ["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": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "assetfilter_id": {"in": "path", "name": "assetfilter_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "attachment_id": {"in": "path", "name": "attachment_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "avprofile_id": {"in": "path", "name": "avprofile_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "beacon_id": {"in": "path", "name": "beacon_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "client_event_type": {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions)", "in": "query", "name": "type", "schema": {"type": "string"}}, "client_mac": {"in": "path", "name": "client_mac", "required": true, "schema": {"examples": ["0000000000ab"], "pattern": "^[0-9a-fA-F]{12}$", "type": "string"}}, "country_code": {"description": "Country code, in two-character", "in": "query", "name": "country_code", "schema": {"examples": ["US"], "pattern": "^[a-zA-Z]{2}$", "type": "string"}}, "device_event_type": {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions)", "in": "query", "name": "type", "schema": {"type": "string"}}, "device_id": {"in": "path", "name": "device_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "device_mac": {"in": "path", "name": "device_mac", "required": true, "schema": {"examples": ["0000000000ab"], "pattern": "^[0-9a-fA-F]{12}$", "type": "string"}}, "device_type": {"description": "Device type used to filter results. enum: `ap`, `gateway`, `switch`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/device_type_default_ap"}}, "deviceprofile_id": {"in": "path", "name": "deviceprofile_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "dot11_band": {"description": "802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`", "in": "query", "name": "band", "schema": {"$ref": "#/components/schemas/dot11_band"}}, "dot11_proto": {"description": "802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`", "in": "query", "name": "proto", "schema": {"$ref": "#/components/schemas/dot11_proto"}}, "duration": {"description": "Time range duration for the query, using relative units such as `10m`, `7d`, or `2w`", "in": "query", "name": "duration", "schema": {"default": "1d", "examples": ["10m"], "type": "string"}}, "duration_5m": {"description": "Time range duration for the query, using relative units such as `10m`, `7d`, or `2w`", "in": "query", "name": "duration", "schema": {"default": "5m", "examples": ["10m"], "type": "string"}}, "end": {"description": "Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now`", "in": "query", "name": "end", "schema": {"type": "string"}}, "evpn_topology_id": {"in": "path", "name": "evpn_topology_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "fields": {"description": "List of additional fields requests, comma separated, or `fields=*` for all of them", "in": "query", "name": "fields", "schema": {"examples": ["field1,field2"], "type": "string"}}, "gatewaytemplate_id": {"in": "path", "name": "gatewaytemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "guest_mac": {"in": "path", "name": "guest_mac", "required": true, "schema": {"examples": ["0000000000ab"], "pattern": "^[0-9a-fA-F]{12}$", "type": "string"}}, "idpprofile_id": {"in": "path", "name": "idpprofile_id", "required": true, "schema": {"examples": ["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", "schema": {"examples": ["10m"], "type": "string"}}, "invite_id": {"in": "path", "name": "invite_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "ip": {"description": "Filter results by IPv4 address", "in": "query", "name": "ip", "schema": {"examples": ["192.168.1.1"], "format": "ipv4", "type": "string"}}, "limit": {"description": "Maximum number of results to return per page", "in": "query", "name": "limit", "schema": {"default": 100, "minimum": 0, "type": "integer"}}, "limit_10": {"description": "Maximum number of results to return per page", "in": "query", "name": "limit", "schema": {"default": 10, "minimum": 0, "type": "integer"}}, "map_id": {"in": "path", "name": "map_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "marvisinvite_id": {"in": "path", "name": "marvisinvite_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "metric": {"description": "See [List Insight Metrics](/#operations/listInsightMetrics) for available metrics", "in": "path", "name": "metric", "required": true, "schema": {"type": "string"}}, "msp_id": {"in": "path", "name": "msp_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "mxcluster_id": {"in": "path", "name": "mxcluster_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "mxedge_event_type": {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions)", "in": "query", "name": "type", "schema": {"type": "string"}}, "mxedge_id": {"in": "path", "name": "mxedge_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "mxtunnel_id": {"in": "path", "name": "mxtunnel_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "nac_event_type": {"description": "See [List Device Events Definitions](/#operations/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": "nacportal_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "nacrule_id": {"in": "path", "name": "nacrule_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "nactag_id": {"in": "path", "name": "nactag_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "name": {"description": "Filter results by name", "in": "query", "name": "name", "schema": {"type": "string"}}, "network_id": {"in": "path", "name": "network_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "networktemplate_id": {"in": "path", "name": "networktemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "org_id": {"in": "path", "name": "org_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "orggroup_id": {"in": "path", "name": "orggroup_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "otherdevice_event_type": {"description": "See [List Device Events Definitions](/#operations/listOtherDeviceEventsDefinitions)", "in": "query", "name": "type", "schema": {"type": "string"}}, "page": {"description": "Select the page number to return when using page-based pagination; starts at `1`", "in": "query", "name": "page", "schema": {"default": 1, "minimum": 1, "type": "integer"}}, "partial_filter_ext_ip": {"description": "Partial / full Device external ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `1.2.3.*` and `*.2.3.*` match `1.2.3.4`). Suffix-only wildcards (e.g. `*.2.3.4`) are not supported", "in": "query", "name": "ext_ip", "schema": {"examples": ["1.2.3.4", "1.2.3.*", "*2.3.*"], "type": "string"}}, "partial_filter_family_client": {"description": "Partial / full Client family (e.g. \"Phone/Tablet/Wearable\", \"Access Point\"). Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `Surveillance*` and `*urveillance*` match `Surveillance Camera`). Suffix-only wildcards (e.g. `*Camera`) are not supported", "in": "query", "name": "family", "schema": {"examples": ["Surveillance Camera", "Surveillance*", "*urveillance*"], "type": "string"}}, "partial_filter_hostname_client": {"description": "Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported", "in": "query", "name": "hostname", "schema": {"examples": ["my-everest-client", "my-everest*", "*everest*"], "type": "string"}}, "partial_filter_hostname_device": {"description": "Partial / full Device hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-london*` and `*london*` match `my-london-1`). Suffix-only wildcards (e.g. `*london-1`) are not supported", "in": "query", "name": "hostname", "schema": {"examples": ["my-london-1", "my-london*", "*london*"], "type": "string"}}, "partial_filter_ip_client": {"description": "Partial / full Client IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported", "in": "query", "name": "ip", "schema": {"examples": ["10.100.10.54", "10.100.10.*", "*100.10.*"], "type": "string"}}, "partial_filter_ip_device": {"description": "Partial / full Device IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported", "in": "query", "name": "ip", "schema": {"examples": ["10.100.10.54", "10.100.10.*", "*100.10.*"], "type": "string"}}, "partial_filter_lldp_port_id": {"description": "When `type`==`ap`, LLDP port id. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `ge-0/0/*` and `*-0/0/*` match `ge-0/0/30`). Suffix-only wildcards (e.g. `*switch-01`) are not supported", "in": "query", "name": "lldp_port_id", "schema": {"type": "string"}}, "partial_filter_lldp_system_desc": {"description": "When `type`==`ap`, LLDP system description. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `Juniper Networks*` and `*Networks*` match `Juniper Networks, Inc.`). Suffix-only wildcards (e.g. `*switch-01`) are not supported", "in": "query", "name": "lldp_system_desc", "schema": {"type": "string"}}, "partial_filter_lldp_system_name": {"description": "When `type`==`ap`, LLDP system name. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-switch*` and `*switch*` match `my-switch-01`). Suffix-only wildcards (e.g. `*switch-01`) are not supported", "in": "query", "name": "lldp_system_name", "schema": {"type": "string"}}, "partial_filter_mac_client": {"description": "Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, "partial_filter_mac_device": {"description": "Partial / full Device MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `001122*` and `*1122*` match `001122334455`). Suffix-only wildcards (e.g. `*4455`) are not supported", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, "partial_filter_mac_usermac": {"description": "Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported", "in": "query", "name": "mac", "schema": {"examples": ["aabbccddeeff", "aabbcc*", "*bbcc*"], "type": "string"}}, "partial_filter_mfg_client": {"description": "Partial / full Client manufacturer (e.g. \"apple\", \"cisco\", \"juniper\"). Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `Raspberry Pi*` and `*Pi*` match `Raspberry Pi Trading Ltd`). Suffix-only wildcards (e.g. `*Ltd`) are not supported", "in": "query", "name": "mfg", "schema": {"examples": ["Raspberry Pi Trading Ltd", "Raspberry Pi*", "*Pi*"], "type": "string"}}, "partial_filter_model": {"description": "Partial / full Device model. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `AP4*` and `*P4*` match `AP43`). Suffix-only wildcards (e.g. `*43`) are not supported", "in": "query", "name": "model", "schema": {"examples": ["AP43", "AP4*", "*P4*"], "type": "string"}}, "partial_filter_network": {"description": "Partial / full Name of the network the client is/was connected to. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-corp*` and `*corp*` match `my-corp-network`). Suffix-only wildcards (e.g. `*corp`) are not supported", "in": "query", "name": "network", "schema": {"examples": ["my-corp-network", "my-corp*", "*corp*"], "type": "string"}}, "partial_search_username": {"description": "Partial / full username. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `johndoe*` and `*mycorp*` match `johndoe@mycorp.com`). Suffix-only wildcards (e.g. `*mycorp.com`) are not supported", "in": "query", "name": "username", "schema": {"examples": ["johndoe", "johnd*", "*ohnd*"], "type": "string"}}, "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": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "psk_id_query": {"description": "PSK identifier used to filter the results", "in": "query", "name": "psk_id", "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "type": "string"}}, "pskportal_id": {"in": "path", "name": "pskportal_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "resolution": {"description": "Location calculation resolution used by the query. enum: `default`, `fine`", "in": "query", "name": "resolution", "schema": {"$ref": "#/components/schemas/resolution"}}, "rfdiag_id": {"in": "path", "name": "rfdiag_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "rftemplate_id": {"in": "path", "name": "rftemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "rogue_bssid": {"in": "path", "name": "rogue_bssid", "required": true, "schema": {"examples": ["0000000000ab"], "pattern": "^[0-9a-fA-F]{12}$", "type": "string"}}, "rogue_type": {"description": "Rogue classification used to filter the results. enum: `honeypot`, `lan`, `others`, `spoof`", "in": "query", "name": "type", "schema": {"$ref": "#/components/schemas/rogue_type"}}, "rssizone_id": {"in": "path", "name": "rssizone_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "sdkclient_id": {"in": "path", "name": "sdkclient_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "sdkinvite_id": {"in": "path", "name": "sdkinvite_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "sdktemplate_id": {"in": "path", "name": "sdktemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "search_after": {"description": "Pagination cursor for retrieving subsequent pages of results. This value is automatically populated by Mist in the `next` URL from the previous response and should not be manually constructed.", "in": "query", "name": "search_after", "schema": {"type": "string"}}, "secintelprofile_id": {"in": "path", "name": "secintelprofile_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "secpolicy_id": {"in": "path", "name": "secpolicy_id", "required": true, "schema": {"examples": ["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": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "servicepolicy_id": {"in": "path", "name": "servicepolicy_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "site_id": {"in": "path", "name": "site_id", "required": true, "schema": {"examples": ["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": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "sitetemplate_id": {"in": "path", "name": "sitetemplate_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "sort": {"description": "On which field the list should be sorted, -prefix represents DESC order", "in": "query", "name": "sort", "schema": {"default": "timestamp", "examples": ["-site_id"], "type": "string"}}, "sort_last_seen_reverse": {"description": "On which field the list should be sorted, -prefix represents DESC order", "in": "query", "name": "sort", "schema": {"default": "timestamp", "examples": ["-site_id"], "type": "string"}}, "sort_wcid": {"description": "On which field the list should be sorted, -prefix represents DESC order.", "in": "query", "name": "sort", "schema": {"default": "wxid", "examples": ["-site_id"], "type": "string"}}, "sso_id": {"in": "path", "name": "sso_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "ssorole_id": {"in": "path", "name": "ssorole_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "ssr_version_channel": {"description": "SSR release channel used to filter available versions. enum: `alpha`, `beta`, `stable`", "in": "query", "name": "channel", "schema": {"$ref": "#/components/schemas/ssr_version_channel"}}, "start": {"description": "Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w`", "in": "query", "name": "start", "schema": {"type": "string"}}, "system_event_type": {"description": "See [List Device Events Definitions](/#operations/listDeviceEventsDefinitions)", "in": "query", "name": "type", "schema": {"type": "string"}}, "template_id": {"in": "path", "name": "template_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "ticket_id": {"in": "path", "name": "ticket_id", "required": true, "schema": {"examples": ["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": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "upgrade_id": {"in": "path", "name": "upgrade_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "usermac_id": {"in": "path", "name": "usermac_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "vbeacon_id": {"in": "path", "name": "vbeacon_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "vpn_id": {"in": "path", "name": "vpn_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "webhook_id": {"in": "path", "name": "webhook_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "wlan_id": {"in": "path", "name": "wlan_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "wxrule_id": {"in": "path", "name": "wxrule_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "wxtag_id": {"in": "path", "name": "wxtag_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "wxtunnel_id": {"in": "path", "name": "wxtunnel_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "zone_id": {"in": "path", "name": "zone_id", "required": true, "schema": {"examples": ["000000ab-00ab-00ab-00ab-0000000000ab"], "format": "uuid", "type": "string"}}, "zone_type": {"in": "path", "name": "zone_type", "required": true, "schema": {"$ref": "#/components/schemas/zone_type"}}}, "responses": {"AamwProfile": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AamwProfileExample"}}, "schema": {"$ref": "#/components/schemas/aamw_profile"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AamwProfileExample"}}, "schema": {"$ref": "#/components/schemas/aamw_profile"}}, "application/vnd.json+api": {"examples": {"Example": {"$ref": "#/components/examples/AamwProfile"}}, "schema": {"$ref": "#/components/schemas/aamw_profile"}}}, "description": "Example response"}, "AamwProfilesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AamwProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/aamw_profiles"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AamwProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/aamw_profiles"}}}, "description": "Example response"}, "AccountJseInfo": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/account_jse_info"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/account_jse_info"}}}, "description": "OK"}, "AccountSkyAtpData": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/account_skyatp_info"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/account_skyatp_info"}}}, "description": "OK"}, "AccountSkyAtpInfo": {"content": {"application/json": {"example": {"Example": {"value": {"secintel": {"third_party_threat_feeds": ["block_list"]}, "secintel_allowlist_url": "https://papi.s3.amazonaws.com/secintel_allowlist/xxx...", "secintel_blocklist_url": "https://papi.s3.amazonaws.com/secintel_blocklist/xxx..."}}}, "schema": {"$ref": "#/components/schemas/account_skyatp_data"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/account_skyatp_data"}}}, "description": "OK"}, "Admin": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AdminExample"}}, "schema": {"$ref": "#/components/schemas/admin"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AdminExample"}}, "schema": {"$ref": "#/components/schemas/admin"}}}, "description": "OK"}, "AdminsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AdminsArrayExample"}, "Example2": {"$ref": "#/components/examples/AdminsArrayExample2"}}, "schema": {"$ref": "#/components/schemas/admins"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AdminsArrayExample"}, "Example2": {"$ref": "#/components/examples/AdminsArrayExample2"}}, "schema": {"$ref": "#/components/schemas/admins"}}}, "description": "OK"}, "AlarmsSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/alarm_search_result"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/alarm_search_result"}}}, "description": "OK"}, "Alarmtemplate": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/alarm_template"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/alarm_template"}}}, "description": "OK"}, "AlarmtemplatesArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/alarm_templates"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/alarm_templates"}}}, "description": "OK"}, "AnomalyMetrics": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_anomaly_search"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_anomaly_search"}}}, "description": "OK"}, "AosRegisterCmd": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/aos_register_cmd"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/aos_register_cmd"}}}, "description": "AOS Brownfield Registration Commands"}, "ApiUsage": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ApiUsageExample"}}, "schema": {"$ref": "#/components/schemas/api_usage"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ApiUsageExample"}}, "schema": {"$ref": "#/components/schemas/api_usage"}}}, "description": "OK"}, "ApitokenOrg": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokenOrgExample"}}, "schema": {"$ref": "#/components/schemas/org_apitoken"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokenOrgExample"}}, "schema": {"$ref": "#/components/schemas/org_apitoken"}}}, "description": "OK"}, "ApitokenUser": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokenUserExample"}}, "schema": {"$ref": "#/components/schemas/user_apitoken"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokenUserExample"}}, "schema": {"$ref": "#/components/schemas/user_apitoken"}}}, "description": "OK"}, "ApitokensOrgArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokensOrgArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_apitokens"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokensOrgArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_apitokens"}}}, "description": "OK"}, "ApitokensUserArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokensUserArrayExample"}}, "schema": {"$ref": "#/components/schemas/user_apitokens"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ApitokensUserArrayExample"}}, "schema": {"$ref": "#/components/schemas/user_apitokens"}}}, "description": "OK"}, "Aptemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AptemplateExample"}}, "schema": {"$ref": "#/components/schemas/ap_template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AptemplateExample"}}, "schema": {"$ref": "#/components/schemas/ap_template"}}}, "description": "AP Template"}, "AptemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AptemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/ap_templates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AptemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/ap_templates"}}}, "description": "Example response"}, "Asset": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetExample"}}, "schema": {"$ref": "#/components/schemas/asset"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetExample"}}, "schema": {"$ref": "#/components/schemas/asset"}}}, "description": "OK"}, "AssetOfInterestArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetOfInterestArrayExample"}}, "schema": {"$ref": "#/components/schemas/assets_of_interest"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetOfInterestArrayExample"}}, "schema": {"$ref": "#/components/schemas/assets_of_interest"}}}, "description": "Example response"}, "AssetStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_asset"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_asset"}}}, "description": "OK"}, "Assetfilter": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetfilterExample"}}, "schema": {"$ref": "#/components/schemas/asset_filter"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetfilterExample"}}, "schema": {"$ref": "#/components/schemas/asset_filter"}}}, "description": "OK"}, "AssetfiltersArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/asset_filters"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/asset_filters"}}}, "description": "OK"}, "AssetsArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/assets"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/assets"}}}, "description": "OK"}, "AssetsArrayStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetsArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_assets"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetsArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_assets"}}}, "description": "OK"}, "AssetsArrayStatsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssetsArrayStatsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_stats_assets"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssetsArrayStatsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_stats_assets"}}}, "description": "OK"}, "AssignSuccess": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AssignSuccessExample"}}, "schema": {"$ref": "#/components/schemas/response_assign_success"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AssignSuccessExample"}}, "schema": {"$ref": "#/components/schemas/response_assign_success"}}}, "description": "OK - list only devices that has deviceprofile_id changed"}, "AsyncClaimCreate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncClaimCreateExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claim_create"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncClaimCreateExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claim_create"}}}, "description": "OK"}, "AsyncClaimStatus": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncClaimStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claim_status"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncClaimStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claim_status"}}}, "description": "OK"}, "AsyncClaimsList": {"content": {"application/json": {"examples": {"Detail False": {"$ref": "#/components/examples/AsyncClaimsListExample"}, "Detail True": {"$ref": "#/components/examples/AsyncClaimsListDetailExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claims_list"}}, "application/vnd.api+json": {"examples": {"Detail False": {"$ref": "#/components/examples/AsyncClaimsListExample"}, "Detail True": {"$ref": "#/components/examples/AsyncClaimsListDetailExample"}}, "schema": {"$ref": "#/components/schemas/response_async_claims_list"}}}, "description": "OK"}, "AsyncLicense": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncLicenseExample"}}, "schema": {"$ref": "#/components/schemas/response_async_license"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AsyncLicenseExample"}}, "schema": {"$ref": "#/components/schemas/response_async_license"}}}, "description": "OK"}, "AutoMapAssignment": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment"}}}, "description": "OK"}, "AutoMapAssignmentApply": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentApplyExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_apply"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentApplyExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_apply"}}}, "description": "OK"}, "AutoMapAssignmentClear": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentClearExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_clear"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentClearExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_clear"}}}, "description": "OK"}, "AutoMapAssignmentInfo": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentInfoExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoMapAssignmentInfoExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_map_assignment_info"}}}, "description": "OK"}, "AutoOrientation": {"content": {"application/json": {"examples": {"Dryrun For Map Completed": {"$ref": "#/components/examples/AutoOrientationDryrunForMapCompleted"}, "Map Failed To Start As It Had Less Than 3 APs Associated With It": {"$ref": "#/components/examples/AutoOrientationMapFailedToStartAsItHadLessThan3APsAssociatedWithIt"}, "Service Failed To Start Due Containing Invalid APs": {"$ref": "#/components/examples/AutoOrientationServiceFailedToStartDueContainingInvalidAPs"}, "Service Started After Override For Localization / Orient Collection": {"$ref": "#/components/examples/AutoOrientationServiceStartedAfterOverrideForLocalizationOrientCollection"}, "Service Started Successfully For Localization / Orient Collection": {"$ref": "#/components/examples/AutoOrientationServiceStartedSuccessfullyForLocalizationOrientCollection"}, "Unable To Reach The Orient Service": {"$ref": "#/components/examples/AutoOrientationUnableToReachTheOrientService"}}, "schema": {"$ref": "#/components/schemas/response_auto_orientation"}}, "application/vnd.api+json": {"examples": {"Dryrun For Map Completed": {"$ref": "#/components/examples/AutoOrientationDryrunForMapCompleted"}, "Map Failed To Start As It Had Less Than 3 APs Associated With It": {"$ref": "#/components/examples/AutoOrientationMapFailedToStartAsItHadLessThan3APsAssociatedWithIt"}, "Service Failed To Start Due Containing Invalid APs": {"$ref": "#/components/examples/AutoOrientationServiceFailedToStartDueContainingInvalidAPs"}, "Service Started After Override For Localization / Orient Collection": {"$ref": "#/components/examples/AutoOrientationServiceStartedAfterOverrideForLocalizationOrientCollection"}, "Service Started Successfully For Localization / Orient Collection": {"$ref": "#/components/examples/AutoOrientationServiceStartedSuccessfullyForLocalizationOrientCollection"}, "Unable To Reach The Orient Service": {"$ref": "#/components/examples/AutoOrientationUnableToReachTheOrientService"}}, "schema": {"$ref": "#/components/schemas/response_auto_orientation"}}}, "description": "Map queued for auto orientation"}, "AutoOrientationFailed": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoOrientationFailedExample"}, "Example-2": {"$ref": "#/components/examples/AutoOrientationFailedExample2"}, "Example-3": {"$ref": "#/components/examples/AutoOrientationFailedExample3"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoOrientationFailedExample"}, "Example-2": {"$ref": "#/components/examples/AutoOrientationFailedExample2"}, "Example-3": {"$ref": "#/components/examples/AutoOrientationFailedExample3"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Bad Request"}, "AutoOrientationInfo": {"content": {"application/json": {"examples": {"Completed": {"$ref": "#/components/examples/AutoOrientationInfoCompleted"}, "In Progress": {"$ref": "#/components/examples/AutoOrientationInfoInProgress"}}, "schema": {"$ref": "#/components/schemas/response_auto_orientation_info"}}, "application/vnd.api+json": {"examples": {"Completed": {"$ref": "#/components/examples/AutoOrientationInfoCompleted"}, "In Progress": {"$ref": "#/components/examples/AutoOrientationInfoInProgress"}}, "schema": {"$ref": "#/components/schemas/response_auto_orientation_info"}}}, "description": "Map queued for auto orientation"}, "AutoPlacementInfo": {"content": {"application/json": {"examples": {"Done": {"$ref": "#/components/examples/AutoPlacementInfoDone"}, "Error": {"$ref": "#/components/examples/AutoPlacementInfoError"}, "In Progress": {"$ref": "#/components/examples/AutoPlacementInfoInProgress"}, "Pending": {"$ref": "#/components/examples/AutoPlacementInfoPending"}}, "schema": {"$ref": "#/components/schemas/response_auto_placement_info"}}, "application/vnd.api+json": {"examples": {"Done": {"$ref": "#/components/examples/AutoPlacementInfoDone"}, "Error": {"$ref": "#/components/examples/AutoPlacementInfoError"}, "In Progress": {"$ref": "#/components/examples/AutoPlacementInfoInProgress"}, "Pending": {"$ref": "#/components/examples/AutoPlacementInfoPending"}}, "schema": {"$ref": "#/components/schemas/response_auto_placement_info"}}}, "description": "OK"}, "AutoZoneStatus": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AutoZoneStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_zone"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AutoZoneStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_auto_zone"}}}, "description": "Status of Auto-Zone request"}, "AvProfile": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AvProfileExample"}}, "schema": {"$ref": "#/components/schemas/avprofile"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AvProfileExample"}}, "schema": {"$ref": "#/components/schemas/avprofile"}}}, "description": "OK"}, "AvProfilesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/AvProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/avprofiles"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/AvProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/avprofiles"}}}, "description": "OK"}, "Beacon": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/BeaconExample"}}, "schema": {"$ref": "#/components/schemas/beacon"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/BeaconExample"}}, "schema": {"$ref": "#/components/schemas/beacon"}}}, "description": "OK"}, "BeaconsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/BeaconsArrayExample"}}, "schema": {"$ref": "#/components/schemas/beacons"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/BeaconsArrayExample"}}, "schema": {"$ref": "#/components/schemas/beacons"}}}, "description": "OK"}, "BgpStatsArraySearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/BgpStatsArraySearchExample"}}, "schema": {"$ref": "#/components/schemas/response_search_bgps"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/BgpStatsArraySearchExample"}}, "schema": {"$ref": "#/components/schemas/response_search_bgps"}}}, "description": "Example response"}, "CallStatsArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_stats_calls"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_stats_calls"}}}, "description": "Example response"}, "CallStatsSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CallStatsSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_stats_calls_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CallStatsSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_stats_calls_summary"}}}, "description": "Example response"}, "CallTroubleshoot": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CallTroubleshootExample"}}, "schema": {"$ref": "#/components/schemas/call_troubleshoot"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CallTroubleshootExample"}}, "schema": {"$ref": "#/components/schemas/call_troubleshoot"}}}, "description": "Example response"}, "CallTroubleshootSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CallTroubleshootSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_call_troubleshoot_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CallTroubleshootSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_call_troubleshoot_summary"}}}, "description": "Example response"}, "Certificate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CertificateExample"}}, "schema": {"$ref": "#/components/schemas/response_certificate"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CertificateExample"}}, "schema": {"$ref": "#/components/schemas/response_certificate"}}}, "description": "OK"}, "ChannelScores": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ChannelScoresExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_channel_scores"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ChannelScoresExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_channel_scores"}}}, "description": "OK"}, "ClaimLicense": {"content": {"application/json": {"examples": {"Licenses Successfully Claimed And Applied": {"$ref": "#/components/examples/ClaimLicenseLicensesSuccessfullyClaimedAndApplied"}}, "schema": {"$ref": "#/components/schemas/response_claim_license"}}, "application/vnd.api+json": {"examples": {"Licenses Successfully Claimed And Applied": {"$ref": "#/components/examples/ClaimLicenseLicensesSuccessfullyClaimedAndApplied"}}, "schema": {"$ref": "#/components/schemas/response_claim_license"}}}, "description": "OK"}, "ClaimMxedge": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClaimMxedgeExample"}}, "schema": {"$ref": "#/components/schemas/response_claim_mx_edge"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClaimMxedgeExample"}}, "schema": {"$ref": "#/components/schemas/response_claim_mx_edge"}}}, "description": "OK"}, "ClientEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_events_search"}}}, "description": "OK"}, "ClientNacSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientNacSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_nac_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientNacSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_nac_search"}}}, "description": "Example response"}, "ClientSessionsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_sessions_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_sessions_search"}}}, "description": "OK"}, "ClientStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_client"}}}, "description": "Example response"}, "ClientStatsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_client_any_of"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_client_any_of"}}}, "description": "Example response"}, "ClientWirelessStatsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientWirelessStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_wireless_clients"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientWirelessStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_wireless_clients"}}}, "description": "Example response"}, "ClientsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_client_search"}}}, "description": "OK"}, "ConfigsHistorySearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConfigsHistorySearchExample"}}, "schema": {"$ref": "#/components/schemas/response_config_history_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConfigsHistorySearchExample"}}, "schema": {"$ref": "#/components/schemas/response_config_history_search"}}}, "description": "OK"}, "ConstAlarmDefinitions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAlarmDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_alarm_definitions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAlarmDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_alarm_definitions"}}}, "description": "List of Alarm Definitions"}, "ConstApChannels": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApChannelsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_channel"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApChannelsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_channel"}}}, "description": "AP Channels"}, "ConstApEslVersions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApEslVersionsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_esl_versions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApEslVersionsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_esl_versions"}}}, "description": "List of Available AP ESL Versions"}, "ConstApLedDefinitions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApLedDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_leds"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApLedDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_ap_leds"}}}, "description": "List of AP Led Status"}, "ConstAppCategoryDefinitions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAppCategoryDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_app_category_definitions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAppCategoryDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_app_category_definitions"}}}, "description": "List of Application Categories Definitions"}, "ConstAppSubCategoryDefinitions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAppSubCategoryDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_app_subcategory_definitions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstAppSubCategoryDefinitionsExample"}}, "schema": {"$ref": "#/components/schemas/const_app_subcategory_definitions"}}}, "description": "List of Application Sub-categories Definitions"}, "ConstApplications": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/const_application_definitions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/const_application_definitions"}}}, "description": "List of Applications"}, "ConstClientEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstClientEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstClientEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}}, "description": "List of Client Events definitions"}, "ConstCountries": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstCountriesExample"}}, "schema": {"$ref": "#/components/schemas/const_countries"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstCountriesExample"}}, "schema": {"$ref": "#/components/schemas/const_countries"}}}, "description": "List of Countries"}, "ConstDefaultGatewayConfig": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstDefaultGatewayConfigExample"}}, "schema": {"additionalProperties": true, "type": "object"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstDefaultGatewayConfigExample"}}, "schema": {"additionalProperties": true, "type": "object"}}}, "description": "OK"}, "ConstDeviceEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstDeviceEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstDeviceEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}}, "description": "List of Device Events Definitions"}, "ConstDeviceModels": {"content": {"application/json": {"examples": {"AP": {"$ref": "#/components/examples/ConstDeviceModelsAP"}, "Gateway": {"$ref": "#/components/examples/ConstDeviceModelsGateway"}, "Switch": {"$ref": "#/components/examples/ConstDeviceModelsSwitch"}}, "schema": {"$ref": "#/components/schemas/const_device_models"}}, "application/vnd.api+json": {"examples": {"AP": {"$ref": "#/components/examples/ConstDeviceModelsAP"}, "Gateway": {"$ref": "#/components/examples/ConstDeviceModelsGateway"}, "Switch": {"$ref": "#/components/examples/ConstDeviceModelsSwitch"}}, "schema": {"$ref": "#/components/schemas/const_device_models"}}}, "description": "List of supported device models"}, "ConstFingerprintTypes": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstFingerprintTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_fingerprint_types"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstFingerprintTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_fingerprint_types"}}}, "description": "List of Fingerprint Types"}, "ConstGatewayApplications": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstGatewayApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/const_gateway_applications_definitions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstGatewayApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/const_gateway_applications_definitions"}}}, "description": "List of Alarm Definitions"}, "ConstInsightMetrics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstInsightMetricsExample"}}, "schema": {"$ref": "#/components/schemas/const_insight_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstInsightMetricsExample"}}, "schema": {"$ref": "#/components/schemas/const_insight_metrics"}}}, "description": "Insight Metrics Definition"}, "ConstLanguages": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstLanguagesExample"}}, "schema": {"$ref": "#/components/schemas/const_languages"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstLanguagesExample"}}, "schema": {"$ref": "#/components/schemas/const_languages"}}}, "description": "List of Languages"}, "ConstLicenseTypes": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstLicenseTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_license_types"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstLicenseTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_license_types"}}}, "description": "List of License Types"}, "ConstMarvisClientVersions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMarvisClientVersionsExample"}}, "schema": {"$ref": "#/components/schemas/const_marvis_client_versions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMarvisClientVersionsExample"}}, "schema": {"$ref": "#/components/schemas/const_marvis_client_versions"}}}, "description": "List of Webhook Topics"}, "ConstMxEdgeEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMxEdgeEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMxEdgeEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}}, "description": "List of MxEdge Events definitions"}, "ConstMxEdgeModels": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMxEdgeModelsExample"}}, "schema": {"$ref": "#/components/schemas/const_mxedge_models"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstMxEdgeModelsExample"}}, "schema": {"$ref": "#/components/schemas/const_mxedge_models"}}}, "description": "List of MxEdge Models"}, "ConstNacEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstNacEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_nac_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstNacEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_nac_events"}}}, "description": "Example response"}, "ConstOtherDeviceEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstOtherDeviceEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstOtherDeviceEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}}, "description": "List of Other Device Events definitions"}, "ConstOtherDeviceModels": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstOtherDeviceModelsExample"}}, "schema": {"$ref": "#/components/schemas/const_other_device_models"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstOtherDeviceModelsExample"}}, "schema": {"$ref": "#/components/schemas/const_other_device_models"}}}, "description": "OK"}, "ConstStates": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstStatesExample"}}, "schema": {"$ref": "#/components/schemas/const_states"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstStatesExample"}}, "schema": {"$ref": "#/components/schemas/const_states"}}}, "description": "List of Countries"}, "ConstSystemEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstSystemEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstSystemEventsExample"}}, "schema": {"$ref": "#/components/schemas/const_events"}}}, "description": "List of System Events definitions"}, "ConstTrafficTypes": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstTrafficTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_traffic_types"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstTrafficTypesExample"}}, "schema": {"$ref": "#/components/schemas/const_traffic_types"}}}, "description": "List of Traffic Types"}, "ConstWebhookTopics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ConstWebhookTopicsExample"}}, "schema": {"$ref": "#/components/schemas/const_webhook_topics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ConstWebhookTopicsExample"}}, "schema": {"$ref": "#/components/schemas/const_webhook_topics"}}}, "description": "List of Webhook Topics"}, "Count": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "Result of Count"}, "CountMarvisActions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CountMarvisActionsExample"}}, "schema": {"$ref": "#/components/schemas/response_count_marvis_actions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CountMarvisActionsExample"}}, "schema": {"$ref": "#/components/schemas/response_count_marvis_actions"}}}, "description": "Marvis Actions Count"}, "DeleteSelfFailed": {"content": {"application/json": {"examples": {"If Any Of The Org To Be Deleted Still Has Inventory": {"$ref": "#/components/examples/DeleteSelfFailedIfAnyOfTheOrgToBeDeletedStillHasInventory"}}, "schema": {"$ref": "#/components/schemas/error_delete_failed"}}, "application/vnd.api+json": {"examples": {"If Any Of The Org To Be Deleted Still Has Inventory": {"$ref": "#/components/examples/DeleteSelfFailedIfAnyOfTheOrgToBeDeletedStillHasInventory"}}, "schema": {"$ref": "#/components/schemas/error_delete_failed"}}}, "description": "Bad Request"}, "Device": {"content": {"application/json": {"examples": {"Ap": {"$ref": "#/components/examples/DeviceAp"}, "gateway": {"$ref": "#/components/examples/Devicegateway"}, "switch": {"$ref": "#/components/examples/Deviceswitch"}}, "schema": {"$ref": "#/components/schemas/mist_device"}}, "application/vnd.api+json": {"examples": {"Ap": {"$ref": "#/components/examples/DeviceAp"}, "gateway": {"$ref": "#/components/examples/Devicegateway"}, "switch": {"$ref": "#/components/examples/Deviceswitch"}}, "schema": {"$ref": "#/components/schemas/mist_device"}}}, "description": "OK"}, "DeviceBiosUpgrade": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceBiosUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_device_bios_upgrade"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceBiosUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_device_bios_upgrade"}}}, "description": "OK"}, "DeviceConfigCmd": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceConfigCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_device_config_cli"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceConfigCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_device_config_cli"}}}, "description": "OK"}, "DeviceEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_device_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_device_events_search"}}}, "description": "OK"}, "DeviceIot": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceIotExample"}}, "schema": {"$ref": "#/components/schemas/device_iot_config"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceIotExample"}}, "schema": {"$ref": "#/components/schemas/device_iot_config"}}}, "description": "OK"}, "DeviceMetric": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceMetricExample"}}, "schema": {"$ref": "#/components/schemas/response_device_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceMetricExample"}}, "schema": {"$ref": "#/components/schemas/response_device_metrics"}}}, "description": "OK"}, "DeviceOther": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceOtherExample"}}, "schema": {"$ref": "#/components/schemas/device_other"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceOtherExample"}}, "schema": {"$ref": "#/components/schemas/device_other"}}}, "description": "Example response"}, "DeviceOtherArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceOtherArrayExample"}}, "schema": {"$ref": "#/components/schemas/device_others"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceOtherArrayExample"}}, "schema": {"$ref": "#/components/schemas/device_others"}}}, "description": "Example response"}, "DeviceOtherStats": {"content": {"application/json": {"examples": {"Otherdevice Stats": {"$ref": "#/components/examples/DeviceOtherStatsOtherdeviceStats"}}, "schema": {"$ref": "#/components/schemas/stats_device_other"}}, "application/vnd.api+json": {"examples": {"Otherdevice Stats": {"$ref": "#/components/examples/DeviceOtherStatsOtherdeviceStats"}}, "schema": {"$ref": "#/components/schemas/stats_device_other"}}}, "description": "Example response"}, "DeviceRadioChannels": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceRadioChannelsExample"}}, "schema": {"$ref": "#/components/schemas/response_device_radio_channels"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceRadioChannelsExample"}}, "schema": {"$ref": "#/components/schemas/response_device_radio_channels"}}}, "description": "OK"}, "DeviceStats": {"content": {"application/json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DeviceStatsAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DeviceStatsGatewayStats"}, "Switch Stats": {"$ref": "#/components/examples/DeviceStatsSwitchStats"}}, "schema": {"$ref": "#/components/schemas/stats_device"}}, "application/vnd.api+json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DeviceStatsAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DeviceStatsGatewayStats"}, "Switch Stats": {"$ref": "#/components/examples/DeviceStatsSwitchStats"}}, "schema": {"$ref": "#/components/schemas/stats_device"}}}, "description": "OK"}, "DeviceVersion": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceVersionExample"}}, "schema": {"$ref": "#/components/schemas/device_version"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DeviceVersionExample"}}, "schema": {"$ref": "#/components/schemas/device_version"}}}, "description": "OK"}, "Deviceprofile": {"content": {"application/json": {"examples": {"Deviceprofile Ap": {"$ref": "#/components/examples/DeviceprofileDeviceprofileAp"}, "Deviceprofile Hub": {"$ref": "#/components/examples/DeviceprofileDeviceprofileHub"}}, "schema": {"$ref": "#/components/schemas/deviceprofile"}}, "application/vnd.api+json": {"examples": {"Deviceprofile Ap": {"$ref": "#/components/examples/DeviceprofileDeviceprofileAp"}, "Deviceprofile Hub": {"$ref": "#/components/examples/DeviceprofileDeviceprofileHub"}}, "schema": {"$ref": "#/components/schemas/deviceprofile"}}}, "description": "OK"}, "DeviceprofilesArray": {"content": {"application/json": {"examples": {"Deviceprofile Ap": {"$ref": "#/components/examples/DeviceprofilesArrayDeviceprofileAp"}, "Deviceprofile Hub": {"$ref": "#/components/examples/DeviceprofilesArrayDeviceprofileHub"}}, "schema": {"$ref": "#/components/schemas/deviceprofiles"}}, "application/vnd.api+json": {"examples": {"Deviceprofile Ap": {"$ref": "#/components/examples/DeviceprofilesArrayDeviceprofileAp"}, "Deviceprofile Hub": {"$ref": "#/components/examples/DeviceprofilesArrayDeviceprofileHub"}}, "schema": {"$ref": "#/components/schemas/deviceprofiles"}}}, "description": "Example response"}, "DevicesArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/config_devices"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/config_devices"}}}, "description": "OK"}, "DevicesArrayStatsOrg": {"content": {"application/json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgGatewayStats"}, "Switch Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgSwitchStats"}}, "schema": {"$ref": "#/components/schemas/stats_devices"}}, "application/vnd.api+json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgGatewayStats"}, "Switch Stats": {"$ref": "#/components/examples/DevicesArrayStatsOrgSwitchStats"}}, "schema": {"$ref": "#/components/schemas/stats_devices"}}}, "description": "OK"}, "DevicesArrayStatsSite": {"content": {"application/json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DevicesArrayStatsSiteAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DevicesArrayStatsSiteGatewayStats"}, "Switch": {"$ref": "#/components/examples/DevicesArrayStatsSiteSwitch"}}, "schema": {"$ref": "#/components/schemas/stats_devices"}}, "application/vnd.api+json": {"examples": {"Access Point Stats": {"$ref": "#/components/examples/DevicesArrayStatsSiteAccessPointStats"}, "Gateway Stats": {"$ref": "#/components/examples/DevicesArrayStatsSiteGatewayStats"}, "Switch": {"$ref": "#/components/examples/DevicesArrayStatsSiteSwitch"}}, "schema": {"$ref": "#/components/schemas/stats_devices"}}}, "description": "OK"}, "DevicesSearch": {"content": {"application/json": {"examples": {"Ap": {"$ref": "#/components/examples/DevicesSearchAp"}, "Gateway": {"$ref": "#/components/examples/DevicesSearchGateway"}, "Switch": {"$ref": "#/components/examples/DevicesSearchSwitch"}}, "schema": {"$ref": "#/components/schemas/response_device_search"}}, "application/vnd.api+json": {"examples": {"Ap": {"$ref": "#/components/examples/DevicesSearchAp"}, "Gateway": {"$ref": "#/components/examples/DevicesSearchGateway"}, "Switch": {"$ref": "#/components/examples/DevicesSearchSwitch"}}, "schema": {"$ref": "#/components/schemas/response_device_search"}}}, "description": "OK"}, "DiscoveredSwitchMetrics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchMetricsExample"}}, "schema": {"$ref": "#/components/schemas/response_discovered_switch_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchMetricsExample"}}, "schema": {"$ref": "#/components/schemas/response_discovered_switch_metrics"}}}, "description": "OK"}, "DiscoveredSwitches": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchesExample"}}, "schema": {"$ref": "#/components/schemas/response_discovered_switches"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchesExample"}}, "schema": {"$ref": "#/components/schemas/response_discovered_switches"}}}, "description": "OK"}, "DiscoveredSwitchesMetrics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchesMetricsExample"}}, "schema": {"$ref": "#/components/schemas/response_dswitches_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/DiscoveredSwitchesMetricsExample"}}, "schema": {"$ref": "#/components/schemas/response_dswitches_metrics"}}}, "description": "OK"}, "EventsDevices": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EventsDevicesExample"}}, "schema": {"$ref": "#/components/schemas/response_events_devices"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EventsDevicesExample"}}, "schema": {"$ref": "#/components/schemas/response_events_devices"}}}, "description": "OK"}, "EventsFastroam": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EventsFastroamExample"}}, "schema": {"$ref": "#/components/schemas/response_events_fastroam"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EventsFastroamExample"}}, "schema": {"$ref": "#/components/schemas/response_events_fastroam"}}}, "description": "OK"}, "EventsNacClientSearch": {"content": {"application/json": {"examples": {"NAC-client_events": {"$ref": "#/components/examples/EventsNacClientSearchNACclientevents"}}, "schema": {"$ref": "#/components/schemas/response_events_nac_client_search"}}, "application/vnd.api+json": {"examples": {"NAC-client_events": {"$ref": "#/components/examples/EventsNacClientSearchNACclientevents"}}, "schema": {"$ref": "#/components/schemas/response_events_nac_client_search"}}}, "description": "NAC Client Events"}, "EventsOtherDevicesSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EventsOtherDevicesSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_other_devices_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EventsOtherDevicesSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_other_devices_search"}}}, "description": "Example response"}, "EventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_search"}}}, "description": "OK"}, "EvpnTopologiesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EvpnTopologiesArrayExample"}}, "schema": {"$ref": "#/components/schemas/evpn_topologies_response"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EvpnTopologiesArrayExample"}}, "schema": {"$ref": "#/components/schemas/evpn_topologies_response"}}}, "description": "OK"}, "EvpnTopology": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/EvpnTopologyExample"}}, "schema": {"$ref": "#/components/schemas/evpn_topology"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/EvpnTopologyExample"}}, "schema": {"$ref": "#/components/schemas/evpn_topology"}}}, "description": "Example response"}, "File": {"content": {"application/json": {"schema": {"contentMediaType": "application/octet-stream", "description": "File", "type": "string"}}, "application/vnd.api+json": {"schema": {"contentMediaType": "application/octet-stream", "description": "File", "type": "string"}}}, "description": "OK"}, "FingerprintSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/FingerprintSearchExample"}}, "schema": {"$ref": "#/components/schemas/fingerprint_search_result"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/FingerprintSearchExample"}}, "schema": {"$ref": "#/components/schemas/fingerprint_search_result"}}}, "description": "OK"}, "GatewayCluster": {"content": {"application/json": {"examples": {"Gateway Cluster": {"$ref": "#/components/examples/GatewayClusterGatewayCluster"}}, "schema": {"$ref": "#/components/schemas/gateway_cluster"}}, "application/vnd.api+json": {"examples": {"Gateway Cluster": {"$ref": "#/components/examples/GatewayClusterGatewayCluster"}}, "schema": {"$ref": "#/components/schemas/gateway_cluster"}}}, "description": "Ok"}, "GatewayMetrics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/GatewayMetricsExample"}}, "schema": {"$ref": "#/components/schemas/gateway_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/GatewayMetricsExample"}}, "schema": {"$ref": "#/components/schemas/gateway_metrics"}}}, "description": "OK"}, "Gatewaytemplate": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/gateway_template"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/gateway_template"}}}, "description": "OK"}, "GatewaytemplatesArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/gateway_templates"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/gateway_templates"}}}, "description": "OK"}, "Guest": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/GuestExample"}, "Example2": {"$ref": "#/components/examples/GuestExample2"}}, "schema": {"$ref": "#/components/schemas/guest"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/GuestExample"}, "Example2": {"$ref": "#/components/examples/GuestExample2"}}, "schema": {"$ref": "#/components/schemas/guest"}}}, "description": "OK"}, "GuestsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/GuestsArrayExample"}, "Example2": {"$ref": "#/components/examples/GuestsArrayExample2"}}, "schema": {"$ref": "#/components/schemas/guests"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/GuestsArrayExample"}, "Example2": {"$ref": "#/components/examples/GuestsArrayExample2"}}, "schema": {"$ref": "#/components/schemas/guests"}}}, "description": "OK"}, "GuestsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/GuestsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_guest_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/GuestsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_guest_search"}}}, "description": "OK"}, "HTTP200AutoPlacement": {"content": {"application/json": {"examples": {"Auto placement is already in progress for this map": {"$ref": "#/components/examples/HTTP200AutoPlacementAutoplacementisalreadyinprogressforthismap"}, "Dryrun for map completed": {"$ref": "#/components/examples/HTTP200AutoPlacementDryrunformapcompleted"}, "Map failed to start as it had less than 3 APs associated with it": {"$ref": "#/components/examples/HTTP200AutoPlacementMapfailedtostartasithadlessthan3APsassociatedwithit"}, "Service failed to start due containing invalid APs": {"$ref": "#/components/examples/HTTP200AutoPlacementServicefailedtostartduecontaininginvalidAPs"}, "Service started after override for localization": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedafteroverrideforlocalization"}, "Service started after override for orchestration": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedafteroverridefororchestration"}, "Service started successfully for localization": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedsuccessfullyforlocalization"}, "Service started successfully for orchestration": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedsuccessfullyfororchestration"}, "Unable to reach the autoplacement service": {"$ref": "#/components/examples/HTTP200AutoPlacementUnabletoreachtheautoplacementservice"}}, "schema": {"$ref": "#/components/schemas/response_autoplacement"}}, "application/vnd.api+json": {"examples": {"Auto placement is already in progress for this map": {"$ref": "#/components/examples/HTTP200AutoPlacementAutoplacementisalreadyinprogressforthismap"}, "Dryrun for map completed": {"$ref": "#/components/examples/HTTP200AutoPlacementDryrunformapcompleted"}, "Map failed to start as it had less than 3 APs associated with it": {"$ref": "#/components/examples/HTTP200AutoPlacementMapfailedtostartasithadlessthan3APsassociatedwithit"}, "Service failed to start due containing invalid APs": {"$ref": "#/components/examples/HTTP200AutoPlacementServicefailedtostartduecontaininginvalidAPs"}, "Service started after override for localization": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedafteroverrideforlocalization"}, "Service started after override for orchestration": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedafteroverridefororchestration"}, "Service started successfully for localization": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedsuccessfullyforlocalization"}, "Service started successfully for orchestration": {"$ref": "#/components/examples/HTTP200AutoPlacementServicestartedsuccessfullyfororchestration"}, "Unable to reach the autoplacement service": {"$ref": "#/components/examples/HTTP200AutoPlacementUnabletoreachtheautoplacementservice"}}, "schema": {"$ref": "#/components/schemas/response_autoplacement"}}}, "description": "OK"}, "HTTP400": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP400Example"}}, "schema": {"$ref": "#/components/schemas/response_http400"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP400Example"}}, "schema": {"$ref": "#/components/schemas/response_http400"}}}, "description": "Bad Syntax"}, "HTTP400Webhook": {"content": {"application/json": {"examples": {"Duplicate_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookDuplicateassetfilterid"}, "Invalid_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookInvalidassetfilterid"}, "Malformed_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookMalformedassetfilterid"}, "RawDataWebhook_already_created": {"$ref": "#/components/examples/HTTP400WebhookRawDataWebhookalreadycreated"}, "RawDataWebhook_multiple_topics": {"$ref": "#/components/examples/HTTP400WebhookRawDataWebhookmultipletopics"}, "org_level_filter_webhook": {"$ref": "#/components/examples/HTTP400Webhookorglevelfilterwebhook"}}, "schema": {"$ref": "#/components/schemas/response_http400_webhook"}}, "application/vnd.api+json": {"examples": {"Duplicate_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookDuplicateassetfilterid"}, "Invalid_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookInvalidassetfilterid"}, "Malformed_assetfilter_id": {"$ref": "#/components/examples/HTTP400WebhookMalformedassetfilterid"}, "RawDataWebhook_already_created": {"$ref": "#/components/examples/HTTP400WebhookRawDataWebhookalreadycreated"}, "RawDataWebhook_multiple_topics": {"$ref": "#/components/examples/HTTP400WebhookRawDataWebhookmultipletopics"}, "org_level_filter_webhook": {"$ref": "#/components/examples/HTTP400Webhookorglevelfilterwebhook"}}, "schema": {"$ref": "#/components/schemas/response_http400_webhook"}}}, "description": "Bad Syntax"}, "HTTP401": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP401Example"}}, "schema": {"$ref": "#/components/schemas/response_http401"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP401Example"}}, "schema": {"$ref": "#/components/schemas/response_http401"}}}, "description": "Unauthorized"}, "HTTP403": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP403Example"}}, "schema": {"$ref": "#/components/schemas/response_http403"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP403Example"}}, "schema": {"$ref": "#/components/schemas/response_http403"}}}, "description": "Permission Denied"}, "HTTP404": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_http404"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_http404"}}}, "description": "Not found. The API endpoint doesn\u2019t exist or resource doesn\u2019 t exist"}, "HTTP429": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP429Example"}}, "schema": {"$ref": "#/components/schemas/response_http429"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/HTTP429Example"}}, "schema": {"$ref": "#/components/schemas/response_http429"}}}, "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": {"$ref": "#/components/examples/IdpProfileIdpprofile"}}, "schema": {"$ref": "#/components/schemas/idp_profile"}}, "application/vnd.api+json": {"examples": {"Idpprofile": {"$ref": "#/components/examples/IdpProfileIdpprofile"}}, "schema": {"$ref": "#/components/schemas/idp_profile"}}}, "description": "Example response"}, "IdpProfileArray": {"content": {"application/json": {"examples": {"Idpprofiles": {"$ref": "#/components/examples/IdpProfileArrayIdpprofiles"}}, "schema": {"$ref": "#/components/schemas/idp_profiles"}}, "application/vnd.api+json": {"examples": {"Idpprofiles": {"$ref": "#/components/examples/IdpProfileArrayIdpprofiles"}}, "schema": {"$ref": "#/components/schemas/idp_profiles"}}}, "description": "Example response"}, "InsightMetric": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InsightMetricExample"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InsightMetricExample"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}}, "description": "OK"}, "InsightMetricMsp": {"content": {"application/json": {"examples": {"Orgs Sle": {"$ref": "#/components/examples/InsightMetricMspOrgsSle"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}, "application/vnd.api+json": {"examples": {"Orgs Sle": {"$ref": "#/components/examples/InsightMetricMspOrgsSle"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}}, "description": "OK"}, "InsightMetricOrg": {"content": {"application/json": {"examples": {"Worst Sites By Sle": {"$ref": "#/components/examples/InsightMetricOrgWorstSitesBySle"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}, "application/vnd.api+json": {"examples": {"Worst Sites By Sle": {"$ref": "#/components/examples/InsightMetricOrgWorstSitesBySle"}}, "schema": {"$ref": "#/components/schemas/insight_metrics"}}}, "description": "OK"}, "InsightRogue": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InsightRogueExample"}}, "schema": {"$ref": "#/components/schemas/response_insight_rogue"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InsightRogueExample"}}, "schema": {"$ref": "#/components/schemas/response_insight_rogue"}}}, "description": "OK"}, "InsightRogueClients": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InsightRogueClientsExample"}}, "schema": {"$ref": "#/components/schemas/response_insight_rogue_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InsightRogueClientsExample"}}, "schema": {"$ref": "#/components/schemas/response_insight_rogue_client"}}}, "description": "OK"}, "InstallerAlarmtemplates": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerAlarmtemplatesExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerAlarmtemplatesExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}}, "description": "Installer List of Alarm Templates"}, "InstallerDeviceProfiles": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerDeviceProfilesExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerDeviceProfilesExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}}, "description": "Installer List of Device Profiles"}, "InstallerDevicesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerDevicesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installer_devices"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerDevicesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installer_devices"}}}, "description": "List of Devices Recently Claimed"}, "InstallerRftemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerRftemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerRftemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}}, "description": "Installer List of RF Templates"}, "InstallerSitegroupsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerSitegroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerSitegroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/installers"}}}, "description": "Installer List of Site Groups"}, "InstallerSitesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerSitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installer_sites"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/InstallerSitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/installer_sites"}}}, "description": "List of Sites"}, "InviteVerifyNotFound": {"content": {"application/json": {"examples": {"Invalid Secret": {"$ref": "#/components/examples/InviteVerifyNotFoundInvalidSecret"}, "Invite Created By Self": {"$ref": "#/components/examples/InviteVerifyNotFoundInviteCreatedBySelf"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Invalid Secret": {"$ref": "#/components/examples/InviteVerifyNotFoundInvalidSecret"}, "Invite Created By Self": {"$ref": "#/components/examples/InviteVerifyNotFoundInviteCreatedBySelf"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Not Found"}, "IotEndpointsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/IotEndpointsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_iot_endpoints_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/IotEndpointsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_iot_endpoints_search"}}}, "description": "OK"}, "IssuedClientCertificates": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/IssuedClientCertificatesExample"}}, "schema": {"$ref": "#/components/schemas/issued_client_certificates_results"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/IssuedClientCertificatesExample"}}, "schema": {"$ref": "#/components/schemas/issued_client_certificates_results"}}}, "description": "OK"}, "JseInfo": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JseInfoExample"}}, "schema": {"$ref": "#/components/schemas/account_jse_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JseInfoExample"}}, "schema": {"$ref": "#/components/schemas/account_jse_info"}}}, "description": "Example response"}, "JsiDevices": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JsiDevicesExample"}}, "schema": {"$ref": "#/components/schemas/jse_devices"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JsiDevicesExample"}}, "schema": {"$ref": "#/components/schemas/jse_devices"}}}, "description": "OK"}, "JsiInventory": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JsiInventoryExample"}}, "schema": {"$ref": "#/components/schemas/js_inventory"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JsiInventoryExample"}}, "schema": {"$ref": "#/components/schemas/js_inventory"}}}, "description": "OK"}, "JsiInventoryError": {"content": {"application/json": {"examples": {"No Juniper Account Linked": {"$ref": "#/components/examples/JsiInventoryErrorNoJuniperAccountLinked"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"No Juniper Account Linked": {"$ref": "#/components/examples/JsiInventoryErrorNoJuniperAccountLinked"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Bad Request - no Juniper Account Linked"}, "JsiInventorySearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JsiInventorySearchExample"}}, "schema": {"$ref": "#/components/schemas/js_inventory_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JsiInventorySearchExample"}}, "schema": {"$ref": "#/components/schemas/js_inventory_search"}}}, "description": "OK"}, "JsiPbnCount": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "OK"}, "JsiPbnSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/jsi_pbn_search"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/jsi_pbn_search"}}}, "description": "OK"}, "JsiSirtCount": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "OK"}, "JsiSirtSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/jsi_sirt_search"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/jsi_sirt_search"}}}, "description": "OK"}, "JuniperLinkAccountFailed": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JuniperLinkAccountFailedExample"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JuniperLinkAccountFailedExample"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Account already linked"}, "JuniperLinkAccountSuccess": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JuniperLinkAccountSuccessExample"}}, "schema": {"$ref": "#/components/schemas/account_juniper_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JuniperLinkAccountSuccessExample"}}, "schema": {"$ref": "#/components/schemas/account_juniper_info"}}}, "description": "Account linked"}, "JunosRegisterCmd": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/JunosRegisterCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_device_config_cmd"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/JunosRegisterCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_device_config_cmd"}}}, "description": "OK"}, "License": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseExample"}}, "schema": {"$ref": "#/components/schemas/license"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseExample"}}, "schema": {"$ref": "#/components/schemas/license"}}}, "description": "OK"}, "LicenseUsageOrg": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseUsageOrgExample"}}, "schema": {"$ref": "#/components/schemas/usage_org_licenses"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseUsageOrgExample"}}, "schema": {"$ref": "#/components/schemas/usage_org_licenses"}}}, "description": "OK"}, "LicenseUsageSite": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseUsageSiteExample"}}, "schema": {"$ref": "#/components/schemas/license_usage_site"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LicenseUsageSiteExample"}}, "schema": {"$ref": "#/components/schemas/license_usage_site"}}}, "description": "Site License Usage"}, "LocationCoverage": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LocationCoverageExample"}}, "schema": {"$ref": "#/components/schemas/response_location_coverage"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LocationCoverageExample"}}, "schema": {"$ref": "#/components/schemas/response_location_coverage"}}}, "description": "OK"}, "LoginFailure": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LoginFailureExample"}}, "schema": {"$ref": "#/components/schemas/response_login_failure"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LoginFailureExample"}}, "schema": {"$ref": "#/components/schemas/response_login_failure"}}}, "description": "Login Failed"}, "LoginFailures": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LoginFailuresExample"}}, "schema": {"$ref": "#/components/schemas/login_failures"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LoginFailuresExample"}}, "schema": {"$ref": "#/components/schemas/login_failures"}}}, "description": "OK"}, "LoginLookup": {"content": {"application/json": {"examples": {"SSO_user_exists": {"$ref": "#/components/examples/LoginLookupSSOuserexists"}, "local_user_exists": {"$ref": "#/components/examples/LoginLookuplocaluserexists"}}, "schema": {"$ref": "#/components/schemas/response_login_lookup"}}, "application/vnd.api+json": {"examples": {"SSO_user_exists": {"$ref": "#/components/examples/LoginLookupSSOuserexists"}, "local_user_exists": {"$ref": "#/components/examples/LoginLookuplocaluserexists"}}, "schema": {"$ref": "#/components/schemas/response_login_lookup"}}}, "description": "Account exists"}, "LoginOauthUrl": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LoginOauthUrlExample"}}, "schema": {"$ref": "#/components/schemas/response_login_oauth_url"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LoginOauthUrlExample"}}, "schema": {"$ref": "#/components/schemas/response_login_oauth_url"}}}, "description": "OK"}, "LoginSuccess": {"content": {"application/json": {"examples": {"2FA-required": {"$ref": "#/components/examples/LoginSuccess2FArequired"}, "OK": {"$ref": "#/components/examples/LoginSuccessOK"}}, "schema": {"$ref": "#/components/schemas/response_login_success"}}, "application/vnd.api+json": {"examples": {"2FA-required": {"$ref": "#/components/examples/LoginSuccess2FArequired"}, "OK": {"$ref": "#/components/examples/LoginSuccessOK"}}, "schema": {"$ref": "#/components/schemas/response_login_success"}}}, "description": "Login Success", "headers": {"Set-Cookie": {"description": "Session Cookie if login/password authentication is successful", "schema": {"examples": ["csrftoken=vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx; expires=Tue, 15-Mar-2016 19:47:20 GMT; Max-Age=31449600; Path=/"], "type": "string"}}}}, "Logout": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LogoutExample"}}, "schema": {"$ref": "#/components/schemas/response_logout"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LogoutExample"}}, "schema": {"$ref": "#/components/schemas/response_logout"}}}, "description": "OK"}, "LogsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/LogsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_log_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/LogsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_log_search"}}}, "description": "OK"}, "MacsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MacsArrayExample"}}, "schema": {"$ref": "#/components/schemas/mac_addresses"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MacsArrayExample"}}, "schema": {"$ref": "#/components/schemas/mac_addresses"}}}, "description": "OK"}, "Map": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/map"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/map"}}}, "description": "OK"}, "MapImport": {"content": {"application/json": {"examples": {"Assigned And Placed": {"$ref": "#/components/examples/MapImportAssignedAndPlaced"}, "Assigned Named And Placed": {"$ref": "#/components/examples/MapImportAssignedNamedAndPlaced"}, "Placed": {"$ref": "#/components/examples/MapImportPlaced"}}, "schema": {"$ref": "#/components/schemas/response_map_import"}}, "application/vnd.api+json": {"examples": {"Assigned And Placed": {"$ref": "#/components/examples/MapImportAssignedAndPlaced"}, "Assigned Named And Placed": {"$ref": "#/components/examples/MapImportAssignedNamedAndPlaced"}, "Placed": {"$ref": "#/components/examples/MapImportPlaced"}}, "schema": {"$ref": "#/components/schemas/response_map_import"}}}, "description": "OK"}, "MapsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MapsArrayExample"}}, "schema": {"$ref": "#/components/schemas/maps"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MapsArrayExample"}}, "schema": {"$ref": "#/components/schemas/maps"}}}, "description": "OK"}, "Mapstack": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/mapstack_response"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/mapstack_response"}}}, "description": "OK"}, "MapstacksArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MapstacksArrayExample"}}, "schema": {"$ref": "#/components/schemas/mapstacks"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MapstacksArrayExample"}}, "schema": {"$ref": "#/components/schemas/mapstacks"}}}, "description": "OK"}, "MarvisClient": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client"}}}, "description": "Example response"}, "MarvisClientEventsCount": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "Count result"}, "MarvisClientEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client_events_search"}}}, "description": "Paginated Marvis Client events search results"}, "MarvisClientInsights": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientInsightsExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client_insights"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientInsightsExample"}}, "schema": {"$ref": "#/components/schemas/marvis_client_insights"}}}, "description": "Marvis Client time-series metrics"}, "MarvisClientsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientsArrayExample"}}, "schema": {"$ref": "#/components/schemas/marvis_clients"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisClientsArrayExample"}}, "schema": {"$ref": "#/components/schemas/marvis_clients"}}}, "description": "Example response"}, "MarvisConfigActionsCount": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "Count result"}, "MarvisConfigActionsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisConfigActionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/marvis_config_actions_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisConfigActionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/marvis_config_actions_search"}}}, "description": "Paginated Marvis Config Actions search results"}, "MarvisConfigFeedbackResponse": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisConfigFeedbackResponseExample"}}, "schema": {"$ref": "#/components/schemas/marvis_config_feedback_response"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MarvisConfigFeedbackResponseExample"}}, "schema": {"$ref": "#/components/schemas/marvis_config_feedback_response"}}}, "description": "Marvis Config Feedback response"}, "Ml": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MlExample"}}, "schema": {"$ref": "#/components/schemas/response_ml"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MlExample"}}, "schema": {"$ref": "#/components/schemas/response_ml"}}}, "description": "OK"}, "MobileVerifySecret": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MobileVerifySecretExample"}}, "schema": {"$ref": "#/components/schemas/response_mobile_verify_secret"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MobileVerifySecretExample"}}, "schema": {"$ref": "#/components/schemas/response_mobile_verify_secret"}}}, "description": "OK"}, "Msp": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MspExample"}}, "schema": {"$ref": "#/components/schemas/msp"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MspExample"}}, "schema": {"$ref": "#/components/schemas/msp"}}}, "description": "OK"}, "MspInventoryDevice": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MspInventoryDeviceExample"}}, "schema": {"$ref": "#/components/schemas/response_msp_inventory_device"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MspInventoryDeviceExample"}}, "schema": {"$ref": "#/components/schemas/response_msp_inventory_device"}}}, "description": "OK"}, "MxEdgeEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxEdgeEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_mxedge_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxEdgeEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_mxedge_events_search"}}}, "description": "Example response"}, "MxEdgeSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxEdgeSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_mxedge_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxEdgeSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_mxedge_search"}}}, "description": "Example response"}, "MxEdgeUpgrade": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_mxedge_upgrade"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_mxedge_upgrade"}}}, "description": "Example response"}, "MxEdgeUpgradesArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_mxedge_upgrades"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_mxedge_upgrades"}}}, "description": "Example response"}, "MxEdgeVmParams": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/mxedge_vm_params"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/mxedge_vm_params"}}}, "description": "Mist Edge VM Parameters"}, "MxTunnelsPreemptAps": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_mxtunnels_preempt_aps"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_mxtunnels_preempt_aps"}}}, "description": "OK"}, "Mxcluster": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxclusterExample"}}, "schema": {"$ref": "#/components/schemas/mxcluster"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxclusterExample"}}, "schema": {"$ref": "#/components/schemas/mxcluster"}}}, "description": "OK"}, "MxclustersArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxclustersArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxclusters"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxclustersArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxclusters"}}}, "description": "OK"}, "Mxedge": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeExample"}}, "schema": {"$ref": "#/components/schemas/mxedge"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeExample"}}, "schema": {"$ref": "#/components/schemas/mxedge"}}}, "description": "OK"}, "MxedgeStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedge"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedge"}}}, "description": "MxEdge Stats"}, "MxedgeStatsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedges"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedges"}}}, "description": "List of MxEdge Stats"}, "MxedgeUpgradeInfo": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeUpgradeInfoExample"}}, "schema": {"$ref": "#/components/schemas/mxedge_upgrade_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgeUpgradeInfoExample"}}, "schema": {"$ref": "#/components/schemas/mxedge_upgrade_info"}}}, "description": "OK"}, "MxedgesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgesArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxedges"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgesArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxedges"}}}, "description": "OK"}, "MxedgesArrayStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgesArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedges"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxedgesArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_mxedges"}}}, "description": "OK"}, "Mxtunnel": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxtunnelExample"}}, "schema": {"$ref": "#/components/schemas/mxtunnel"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxtunnelExample"}}, "schema": {"$ref": "#/components/schemas/mxtunnel"}}}, "description": "OK"}, "MxtunnelsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/MxtunnelsArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxtunnels"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/MxtunnelsArrayExample"}}, "schema": {"$ref": "#/components/schemas/mxtunnels"}}}, "description": "OK"}, "NacClientCoa": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_client_coa_response"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/nac_client_coa_response"}}}, "description": "Example response"}, "NacCrlFile": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_crl_file"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/nac_crl_file"}}}, "description": "Example response"}, "NacCrlFilesArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_nac_crl_files"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_nac_crl_files"}}}, "description": "Example response"}, "NacPortal": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NacPortalExample"}}, "schema": {"$ref": "#/components/schemas/nac_portal"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NacPortalExample"}}, "schema": {"$ref": "#/components/schemas/nac_portal"}}}, "description": "OK"}, "NacPortalArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NacPortalArrayExample"}}, "schema": {"$ref": "#/components/schemas/nac_portals"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NacPortalArrayExample"}}, "schema": {"$ref": "#/components/schemas/nac_portals"}}}, "description": "OK"}, "NacRule": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_rule"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/nac_rule"}}}, "description": "Example response"}, "NacRulesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NacRulesArrayExample"}}, "schema": {"$ref": "#/components/schemas/nac_rules"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NacRulesArrayExample"}}, "schema": {"$ref": "#/components/schemas/nac_rules"}}}, "description": "Example response"}, "NacTag": {"content": {"application/json": {"examples": {"Egress Vlan Names": {"$ref": "#/components/examples/NacTagEgressVlanNames"}, "Matches Cert CN": {"$ref": "#/components/examples/NacTagMatchesCertCN"}, "Matches Cert EKU": {"$ref": "#/components/examples/NacTagMatchesCertEku"}, "Matches Cert Issuer": {"$ref": "#/components/examples/NacTagMatchesCertIssuer"}, "Matches Cert SAN": {"$ref": "#/components/examples/NacTagMatchesCertSAN"}, "Matches Cert Serial": {"$ref": "#/components/examples/NacTagMatchesCertSerial"}, "Matches Cert Sub": {"$ref": "#/components/examples/NacTagMatchesCertSub"}, "Matches Cert Template": {"$ref": "#/components/examples/NacTagMatchesCertTemplate"}, "Matches Client Mac": {"$ref": "#/components/examples/NacTagMatchesClientMac"}, "Matches EDR Status": {"$ref": "#/components/examples/NacTagMatchesEdrStatus"}, "Matches Hostname": {"$ref": "#/components/examples/NacTagMatchesHostname"}, "Matches Radius Group": {"$ref": "#/components/examples/NacTagMatchesRadiusGroup"}, "Matches Realm": {"$ref": "#/components/examples/NacTagMatchesRealm"}, "Matches Role": {"$ref": "#/components/examples/NacTagMatchesRole"}, "Matches Username": {"$ref": "#/components/examples/NacTagMatchesUsername"}, "Matches Vlan": {"$ref": "#/components/examples/NacTagMatchesVlan"}, "Radius Attrs": {"$ref": "#/components/examples/NacTagRadiusAttrs"}, "Radius Vendor Attrs": {"$ref": "#/components/examples/NacTagRadiusVendorAttrs"}, "Session Timeout": {"$ref": "#/components/examples/NacTagSessionTimeout"}, "Username Attr": {"$ref": "#/components/examples/NacTagUsernameAttr"}}, "schema": {"$ref": "#/components/schemas/nac_tag"}}, "application/vnd.api+json": {"examples": {"Egress Vlan Names": {"$ref": "#/components/examples/NacTagEgressVlanNames"}, "Matches Cert CN": {"$ref": "#/components/examples/NacTagMatchesCertCN"}, "Matches Cert Issuer": {"$ref": "#/components/examples/NacTagMatchesCertIssuer"}, "Matches Cert SAN": {"$ref": "#/components/examples/NacTagMatchesCertSAN"}, "Matches Cert Serial": {"$ref": "#/components/examples/NacTagMatchesCertSerial"}, "Matches Cert Sub": {"$ref": "#/components/examples/NacTagMatchesCertSub"}, "Matches Cert Template": {"$ref": "#/components/examples/NacTagMatchesCertTemplate"}, "Matches Client Mac": {"$ref": "#/components/examples/NacTagMatchesClientMac"}, "Matches Hostname": {"$ref": "#/components/examples/NacTagMatchesHostname"}, "Matches Radius Group": {"$ref": "#/components/examples/NacTagMatchesRadiusGroup"}, "Matches Realm": {"$ref": "#/components/examples/NacTagMatchesRealm"}, "Matches Role": {"$ref": "#/components/examples/NacTagMatchesRole"}, "Matches Username": {"$ref": "#/components/examples/NacTagMatchesUsername"}, "Matches Vlan": {"$ref": "#/components/examples/NacTagMatchesVlan"}, "Radius Attrs": {"$ref": "#/components/examples/NacTagRadiusAttrs"}, "Radius Vendor Attrs": {"$ref": "#/components/examples/NacTagRadiusVendorAttrs"}, "Session Timeout": {"$ref": "#/components/examples/NacTagSessionTimeout"}, "Username Attr": {"$ref": "#/components/examples/NacTagUsernameAttr"}}, "schema": {"$ref": "#/components/schemas/nac_tag"}}}, "description": "Example response"}, "NacTagsArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nac_tags"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/nac_tags"}}}, "description": "Example response"}, "Network": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NetworkExample"}}, "schema": {"$ref": "#/components/schemas/network"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NetworkExample"}}, "schema": {"$ref": "#/components/schemas/network"}}}, "description": "OK"}, "NetworksArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NetworksArrayExample"}}, "schema": {"$ref": "#/components/schemas/networks"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NetworksArrayExample"}}, "schema": {"$ref": "#/components/schemas/networks"}}}, "description": "OK"}, "Networktemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NetworktemplateExample"}}, "schema": {"$ref": "#/components/schemas/network_template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NetworktemplateExample"}}, "schema": {"$ref": "#/components/schemas/network_template"}}}, "description": "OK"}, "NetworktemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/NetworktemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/network_templates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/NetworktemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/network_templates"}}}, "description": "OK"}, "OK": {"description": "OK"}, "OauthAppLink": {"content": {"application/json": {"examples": {"Crowdstrike": {"$ref": "#/components/examples/OauthAppLinkCrowdstrike"}, "Jamf": {"$ref": "#/components/examples/OauthAppLinkJamf"}, "Mobicontrol": {"$ref": "#/components/examples/OauthAppLinkMobicontrol"}, "Prisma": {"$ref": "#/components/examples/OauthAppLinkPrisma"}, "SentinelOne": {"$ref": "#/components/examples/OauthAppLinkSentinelOne"}, "Vmware": {"$ref": "#/components/examples/OauthAppLinkVmware"}, "ZDX": {"$ref": "#/components/examples/OauthAppLinkZDX"}, "Zoom": {"$ref": "#/components/examples/OauthAppLinkZoom"}}, "schema": {"$ref": "#/components/schemas/account_oauth_info"}}, "application/vnd.api+json": {"examples": {"Crowdstrike": {"$ref": "#/components/examples/OauthAppLinkCrowdstrike"}, "Jamf": {"$ref": "#/components/examples/OauthAppLinkJamf"}, "Mobicontrol": {"$ref": "#/components/examples/OauthAppLinkMobicontrol"}, "Prisma": {"$ref": "#/components/examples/OauthAppLinkPrisma"}, "SentinelOne": {"$ref": "#/components/examples/OauthAppLinkSentinelOne"}, "Vmware": {"$ref": "#/components/examples/OauthAppLinkVmware"}, "ZDX": {"$ref": "#/components/examples/OauthAppLinkZDX"}, "Zoom": {"$ref": "#/components/examples/OauthAppLinkZoom"}}, "schema": {"$ref": "#/components/schemas/account_oauth_info"}}}, "description": "OK"}, "Org": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgExample"}}, "schema": {"$ref": "#/components/schemas/org"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgExample"}}, "schema": {"$ref": "#/components/schemas/org"}}}, "description": "Org Infos"}, "OrgDeviceUpgrade": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDeviceUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_upgrade_org_devices"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDeviceUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_upgrade_org_devices"}}}, "description": "OK"}, "OrgDeviceUpgradeList": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDeviceUpgradeListExample"}}, "schema": {"$ref": "#/components/schemas/upgrade_org_devices_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDeviceUpgradeListExample"}}, "schema": {"$ref": "#/components/schemas/upgrade_org_devices_list"}}}, "description": "OK"}, "OrgDevices": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDevicesExample"}}, "schema": {"$ref": "#/components/schemas/response_org_devices"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDevicesExample"}}, "schema": {"$ref": "#/components/schemas/response_org_devices"}}}, "description": "OK"}, "OrgDevicesSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDevicesSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_org_devices_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgDevicesSummaryExample"}}, "schema": {"$ref": "#/components/schemas/response_org_devices_summary"}}}, "description": "OK"}, "OrgE911Report": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/org_e911_report"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/org_e911_report"}}}, "description": "OK"}, "OrgEventsSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_events_orgs_search"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_events_orgs_search"}}}, "description": "Example response"}, "OrgInventory": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventoryExample"}}, "schema": {"$ref": "#/components/schemas/inventory_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventoryExample"}}, "schema": {"$ref": "#/components/schemas/inventory_list"}}}, "description": "OK"}, "OrgInventoryAdd": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventoryAddExample"}}, "schema": {"$ref": "#/components/schemas/response_inventory"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventoryAddExample"}}, "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": {"$ref": "#/components/examples/OrgInventoryChangesAssign"}, "Delete": {"$ref": "#/components/examples/OrgInventoryChangesDelete"}, "Error": {"$ref": "#/components/examples/OrgInventoryChangesError"}}, "schema": {"$ref": "#/components/schemas/response_org_inventory_change"}}, "application/vnd.api+json": {"examples": {"Assign": {"$ref": "#/components/examples/OrgInventoryChangesAssign"}, "Delete": {"$ref": "#/components/examples/OrgInventoryChangesDelete"}, "Error": {"$ref": "#/components/examples/OrgInventoryChangesError"}}, "schema": {"$ref": "#/components/schemas/response_org_inventory_change"}}}, "description": "OK"}, "OrgInventorySearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventorySearchExample"}}, "schema": {"$ref": "#/components/schemas/inventory_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgInventorySearchExample"}}, "schema": {"$ref": "#/components/schemas/inventory_search"}}}, "description": "OK"}, "OrgInventoryUnassignFailed": {"content": {"application/json": {"examples": {"Invalid Mac Given For Replacing Mac": {"$ref": "#/components/examples/OrgInventoryUnassignFailedInvalidMacGivenForReplacingMac"}, "Inventory Device Is Already Assigned": {"$ref": "#/components/examples/OrgInventoryUnassignFailedInventoryDeviceIsAlreadyAssigned"}, "Outside Of Grace Period": {"$ref": "#/components/examples/OrgInventoryUnassignFailedOutsideOfGracePeriod"}, "Replacing Mac Device Is Not Assigned To A Site": {"$ref": "#/components/examples/OrgInventoryUnassignFailedReplacingMacDeviceIsNotAssignedToASite"}, "Replacing Mac Device Last Modified Outside Of Grace Period": {"$ref": "#/components/examples/OrgInventoryUnassignFailedReplacingMacDeviceLastModifiedOutsideOfGracePeriod"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Invalid Mac Given For Replacing Mac": {"$ref": "#/components/examples/OrgInventoryUnassignFailedInvalidMacGivenForReplacingMac"}, "Inventory Device Is Already Assigned": {"$ref": "#/components/examples/OrgInventoryUnassignFailedInventoryDeviceIsAlreadyAssigned"}, "Outside Of Grace Period": {"$ref": "#/components/examples/OrgInventoryUnassignFailedOutsideOfGracePeriod"}, "Replacing Mac Device Is Not Assigned To A Site": {"$ref": "#/components/examples/OrgInventoryUnassignFailedReplacingMacDeviceIsNotAssignedToASite"}, "Replacing Mac Device Last Modified Outside Of Grace Period": {"$ref": "#/components/examples/OrgInventoryUnassignFailedReplacingMacDeviceLastModifiedOutsideOfGracePeriod"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Bad Request"}, "OrgInventoryUnassignNotFound": {"content": {"application/json": {"examples": {"Replacing Mac Device Is Not In Org Inventory": {"$ref": "#/components/examples/OrgInventoryUnassignNotFoundReplacingMacDeviceIsNotInOrgInventory"}, "Replacing Mac Device Not Found": {"$ref": "#/components/examples/OrgInventoryUnassignNotFoundReplacingMacDeviceNotFound"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Replacing Mac Device Is Not In Org Inventory": {"$ref": "#/components/examples/OrgInventoryUnassignNotFoundReplacingMacDeviceIsNotInOrgInventory"}, "Replacing Mac Device Not Found": {"$ref": "#/components/examples/OrgInventoryUnassignNotFoundReplacingMacDeviceNotFound"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Not Found"}, "OrgScep": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgScepExample"}}, "schema": {"$ref": "#/components/schemas/org_setting_scep_response"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgScepExample"}}, "schema": {"$ref": "#/components/schemas/org_setting_scep_response"}}}, "description": "OK"}, "OrgSetting": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSettingExample"}, "Example2": {"$ref": "#/components/examples/OrgSettingExample2"}}, "schema": {"$ref": "#/components/schemas/org_setting"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSettingExample"}, "Example2": {"$ref": "#/components/examples/OrgSettingExample2"}}, "schema": {"$ref": "#/components/schemas/org_setting"}}}, "description": "OK"}, "OrgSiteSle": {"content": {"application/json": {"examples": {"WAN SLE": {"$ref": "#/components/examples/OrgSiteSleWANSLE"}, "Wi-Fi SLE": {"$ref": "#/components/examples/OrgSiteSleWiFiSLE"}, "Wired SLE": {"$ref": "#/components/examples/OrgSiteSleWiredSLE"}}, "schema": {"$ref": "#/components/schemas/response_org_site_sle"}}, "application/vnd.api+json": {"examples": {"WAN SLE": {"$ref": "#/components/examples/OrgSiteSleWANSLE"}, "Wi-Fi SLE": {"$ref": "#/components/examples/OrgSiteSleWiFiSLE"}, "Wired SLE": {"$ref": "#/components/examples/OrgSiteSleWiredSLE"}}, "schema": {"$ref": "#/components/schemas/response_org_site_sle"}}}, "description": "Example response"}, "OrgSslProxyCert": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSslProxyCertExample"}}, "schema": {"$ref": "#/components/schemas/org_ssl_proxy_cert"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSslProxyCertExample"}}, "schema": {"$ref": "#/components/schemas/org_ssl_proxy_cert"}}}, "description": "Example response"}, "OrgStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_org"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_org"}}}, "description": "OK"}, "OrgSuppressedAlarms": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSuppressedAlarmsExample"}}, "schema": {"$ref": "#/components/schemas/response_org_suppress_alarm"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSuppressedAlarmsExample"}}, "schema": {"$ref": "#/components/schemas/response_org_suppress_alarm"}}}, "description": "OK"}, "OrgSystemEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSystemEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_org_system_events_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgSystemEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_org_system_events_search"}}}, "description": "OK"}, "OrgUiSettings": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgUiSettingsExample"}}, "schema": {"$ref": "#/components/schemas/org_ui_settings"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgUiSettingsExample"}}, "schema": {"$ref": "#/components/schemas/org_ui_settings"}}}, "description": "Example response"}, "OrgUiSettingsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgUiSettingsArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_ui_settings_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgUiSettingsArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_ui_settings_list"}}}, "description": "List of Org UI Setting"}, "Orggroup": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrggroupExample"}}, "schema": {"$ref": "#/components/schemas/orggroup"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrggroupExample"}}, "schema": {"$ref": "#/components/schemas/orggroup"}}}, "description": "OK"}, "OrggroupsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrggroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/orggroup_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrggroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/orggroup_list"}}}, "description": "OK"}, "OrgsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgsArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgsArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_list"}}}, "description": "OK"}, "OrgsArrayStats": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/stats_orgs"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/stats_orgs"}}}, "description": "OK"}, "OrgsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/OrgsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_org_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/OrgsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_org_search"}}}, "description": "OK"}, "OspfPeersStatsSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ospf_peer_stats_search_result"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/ospf_peer_stats_search_result"}}}, "description": "OK"}, "PastSpectrumAnalysis": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PastSpectrumAnalysis"}}, "schema": {"$ref": "#/components/schemas/response_past_spectrum_analysis"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PastSpectrumAnalysis"}}, "schema": {"$ref": "#/components/schemas/response_past_spectrum_analysis"}}}, "description": "OK"}, "PcapBucketConfig": {"content": {"application/json": {"examples": {"Failed": {"$ref": "#/components/examples/PcapBucketConfigFailed"}, "Success": {"$ref": "#/components/examples/PcapBucketConfigSuccess"}}, "schema": {"$ref": "#/components/schemas/response_pcap_bucket_config"}}, "application/vnd.api+json": {"examples": {"Failed": {"$ref": "#/components/examples/PcapBucketConfigFailed"}, "Success": {"$ref": "#/components/examples/PcapBucketConfigSuccess"}}, "schema": {"$ref": "#/components/schemas/response_pcap_bucket_config"}}}, "description": "OK"}, "PcapStart": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PcapStartExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_start"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PcapStartExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_start"}}}, "description": "OK"}, "PcapStatus": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PcapStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_status"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PcapStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_status"}}}, "description": "OK"}, "PcapsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PcapsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PcapsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_pcap_search"}}}, "description": "OK"}, "PmaDashboards": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PmaDashboardsExample"}}, "schema": {"$ref": "#/components/schemas/response_pma_dashboards"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PmaDashboardsExample"}}, "schema": {"$ref": "#/components/schemas/response_pma_dashboards"}}}, "description": "OK"}, "PortStatsSearch": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_port_stats_search"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_port_stats_search"}}}, "description": "Example response"}, "Portaltemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PortaltemplateExample"}}, "schema": {"$ref": "#/components/schemas/wlan_portal_template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PortaltemplateExample"}}, "schema": {"$ref": "#/components/schemas/wlan_portal_template"}}}, "description": "OK"}, "Psk": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/psk"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/psk"}}}, "description": "OK"}, "PskPortal": {"content": {"application/json": {"examples": {"PSK Portal": {"$ref": "#/components/examples/PskPortal"}}, "schema": {"$ref": "#/components/schemas/psk_portal"}}, "application/vnd.api+json": {"examples": {"PSK Portal": {"$ref": "#/components/examples/PskPortal"}}, "schema": {"$ref": "#/components/schemas/psk_portal"}}}, "description": "Example response"}, "PskPortalLogsSearch": {"content": {"application/json": {"examples": {"PSK Portal Logs": {"$ref": "#/components/examples/PskPortalLogsSearchPSKPortalLogs"}}, "schema": {"$ref": "#/components/schemas/response_psk_portal_logs_search"}}, "application/vnd.api+json": {"examples": {"PSK Portal Logs": {"$ref": "#/components/examples/PskPortalLogsSearchPSKPortalLogs"}}, "schema": {"$ref": "#/components/schemas/response_psk_portal_logs_search"}}}, "description": "Example response"}, "PskPortalsArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/psk_portal_list"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/psk_portal_list"}}}, "description": "Example response"}, "PsksArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/PsksArrayExample"}}, "schema": {"$ref": "#/components/schemas/psk_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/PsksArrayExample"}}, "schema": {"$ref": "#/components/schemas/psk_list"}}}, "description": "OK"}, "RadioMacs": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RadioMacsExample"}}, "schema": {"$ref": "#/components/schemas/ap_radio_macs"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RadioMacsExample"}}, "schema": {"$ref": "#/components/schemas/ap_radio_macs"}}}, "description": "OK"}, "ReauthWiredClient": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ReauthWiredClientExample"}}, "schema": {"$ref": "#/components/schemas/response_wired_coa"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ReauthWiredClientExample"}}, "schema": {"$ref": "#/components/schemas/response_wired_coa"}}}, "description": "Reauth Wired Client"}, "Recaptcha": {"content": {"application/json": {"examples": {"Google": {"$ref": "#/components/examples/RecaptchaGoogle"}, "Hcaptcha": {"$ref": "#/components/examples/RecaptchaHcaptcha"}}, "schema": {"$ref": "#/components/schemas/recaptcha"}}, "application/vnd.api+json": {"examples": {"Google": {"$ref": "#/components/examples/RecaptchaGoogle"}, "Hcaptcha": {"$ref": "#/components/examples/RecaptchaHcaptcha"}}, "schema": {"$ref": "#/components/schemas/recaptcha"}}}, "description": "Example response"}, "Rfdiag": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RfdiagExample"}}, "schema": {"$ref": "#/components/schemas/rf_diag_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RfdiagExample"}}, "schema": {"$ref": "#/components/schemas/rf_diag_info"}}}, "description": "OK"}, "RfdiagsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RfdiagsArrayExample"}}, "schema": {"$ref": "#/components/schemas/rf_diag_info_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RfdiagsArrayExample"}}, "schema": {"$ref": "#/components/schemas/rf_diag_info_list"}}}, "description": "OK"}, "Rftemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RftemplateExample"}}, "schema": {"$ref": "#/components/schemas/rf_template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RftemplateExample"}}, "schema": {"$ref": "#/components/schemas/rf_template"}}}, "description": "OK"}, "RftemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RftemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/rf_templates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RftemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/rf_templates"}}}, "description": "OK"}, "RogueDetails": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RogueDetailsExample"}}, "schema": {"$ref": "#/components/schemas/rogue_details"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RogueDetailsExample"}}, "schema": {"$ref": "#/components/schemas/rogue_details"}}}, "description": "OK"}, "RogueEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RogueEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_rogue_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RogueEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_rogue_search"}}}, "description": "OK"}, "RouterSsrRegisterCmd": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RouterSsrRegisterCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_router_ssr_register_cmd"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RouterSsrRegisterCmdExample"}}, "schema": {"$ref": "#/components/schemas/response_router_ssr_register_cmd"}}}, "description": "OK"}, "Rrm": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RrmExample"}}, "schema": {"$ref": "#/components/schemas/rrm"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RrmExample"}}, "schema": {"$ref": "#/components/schemas/rrm"}}}, "description": "OK"}, "RrmConsideration": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RrmConsiderationExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_consideration"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RrmConsiderationExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_consideration"}}}, "description": "OK"}, "RrmEvents": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RrmEventsExample"}}, "schema": {"$ref": "#/components/schemas/response_events_rrm"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RrmEventsExample"}}, "schema": {"$ref": "#/components/schemas/response_events_rrm"}}}, "description": "OK"}, "RrmNeighbors": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RrmNeighborsExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_neighbors"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RrmNeighborsExample"}}, "schema": {"$ref": "#/components/schemas/response_rrm_neighbors"}}}, "description": "OK"}, "RssiZoneStatsArray": {"content": {"application/json": {"examples": {"Example-1": {"$ref": "#/components/examples/RssiZoneStatsArrayExample1"}}, "schema": {"$ref": "#/components/schemas/stats_rssi_zones"}}, "application/vnd.api+json": {"examples": {"Example-1": {"$ref": "#/components/examples/RssiZoneStatsArrayExample1"}}, "schema": {"$ref": "#/components/schemas/stats_rssi_zones"}}}, "description": "Example response"}, "Rssizone": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RssizoneExample"}}, "schema": {"$ref": "#/components/schemas/rssi_zone"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RssizoneExample"}}, "schema": {"$ref": "#/components/schemas/rssi_zone"}}}, "description": "OK"}, "RssizonesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RssizonesArrayExample"}}, "schema": {"$ref": "#/components/schemas/rssi_zones"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RssizonesArrayExample"}}, "schema": {"$ref": "#/components/schemas/rssi_zones"}}}, "description": "OK"}, "RunningSpectrumAnalysis": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/RunningSpectrumAnalysis"}}, "schema": {"$ref": "#/components/schemas/response_running_spectrum_analysis"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/RunningSpectrumAnalysis"}}, "schema": {"$ref": "#/components/schemas/response_running_spectrum_analysis"}}}, "description": "OK"}, "SamlMetadata": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SamlMetadataExample"}}, "schema": {"$ref": "#/components/schemas/saml_metadata"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SamlMetadataExample"}}, "schema": {"$ref": "#/components/schemas/saml_metadata"}}}, "description": "OK"}, "Sdkinvite": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SdkinviteExample"}}, "schema": {"$ref": "#/components/schemas/sdkinvite"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SdkinviteExample"}}, "schema": {"$ref": "#/components/schemas/sdkinvite"}}}, "description": "OK"}, "SdkinvitesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SdkinvitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sdkinvite_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SdkinvitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sdkinvite_list"}}}, "description": "OK"}, "Sdktemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SdktemplateExample"}}, "schema": {"$ref": "#/components/schemas/sdktemplate"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SdktemplateExample"}}, "schema": {"$ref": "#/components/schemas/sdktemplate"}}}, "description": "OK"}, "SdktemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SdktemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sdktemplates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SdktemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sdktemplates"}}}, "description": "Example response"}, "Search": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SearchExample"}}, "schema": {"$ref": "#/components/schemas/response_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SearchExample"}}, "schema": {"$ref": "#/components/schemas/response_search"}}}, "description": "OK"}, "SearchVar": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SearchVarExample"}}, "schema": {"$ref": "#/components/schemas/response_search_var"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SearchVarExample"}}, "schema": {"$ref": "#/components/schemas/response_search_var"}}}, "description": "OK"}, "SecIntelProfile": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SecIntelProfileExample"}}, "schema": {"$ref": "#/components/schemas/secintel_profile"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SecIntelProfileExample"}}, "schema": {"$ref": "#/components/schemas/secintel_profile"}}}, "description": "Example response"}, "SecIntelProfilesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SecIntelProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/secintel_profiles"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SecIntelProfilesArrayExample"}}, "schema": {"$ref": "#/components/schemas/secintel_profiles"}}}, "description": "Example response"}, "SecpoliciesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SecpoliciesArrayExample"}}, "schema": {"$ref": "#/components/schemas/secpolicy_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SecpoliciesArrayExample"}}, "schema": {"$ref": "#/components/schemas/secpolicy_list"}}}, "description": "OK"}, "Secpolicy": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SecpolicyExample"}}, "schema": {"$ref": "#/components/schemas/secpolicy"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SecpolicyExample"}}, "schema": {"$ref": "#/components/schemas/secpolicy"}}}, "description": "OK"}, "SelfAuditLogs": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SelfAuditLogsExample"}}, "schema": {"$ref": "#/components/schemas/response_self_audit_logs"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SelfAuditLogsExample"}}, "schema": {"$ref": "#/components/schemas/response_self_audit_logs"}}}, "description": "OK"}, "SelfOauthLinkFailure": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthLinkFailureExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_link_failure"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthLinkFailureExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_link_failure"}}}, "description": "Authorization Error"}, "SelfOauthLinkSuccess": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthLinkSuccessExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_link_success"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthLinkSuccessExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_link_success"}}}, "description": "OK"}, "SelfOauthUrl": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthUrlExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_url"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SelfOauthUrlExample"}}, "schema": {"$ref": "#/components/schemas/response_self_oauth_url"}}}, "description": "OK"}, "SelfSubscriptions": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/response_self_subscriptions"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/response_self_subscriptions"}}}, "description": "OK"}, "SelfVerifyEmailFailed": {"content": {"application/json": {"examples": {"Invalid Or Expired Token": {"$ref": "#/components/examples/SelfVerifyEmailFailedInvalidOrExpiredToken"}, "New Email Address Already Exists": {"$ref": "#/components/examples/SelfVerifyEmailFailedNewEmailAddressAlreadyExists"}, "Request Comes From Authenticated Users Other Than Admin": {"$ref": "#/components/examples/SelfVerifyEmailFailedRequestComesFromAuthenticatedUsersOtherThanAdmin"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Invalid Or Expired Token": {"$ref": "#/components/examples/SelfVerifyEmailFailedInvalidOrExpiredToken"}, "New Email Address Already Exists": {"$ref": "#/components/examples/SelfVerifyEmailFailedNewEmailAddressAlreadyExists"}, "Request Comes From Authenticated Users Other Than Admin": {"$ref": "#/components/examples/SelfVerifyEmailFailedRequestComesFromAuthenticatedUsersOtherThanAdmin"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Bad Request"}, "SelfVerifyEmailSuccess": {"description": "With correct verification, the email address of the user will be updated"}, "Service": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ServiceExample"}}, "schema": {"$ref": "#/components/schemas/service"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ServiceExample"}}, "schema": {"$ref": "#/components/schemas/service"}}}, "description": "OK"}, "ServicePathEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ServicePathEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_path_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ServicePathEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_path_search"}}}, "description": "Example response"}, "ServicePoliciesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ServicePoliciesArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_service_policies"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ServicePoliciesArrayExample"}}, "schema": {"$ref": "#/components/schemas/org_service_policies"}}}, "description": "Example response"}, "ServicePolicy": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/org_service_policy"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/org_service_policy"}}}, "description": "Example response"}, "ServicesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ServicesArrayExample"}}, "schema": {"$ref": "#/components/schemas/services"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ServicesArrayExample"}}, "schema": {"$ref": "#/components/schemas/services"}}}, "description": "OK"}, "SetDevicesMap": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SetDevicesMapExample"}}, "schema": {"$ref": "#/components/schemas/response_set_devices_map"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SetDevicesMapExample"}}, "schema": {"$ref": "#/components/schemas/response_set_devices_map"}}}, "description": "OK"}, "Site": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteExample"}}, "schema": {"$ref": "#/components/schemas/site"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteExample"}}, "schema": {"$ref": "#/components/schemas/site"}}}, "description": "OK"}, "SiteApps": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteAppsExample"}}, "schema": {"$ref": "#/components/schemas/site_apps"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteAppsExample"}}, "schema": {"$ref": "#/components/schemas/site_apps"}}}, "description": "OK"}, "SiteDeviceUpgrade": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteDeviceUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_site_device_upgrade"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteDeviceUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_site_device_upgrade"}}}, "description": "OK"}, "SiteSettings": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSettingsExample"}}, "schema": {"$ref": "#/components/schemas/site_setting"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSettingsExample"}}, "schema": {"$ref": "#/components/schemas/site_setting"}}}, "description": "OK"}, "SiteSettingsDerived": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSettingsDerivedExample"}}, "schema": {"$ref": "#/components/schemas/site_setting_derived"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSettingsDerivedExample"}}, "schema": {"$ref": "#/components/schemas/site_setting_derived"}}}, "description": "OK"}, "SiteSleMetrics": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSleMetricsExample"}}, "schema": {"$ref": "#/components/schemas/site_sle_metrics"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteSleMetricsExample"}}, "schema": {"$ref": "#/components/schemas/site_sle_metrics"}}}, "description": "OK"}, "SiteTemplate": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteTemplateExample"}}, "schema": {"$ref": "#/components/schemas/site_template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteTemplateExample"}}, "schema": {"$ref": "#/components/schemas/site_template"}}}, "description": "Example response"}, "SiteTemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SiteTemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/site_templates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SiteTemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/site_templates"}}}, "description": "Example response"}, "Sitegroup": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SitegroupExample"}}, "schema": {"$ref": "#/components/schemas/sitegroup"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SitegroupExample"}}, "schema": {"$ref": "#/components/schemas/sitegroup"}}}, "description": "OK"}, "SitegroupsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SitegroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/sitegroups"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SitegroupsArrayExample"}}, "schema": {"$ref": "#/components/schemas/sitegroups"}}}, "description": "OK"}, "SitesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sites"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SitesArrayExample"}}, "schema": {"$ref": "#/components/schemas/sites"}}}, "description": "OK"}, "SitesArrayStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SitesArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_sites"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SitesArrayStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_sites"}}}, "description": "OK"}, "SitesSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SitesSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_site_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SitesSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_site_search"}}}, "description": "OK"}, "SkyAtpEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SkyAtpEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_sky_atp_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SkyAtpEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_events_sky_atp_search"}}}, "description": "OK"}, "SkyAtpList": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SkyAtpListExample"}}, "schema": {"$ref": "#/components/schemas/skyatp_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SkyAtpListExample"}}, "schema": {"$ref": "#/components/schemas/skyatp_list"}}}, "description": "OK"}, "SleClassifierSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleClassifierSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_classifier_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleClassifierSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_classifier_summary"}}}, "description": "Example response"}, "SleClassifierSummaryTrend": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleClassifierSummaryTrendExample"}}, "schema": {"$ref": "#/components/schemas/sle_classifier_summary_trend"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleClassifierSummaryTrendExample"}}, "schema": {"$ref": "#/components/schemas/sle_classifier_summary_trend"}}}, "description": "Example response"}, "SleHistogram": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleHistogramExample"}}, "schema": {"$ref": "#/components/schemas/sle_histogram"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleHistogramExample"}}, "schema": {"$ref": "#/components/schemas/sle_histogram"}}}, "description": "Example response"}, "SleImpactSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_impact_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_impact_summary"}}}, "description": "Example response"}, "SleImpactedApplications": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_applications"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedApplicationsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_applications"}}}, "description": "Example response"}, "SleImpactedAps": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedApsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_aps"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedApsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_aps"}}}, "description": "Example response"}, "SleImpactedChassis": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedChassisExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_chassis"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedChassisExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_chassis"}}}, "description": "Example response"}, "SleImpactedClients": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedClientsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_clients"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedClientsExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_clients"}}}, "description": "Example response"}, "SleImpactedGateways": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedGatewaysExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_gateways"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedGatewaysExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_gateways"}}}, "description": "Example response"}, "SleImpactedInterfaces": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedInterfacesExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_interfaces"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedInterfacesExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_interfaces"}}}, "description": "Example response"}, "SleImpactedSwitches": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedSwitchesExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_switches"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedSwitchesExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_switches"}}}, "description": "Example response"}, "SleImpactedUsers": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedUsersExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_users"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleImpactedUsersExample"}}, "schema": {"$ref": "#/components/schemas/sle_impacted_users"}}}, "description": "Example response"}, "SleSummary": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_summary"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleSummaryExample"}}, "schema": {"$ref": "#/components/schemas/sle_summary"}}}, "description": "Example response"}, "SleSummaryTrend": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleSummaryTrendExample"}}, "schema": {"$ref": "#/components/schemas/sle_summary_trend"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleSummaryTrendExample"}}, "schema": {"$ref": "#/components/schemas/sle_summary_trend"}}}, "description": "Example response"}, "SleThreshold": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SleThresholdExample"}}, "schema": {"$ref": "#/components/schemas/sle_threshold"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SleThresholdExample"}}, "schema": {"$ref": "#/components/schemas/sle_threshold"}}}, "description": "Example response"}, "Sso": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsoExample"}}, "schema": {"$ref": "#/components/schemas/sso"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsoExample"}}, "schema": {"$ref": "#/components/schemas/sso"}}}, "description": "OK"}, "SsoLatestFailures": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsoLatestFailuresExample"}}, "schema": {"$ref": "#/components/schemas/response_sso_failure_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsoLatestFailuresExample"}}, "schema": {"$ref": "#/components/schemas/response_sso_failure_search"}}}, "description": "OK"}, "SsoRoleMsp": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsoRoleMspExample"}}, "schema": {"$ref": "#/components/schemas/sso_role_msp"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsoRoleMspExample"}}, "schema": {"$ref": "#/components/schemas/sso_role_msp"}}}, "description": "OK"}, "SsoRoleOrg": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsoRoleOrgExample"}}, "schema": {"$ref": "#/components/schemas/sso_role_org"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsoRoleOrgExample"}}, "schema": {"$ref": "#/components/schemas/sso_role_org"}}}, "description": "OK"}, "SsoRolesMspArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/sso_roles_msp"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/sso_roles_msp"}}}, "description": "Example response"}, "SsoRolesOrgArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/sso_roles_org"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/sso_roles_org"}}}, "description": "Example response"}, "SsosArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsosArrayExample"}}, "schema": {"$ref": "#/components/schemas/ssos"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsosArrayExample"}}, "schema": {"$ref": "#/components/schemas/ssos"}}}, "description": "OK"}, "SsrExportIdTokens": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsrExportIdTokensExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_export_id_tokens"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsrExportIdTokensExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_export_id_tokens"}}}, "description": "Example response"}, "SsrUpgrade": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrade"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradeExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrade"}}}, "description": "Example response"}, "SsrUpgradeStatus": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradeStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrade_status"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradeStatusExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrade_status"}}}, "description": "OK"}, "SsrUpgradesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradesArrayExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrades"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsrUpgradesArrayExample"}}, "schema": {"$ref": "#/components/schemas/response_ssr_upgrades"}}}, "description": "Example response"}, "SsrVersions": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SsrVersionsExample"}}, "schema": {"$ref": "#/components/schemas/ssr_versions"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SsrVersionsExample"}}, "schema": {"$ref": "#/components/schemas/ssr_versions"}}}, "description": "OK"}, "StatsMarvisClientsCount": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/CountExample"}}, "schema": {"$ref": "#/components/schemas/response_count"}}}, "description": "Count result"}, "StatsMarvisClientsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/StatsMarvisClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/stats_marvis_clients_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/StatsMarvisClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/stats_marvis_clients_search"}}}, "description": "Paginated Marvis Client stats search results"}, "SwitchMetrics": {"content": {"application/json": {"examples": {"Site Scoped": {"$ref": "#/components/examples/SwitchMetricsSiteScoped"}, "Switch Scoped": {"$ref": "#/components/examples/SwitchMetricsSwitchScoped"}}, "schema": {"$ref": "#/components/schemas/response_switch_metrics"}}, "application/vnd.api+json": {"examples": {"Site Scoped": {"$ref": "#/components/examples/SwitchMetricsSiteScoped"}, "Switch Scoped": {"$ref": "#/components/examples/SwitchMetricsSwitchScoped"}}, "schema": {"$ref": "#/components/schemas/response_switch_metrics"}}}, "description": "OK"}, "SwitchPortsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SwitchPortsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_switch_port_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SwitchPortsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_switch_port_search"}}}, "description": "List of Switch Ports Stats"}, "SyntheticTest": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SyntheticTestExample"}}, "schema": {"$ref": "#/components/schemas/response_synthetictest"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SyntheticTestExample"}}, "schema": {"$ref": "#/components/schemas/response_synthetictest"}}}, "description": "Synthetic Test Started"}, "SynthetictestSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SynthetictestSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_synthetictest_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SynthetictestSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_synthetictest_search"}}}, "description": "Synthetic Test Search Result"}, "SynthetictestStatus": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/SynthetictestStatusExample"}}, "schema": {"$ref": "#/components/schemas/synthetictest_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/SynthetictestStatusExample"}}, "schema": {"$ref": "#/components/schemas/synthetictest_info"}}}, "description": "Synthetic Test Status"}, "Template": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TemplateExample"}}, "schema": {"$ref": "#/components/schemas/template"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TemplateExample"}}, "schema": {"$ref": "#/components/schemas/template"}}}, "description": "OK"}, "TemplatesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/templates"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TemplatesArrayExample"}}, "schema": {"$ref": "#/components/schemas/templates"}}}, "description": "OK"}, "TestCradlepoint": {"content": {"application/json": {"examples": {"Crowdstrike": {"$ref": "#/components/examples/TestCradlepointCrowdstrike"}}, "schema": {"$ref": "#/components/schemas/test_cradlepoint"}}, "application/vnd.api+json": {"examples": {"Crowdstrike": {"$ref": "#/components/examples/TestCradlepointCrowdstrike"}}, "schema": {"$ref": "#/components/schemas/test_cradlepoint"}}}, "description": "OK"}, "Ticket": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TicketExample"}}, "schema": {"$ref": "#/components/schemas/ticket"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TicketExample"}}, "schema": {"$ref": "#/components/schemas/ticket"}}}, "description": "OK"}, "TicketAttachment": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TicketAttachmentExample"}}, "schema": {"$ref": "#/components/schemas/ticket_attachment"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TicketAttachmentExample"}}, "schema": {"$ref": "#/components/schemas/ticket_attachment"}}}, "description": "OK"}, "TicketsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TicketsArrayExample"}}, "schema": {"$ref": "#/components/schemas/tickets"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TicketsArrayExample"}}, "schema": {"$ref": "#/components/schemas/tickets"}}}, "description": "OK"}, "Troubleshoot": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TroubleshootExample"}}, "schema": {"$ref": "#/components/schemas/response_troubleshoot"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TroubleshootExample"}}, "schema": {"$ref": "#/components/schemas/response_troubleshoot"}}}, "description": "Troubleshoot Response"}, "TunnelsSearch": {"content": {"application/json": {"examples": {"Type Wan": {"$ref": "#/components/examples/TunnelsSearchTypeWan"}, "Type Wxtunnel": {"$ref": "#/components/examples/TunnelsSearchTypeWxtunnel"}}, "schema": {"$ref": "#/components/schemas/response_tunnel_search"}}, "application/vnd.api+json": {"examples": {"Type Wan": {"$ref": "#/components/examples/TunnelsSearchTypeWan"}, "Type Wxtunnel": {"$ref": "#/components/examples/TunnelsSearchTypeWxtunnel"}}, "schema": {"$ref": "#/components/schemas/response_tunnel_search"}}}, "description": "OK"}, "TwoFactor": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/TwoFactorExample"}}, "schema": {"$ref": "#/components/schemas/response_two_factor_json"}}, "application/octet-stream": {"schema": {"$ref": "#/components/schemas/response_two_factor_octet"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/TwoFactorExample"}}, "schema": {"$ref": "#/components/schemas/response_two_factor_json"}}}, "description": "Two Factor configuration Token"}, "UiSettings": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UiSettingsExample"}}, "schema": {"$ref": "#/components/schemas/ui_settings"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UiSettingsExample"}}, "schema": {"$ref": "#/components/schemas/ui_settings"}}}, "description": "Example response"}, "UiSettingsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UiSettingsArrayExample"}}, "schema": {"$ref": "#/components/schemas/ui_settings_list"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UiSettingsArrayExample"}}, "schema": {"$ref": "#/components/schemas/ui_settings_list"}}}, "description": "List of Site UI Setting"}, "UpdateSelfFailed": {"content": {"application/json": {"examples": {"Invalid Email Address": {"$ref": "#/components/examples/UpdateSelfFailedInvalidEmailAddress"}, "New Email Address Already Exists": {"$ref": "#/components/examples/UpdateSelfFailedNewEmailAddressAlreadyExists"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Invalid Email Address": {"$ref": "#/components/examples/UpdateSelfFailedInvalidEmailAddress"}, "New Email Address Already Exists": {"$ref": "#/components/examples/UpdateSelfFailedNewEmailAddressAlreadyExists"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Invalid email address or new email address already exists"}, "UpgradeDevice": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeDeviceExample"}}, "schema": {"$ref": "#/components/schemas/response_device_upgrade"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeDeviceExample"}}, "schema": {"$ref": "#/components/schemas/response_device_upgrade"}}}, "description": "OK"}, "UpgradeId": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeIdExample"}}, "schema": {"$ref": "#/components/schemas/response_upgrade_id"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeIdExample"}}, "schema": {"$ref": "#/components/schemas/response_upgrade_id"}}}, "description": "OK"}, "UpgradeSiteDevicesList": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeSiteDevicesListExample"}}, "schema": {"$ref": "#/components/schemas/response_site_device_upgrades"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UpgradeSiteDevicesListExample"}}, "schema": {"$ref": "#/components/schemas/response_site_device_upgrades"}}}, "description": "Example response"}, "UserMac": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UserMacExample"}}, "schema": {"$ref": "#/components/schemas/user_mac"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UserMacExample"}}, "schema": {"$ref": "#/components/schemas/user_mac"}}}, "description": "OK"}, "UserMacImport": {"content": {"application/json": {"examples": {"Async": {"$ref": "#/components/examples/UserMacImportAsyncExample"}, "Sync": {"$ref": "#/components/examples/UserMacImportExample"}}, "schema": {"$ref": "#/components/schemas/user_mac_import"}}, "application/vnd.api+json": {"examples": {"Async": {"$ref": "#/components/examples/UserMacImportAsyncExample"}, "Sync": {"$ref": "#/components/examples/UserMacImportExample"}}, "schema": {"$ref": "#/components/schemas/user_mac_import"}}}, "description": "OK"}, "UserMacsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/UserMacsArrayExample"}}, "schema": {"$ref": "#/components/schemas/user_macs"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/UserMacsArrayExample"}}, "schema": {"$ref": "#/components/schemas/user_macs"}}}, "description": "OK"}, "UserMacsCount": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/user_macs_count"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/user_macs_count"}}}, "description": "OK"}, "UserMacsUpdate": {"content": {"application/json": {"examples": {"Async": {"$ref": "#/components/examples/UserMacsUpdateAsyncExample"}, "Sync": {"$ref": "#/components/examples/UserMacsUpdateExample"}}, "schema": {"$ref": "#/components/schemas/user_macs_update"}}, "application/vnd.api+json": {"examples": {"Async": {"$ref": "#/components/examples/UserMacsUpdateAsyncExample"}, "Sync": {"$ref": "#/components/examples/UserMacsUpdateExample"}}, "schema": {"$ref": "#/components/schemas/user_macs_update"}}}, "description": "OK"}, "VBeacon": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VBeaconExample"}}, "schema": {"$ref": "#/components/schemas/vbeacon"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VBeaconExample"}}, "schema": {"$ref": "#/components/schemas/vbeacon"}}}, "description": "OK"}, "VBeaconsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VBeaconsArrayExample"}}, "schema": {"$ref": "#/components/schemas/vbeacons"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VBeaconsArrayExample"}}, "schema": {"$ref": "#/components/schemas/vbeacons"}}}, "description": "OK"}, "VerifyRegisterTokenAlreadyRegistered": {"content": {"application/json": {"examples": {"Already Registered": {"$ref": "#/components/examples/VerifyRegisterTokenAlreadyRegisteredAlreadyRegistered"}, "Verification Expired": {"$ref": "#/components/examples/VerifyRegisterTokenAlreadyRegisteredVerificationExpired"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Already Registered": {"$ref": "#/components/examples/VerifyRegisterTokenAlreadyRegisteredAlreadyRegistered"}, "Verification Expired": {"$ref": "#/components/examples/VerifyRegisterTokenAlreadyRegisteredVerificationExpired"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Response if verification expired or already registered"}, "VerifyRegisterTokenInvalid": {"content": {"application/json": {"examples": {"Not Found": {"$ref": "#/components/examples/VerifyRegisterTokenInvalidNotFound"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}, "application/vnd.api+json": {"examples": {"Not Found": {"$ref": "#/components/examples/VerifyRegisterTokenInvalidNotFound"}}, "schema": {"$ref": "#/components/schemas/response_detail_string"}}}, "description": "Response if secret is invalid"}, "VerifyRegisterTokenSuccess": {"content": {"application/json": {"examples": {"Success": {"$ref": "#/components/examples/VerifyRegisterTokenSuccessSuccess"}, "success-but-failed-to-apply_the-invitation-automatically": {"$ref": "#/components/examples/VerifyRegisterTokenSuccesssuccessbutfailedtoapplytheinvitationautomatically"}}, "schema": {"$ref": "#/components/schemas/response_verify_token_success"}}, "application/vnd.api+json": {"examples": {"Success": {"$ref": "#/components/examples/VerifyRegisterTokenSuccessSuccess"}, "success-but-failed-to-apply_the-invitation-automatically": {"$ref": "#/components/examples/VerifyRegisterTokenSuccesssuccessbutfailedtoapplytheinvitationautomatically"}}, "schema": {"$ref": "#/components/schemas/response_verify_token_success"}}}, "description": "OK", "headers": {"Set-Cookie": {"schema": {"examples": ["csrftoken=vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx; expires=Tue, 15-Mar-2016 19:47:20 GMT; Max-Age=31449600; Path=/"], "type": "string"}}}}, "VirtualChassis": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VirtualChassisExample"}}, "schema": {"$ref": "#/components/schemas/response_virtual_chassis_config"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VirtualChassisExample"}}, "schema": {"$ref": "#/components/schemas/response_virtual_chassis_config"}}}, "description": "Example response"}, "Vpn": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VpnExample"}}, "schema": {"$ref": "#/components/schemas/vpn"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VpnExample"}}, "schema": {"$ref": "#/components/schemas/vpn"}}}, "description": "Example response"}, "VpnPeersStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VpnPeersStatsExample"}}, "schema": {"$ref": "#/components/schemas/vpn_peer_stat_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VpnPeersStatsExample"}}, "schema": {"$ref": "#/components/schemas/vpn_peer_stat_search"}}}, "description": "OK"}, "VpnsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/VpnsArrayExample"}}, "schema": {"$ref": "#/components/schemas/vpns"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/VpnsArrayExample"}}, "schema": {"$ref": "#/components/schemas/vpns"}}}, "description": "Example response"}, "WanClientEventsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WanClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_events_wan_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WanClientEventsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_events_wan_client"}}}, "description": "Example response"}, "WanClientsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WanClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wan_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WanClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wan_client"}}}, "description": "Example response"}, "Wan_Usages": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/search_wan_usage"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/search_wan_usage"}}}, "description": "OK"}, "Webhook": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WebhookExample"}}, "schema": {"$ref": "#/components/schemas/webhook"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WebhookExample"}}, "schema": {"$ref": "#/components/schemas/webhook"}}}, "description": "OK"}, "WebhookDeliverySearch": {"content": {"application/json": {"examples": {"Webhook Deliveries": {"$ref": "#/components/examples/WebhookDeliverySearchWebhookDeliveries"}}, "schema": {"$ref": "#/components/schemas/search_webhook_delivery"}}, "application/vnd.api+json": {"examples": {"Webhook Deliveries": {"$ref": "#/components/examples/WebhookDeliverySearchWebhookDeliveries"}}, "schema": {"$ref": "#/components/schemas/search_webhook_delivery"}}}, "description": "Example response"}, "WebhooksArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WebhooksArrayExample"}}, "schema": {"$ref": "#/components/schemas/webhooks"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WebhooksArrayExample"}}, "schema": {"$ref": "#/components/schemas/webhooks"}}}, "description": "OK"}, "WebsocketSession": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/websocket_session"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/websocket_session"}}}, "description": "OK"}, "WebsocketSessionWithUrl": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/websocket_session_with_url"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/websocket_session_with_url"}}}, "description": "OK"}, "WiredClientsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WiredClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wired_client"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WiredClientsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wired_client"}}}, "description": "OK"}, "WirelessClientSessionsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WirelessClientSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wireless_client_session"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WirelessClientSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/search_wireless_client_session"}}}, "description": "OK"}, "Wlan": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WlanExample"}}, "schema": {"$ref": "#/components/schemas/wlan"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WlanExample"}}, "schema": {"$ref": "#/components/schemas/wlan"}}}, "description": "OK"}, "WlansArray": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/wlans"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/wlans"}}}, "description": "OK"}, "WxTagsAppsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxTagsAppsArrayExample"}}, "schema": {"$ref": "#/components/schemas/search_wxtag_apps"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxTagsAppsArrayExample"}}, "schema": {"$ref": "#/components/schemas/search_wxtag_apps"}}}, "description": "List of Applications"}, "Wxrule": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_rule"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_rule"}}}, "description": "Wrule"}, "WxruleArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_rules"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_rules"}}}, "description": "List of WxRules"}, "WxruleStatsArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_wxrules"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxruleStatsArrayExample"}}, "schema": {"$ref": "#/components/schemas/stats_wxrules"}}}, "description": "WxRule Stats"}, "Wxtag": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxtagExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tag"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxtagExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tag"}}}, "description": "OK"}, "WxtagArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxtagArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tags"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxtagArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tags"}}}, "description": "OK"}, "WxtagClients": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/wxtag_clients"}}, "application/vnd.api+json": {"schema": {"$ref": "#/components/schemas/wxtag_clients"}}}, "description": "OK"}, "Wxtunnel": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxtunnelExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tunnel"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxtunnelExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tunnel"}}}, "description": "OK"}, "WxtunnelArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/WxtunnelArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tunnels"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/WxtunnelArrayExample"}}, "schema": {"$ref": "#/components/schemas/wxlan_tunnels"}}}, "description": "OK"}, "ZigbeeJoin": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZigbeeJoinExample"}}, "schema": {"$ref": "#/components/schemas/zigbee_join_response"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZigbeeJoinExample"}}, "schema": {"$ref": "#/components/schemas/zigbee_join_response"}}}, "description": "OK"}, "Zone": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneExample"}}, "schema": {"$ref": "#/components/schemas/zone"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneExample"}}, "schema": {"$ref": "#/components/schemas/zone"}}}, "description": "OK"}, "ZoneSessionsSearch": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_zone_search"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneSessionsSearchExample"}}, "schema": {"$ref": "#/components/schemas/response_zone_search"}}}, "description": "Result of Search Zone Sessions"}, "ZoneStats": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_zone_details"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZoneStatsExample"}}, "schema": {"$ref": "#/components/schemas/stats_zone_details"}}}, "description": "Zone Stats"}, "ZoneStatsArray": {"content": {"application/json": {"examples": {"Example-1": {"$ref": "#/components/examples/ZoneStatsArrayExample1"}, "without-map_id-query-param": {"$ref": "#/components/examples/ZoneStatsArraywithoutmapidqueryparam"}}, "schema": {"$ref": "#/components/schemas/stats_zones"}}, "application/vnd.api+json": {"examples": {"Example-1": {"$ref": "#/components/examples/ZoneStatsArrayExample1"}, "without-map_id-query-param": {"$ref": "#/components/examples/ZoneStatsArraywithoutmapidqueryparam"}}, "schema": {"$ref": "#/components/schemas/stats_zones"}}}, "description": "Example response"}, "ZonesArray": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZonesArrayExample"}}, "schema": {"$ref": "#/components/schemas/zones"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZonesArrayExample"}}, "schema": {"$ref": "#/components/schemas/zones"}}}, "description": "OK"}, "ZscalerAccount": {"content": {"application/json": {"examples": {"Example": {"$ref": "#/components/examples/ZscalerAccountExample"}}, "schema": {"$ref": "#/components/schemas/account_zscaler_info"}}, "application/vnd.api+json": {"examples": {"Example": {"$ref": "#/components/examples/ZscalerAccountExample"}}, "schema": {"$ref": "#/components/schemas/account_zscaler_info"}}}, "description": "Example response"}}, "schemas": {"aamw_profile": {"description": "Advanced Anti Malware profile that controls Sky ATP file verdict handling", "properties": {"categories": {"$ref": "#/components/schemas/aamw_profile_categories", "description": "File categories evaluated by this Advanced Anti Malware profile"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the Advanced Anti Malware profile was created"}, "fallback_action": {"$ref": "#/components/schemas/aamw_profile_action", "description": "Action to take when Sky ATP cannot obtain a malware verdict"}, "file_action": {"$ref": "#/components/schemas/aamw_profile_action", "description": "Action to take for files that meet or exceed the malware verdict threshold"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Advanced Anti Malware profile"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the Advanced Anti Malware profile was last modified"}, "name": {"description": "Display name of the Advanced Anti Malware profile", "examples": ["aamw-custom"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this Advanced Anti Malware profile"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this derived Advanced Anti Malware profile"}, "verdict_threshold": {"default": 8, "description": "Minimum Sky ATP verdict score that triggers the configured file action", "maximum": 10, "minimum": 1, "type": "integer"}}, "type": "object"}, "aamw_profile_action": {"default": "block", "description": "Action applied to files by an Advanced Anti Malware profile. enum: `block`, `permit`", "enum": ["block", "permit"], "type": "string"}, "aamw_profile_categories": {"description": "File category rules included in an Advanced Anti Malware profile", "items": {"$ref": "#/components/schemas/aamw_profile_category"}, "type": "array"}, "aamw_profile_category": {"additionalProperties": false, "description": "File category rule for Advanced Anti Malware inspection", "properties": {"category": {"$ref": "#/components/schemas/aamw_profile_category_category", "description": "File category covered by this Advanced Anti Malware profile"}, "hash_lookup_only": {"default": false, "description": "Whether files in this category use hash lookup without full file analysis", "type": "boolean"}}, "type": "object"}, "aamw_profile_category_category": {"description": "enum: `archive`, `document`, `pdf`, `executable`, `rich_application`, `library`, `os_package`, `mobile`, `java`, `configuration`, `script`", "enum": ["archive", "document", "pdf", "executable", "rich_application", "library", "os_package", "mobile", "java", "configuration", "script"], "type": "string"}, "aamw_profiles": {"description": "List of Advanced Anti Malware profiles", "items": {"$ref": "#/components/schemas/aamw_profile"}, "type": "array"}, "account_cradlepoint_config": {"description": "Cradlepoint account credentials and LLDP integration settings", "properties": {"cp_api_id": {"description": "Cradlepoint API ID used by Mist for the integration", "examples": ["84446d61-2206-4ea5-855a-0043f980be54"], "type": "string"}, "cp_api_key": {"description": "Cradlepoint API key paired with the Cradlepoint API ID", "examples": ["79c329da9893e34099c7d8ad5cb9c941"], "type": "string"}, "ecm_api_id": {"description": "Cradlepoint ECM API ID used by Mist for the integration", "examples": ["73446d61-2206-4ea5-855a-0043f980be62"], "type": "string"}, "ecm_api_key": {"description": "Cradlepoint ECM API key paired with the ECM API ID", "examples": ["68b329da9893e34099c7d8ad5cb9c9405"], "type": "string"}, "enable_lldp": {"description": "Whether Mist uses Cradlepoint LLDP data to link routers to Mist sites and devices", "type": "boolean"}}, "type": "object"}, "account_crowdstrike_config": {"additionalProperties": false, "description": "OAuth linked CrowdStrike apps account details", "properties": {"client_id": {"description": "Customer account api client ID", "type": "string"}, "client_secret": {"description": "Customer account api client Secret", "type": "string"}, "customer_id": {"description": "Customer id of an admin", "type": "string"}}, "required": ["customer_id", "client_id", "client_secret"], "type": "object"}, "account_jamf_config": {"additionalProperties": false, "description": "OAuth linked Jamf apps account details", "properties": {"client_id": {"description": "Customer account api client id. Required if `app_name`==`crowdstrike`", "type": "string"}, "client_secret": {"description": "Customer account api client secret", "type": "string"}, "instance_url": {"description": "Customer account Jamf instance URL", "examples": ["junipertest.jamfcloud.com"], "type": "string"}, "smartgroup_name": {"description": "Smart group membership for determining compliance status", "examples": ["CompliantGroup1"], "type": "string"}}, "required": ["instance_url", "client_id", "client_secret", "smartgroup_name"], "type": "object"}, "account_jse_config": {"description": "Juniper Security Exchange account credentials used for integration", "properties": {"cloud_name": {"description": "JSE cloud hostname used for the integration", "examples": ["devcentral.juniperclouds.net"], "type": "string"}, "password": {"description": "Credential password for the JSE integration user", "examples": ["foryoureyesonly"], "format": "password", "type": "string"}, "username": {"description": "JSE integration username with access to service location, site, and IPsec profile APIs", "examples": ["john@abc.com"], "type": "string"}}, "required": ["username", "password"], "type": "object"}, "account_jse_info": {"additionalProperties": false, "description": "Linked Juniper Security Exchange account information", "properties": {"cloud_name": {"description": "JSE cloud hostname configured for the integration", "examples": ["devcentral.juniperclouds.net"], "type": "string"}, "org_names": {"$ref": "#/components/schemas/strings", "description": "JSE organization names associated with the linked account"}, "username": {"description": "JSE integration username configured for the linked account", "examples": ["john@abc.com"], "type": "string"}}, "type": "object"}, "account_juniper_config": {"description": "Juniper account credentials used to link the integration", "properties": {"password": {"description": "Authentication password for the Juniper account", "examples": ["password"], "format": "password", "type": "string"}, "username": {"description": "Customer account user name", "examples": ["john@nmo.com"], "type": "string"}}, "required": ["username", "password"], "type": "object"}, "account_juniper_info": {"description": "Linked Juniper account information returned by the integration", "properties": {"accounts": {"$ref": "#/components/schemas/juniper_accounts", "description": "List of linked Juniper account records"}}, "type": "object"}, "account_mobicontrol_config": {"additionalProperties": false, "description": "MobiControl account credentials used for OAuth application linking", "properties": {"client_id": {"description": "Customer account Client ID", "type": "string"}, "client_secret": {"description": "Customer account Client Secret", "type": "string"}, "instance_url": {"description": "Customer account MobiControl instance URL", "type": "string"}, "password": {"description": "Customer account password instance URL", "format": "password", "type": "string"}, "username": {"description": "Login username used to authenticate to the MobiControl account", "type": "string"}}, "required": ["instance_url", "client_secret", "client_id", "username", "password"], "type": "object"}, "account_oauth_add": {"description": "Account configuration payload for adding a supported OAuth-linked application", "oneOf": [{"$ref": "#/components/schemas/account_jamf_config"}, {"$ref": "#/components/schemas/account_vmware_config"}, {"$ref": "#/components/schemas/account_mobicontrol_config"}, {"$ref": "#/components/schemas/account_zdx_config"}, {"$ref": "#/components/schemas/account_crowdstrike_config"}, {"$ref": "#/components/schemas/account_prisma_config"}, {"$ref": "#/components/schemas/account_sentinelone_config"}]}, "account_oauth_config": {"description": "OAuth linked apps (zoom/teams/intune) account details", "properties": {"account_id": {"description": "Linked app(zoom/teams/intune) account id", "examples": ["iojzXIJWEuiD73ZvydOfg"], "type": "string"}, "discard_guest_info": {"description": "Optional, for Zoom/Teams. Whether to redact identifying information for call participants that are not part of the Zoom/Teams account identified by `account_id`", "type": "boolean"}, "max_daily_api_requests": {"description": "Zoom daily api request quota, https://developers.zoom.us/docs/api/rest/rate-limits/", "examples": [5000], "type": "integer"}}, "required": ["account_id"], "type": "object"}, "account_oauth_info": {"additionalProperties": false, "description": "OAuth-linked application account status and authorization details", "properties": {"accounts": {"$ref": "#/components/schemas/account_oauth_info_accounts", "description": "Linked third-party application accounts for this OAuth application"}, "authorization_url": {"description": "OAuth authorization URL to open when linking an account", "readOnly": true, "type": "string"}, "linked": {"description": "Whether at least one account is linked for this OAuth application", "readOnly": true, "type": "boolean"}}, "required": ["linked", "accounts"], "type": "object"}, "account_oauth_info_account": {"additionalProperties": false, "description": "OAuth linked apps account info", "properties": {"account_id": {"description": "Linked app account id", "examples": ["iojzXIJWEuiD73ZvydOfg"], "readOnly": true, "type": "string"}, "auto_probe_subnet": {"description": "For Prisma accounts only, tunnel auto probe subnet", "examples": ["11.0.0.0/8"], "readOnly": true, "type": "string"}, "client_id": {"description": "Customer account Client ID", "readOnly": true, "type": "string"}, "cloud_name": {"description": "Name of the company whose account mist has subscribed to", "examples": ["Tapi.sase.paloaltonetworks.com"], "readOnly": true, "type": "string"}, "company": {"description": "Name of the company whose account mist has subscribed to", "examples": ["Test Company1 Ltd"], "readOnly": true, "type": "string"}, "enable_probe": {"description": "For Prisma accounts only, tunnel probe enable/disable", "examples": [false], "readOnly": true, "type": "boolean"}, "error": {"description": "This error is provided when the account fails to fetch token/data", "examples": ["OAuth token refresh failed, please re-link your account"], "readOnly": true, "type": "string"}, "errors": {"$ref": "#/components/schemas/oauth_account_errors", "description": "Problems reported during OAuth token refresh or account data sync"}, "instance_url": {"description": "Customer account instance URL", "readOnly": true, "type": "string"}, "key_id": {"description": "For ZDX Account only, Customer account API key ID", "examples": ["L72frZcK3JvrZc"], "type": "string"}, "last_status": {"description": "Is the last data pull for account is successful or not", "examples": ["failed"], "readOnly": true, "type": "string"}, "last_sync": {"description": "Last data pull timestamp, background jobs that pull account data", "examples": [1665465339000], "readOnly": true, "type": "integer"}, "linked_by": {"description": "First name of the user who linked the account", "examples": ["Testname1"], "readOnly": true, "type": "string"}, "linked_timestamp": {"description": "Timestamp when this third-party account was linked", "examples": [1665465339000], "readOnly": true, "type": "number"}, "max_daily_api_requests": {"description": "Zoom daily api request quota, https://developers.zoom.us/docs/api/rest/rate-limits/", "examples": [5000], "readOnly": true, "type": "integer"}, "name": {"description": "Display name of the linked third-party account or company", "examples": ["Test Compay1 Ltd"], "readOnly": true, "type": "string"}, "password": {"description": "Customer account password instance URL", "format": "password", "readOnly": true, "type": "string"}, "region": {"description": "For Prisma accounts only", "examples": ["americas"], "readOnly": true, "type": "string"}, "regions": {"$ref": "#/components/schemas/account_oauth_info_account_regions", "description": "Prisma Access regions with allocated bandwidth for this linked account"}, "service_account_name": {"description": "For Prisma accounts only", "examples": ["Corp SA"], "readOnly": true, "type": "string"}, "service_connections": {"$ref": "#/components/schemas/account_oauth_info_account_service_connections", "description": "Prisma Access service connections configured for this linked account"}, "smartgroup_name": {"description": "Smart group membership for determining compliance status", "examples": ["CompliantGroup1"], "readOnly": true, "type": "string"}, "tsg_id": {"description": "For Prisma accounts only, Prisma Tenant Service Group id", "examples": ["189953456"], "readOnly": true, "type": "string"}, "username": {"description": "Login name configured for the linked third-party account", "readOnly": true, "type": "string"}, "webhook_auth_type": {"description": "For Crowdstrike, JAMF, SentinelOne and VMWare accounts only", "examples": ["Basic", "Bearer"], "type": "string"}, "webhook_enabled": {"description": "For Crowdstrike, JAMF, SentinelOne and VMWare accounts only", "type": "boolean"}, "webhook_password": {"description": "For VMWare accounts only", "examples": ["password_1234"], "format": "password", "type": "string"}, "webhook_secret": {"description": "For Crowdstrike accounts only", "examples": ["secret-value"], "format": "password", "type": "string"}, "webhook_token": {"description": "For JAMF and SentinelOne accounts only", "examples": ["token-value"], "type": "string"}, "webhook_url": {"description": "For Crowdstrike, JAMF, SentinelOne and VMWare accounts only", "examples": ["https://websync.nac-staging.mistsys.com/v1/S_org-8dcbe9005/ae9dee49-69e7-4710-a114-5b827a777738/crowdstrike/edr", "https://websync.nac-staging.mistsys.com/v1/S_org-8dcbe9005/ae9dee49-69e7-4710-a114-5b827a777738/jamf/mdm", "https://websync.nac-staging.mistsys.com/v1/S_org-8dcbe9005/00fd8b39-cf92-4b43-a2ff-a461b48e7059/sentinelone/edr", "https://websync.nac-staging.mistsys.com/v1/S_41b2525af1d8dcbe9005/f43ea4c48f22/vmware/mdm"], "type": "string"}, "webhook_username": {"description": "For VMWare accounts only", "examples": ["username_1234"], "type": "string"}, "zdx_org_id": {"description": "For ZDX Account only, ZDX organization id", "examples": ["123456"], "type": "string"}}, "type": "object"}, "account_oauth_info_account_region": {"additionalProperties": false, "description": "Prisma Access region bandwidth allocation for a linked OAuth account", "properties": {"aggregate_region": {"description": "Bandwidth Aggregate region for this region", "examples": ["us-southwest"], "type": "string"}, "allocated_bandwidth": {"description": "Allocated bandwidth for the region, in Mbps", "examples": [1000], "readOnly": true, "type": "integer"}, "name": {"description": "Display name for this region", "examples": ["US West"], "type": "string"}}, "type": "object"}, "account_oauth_info_account_regions": {"additionalProperties": {"$ref": "#/components/schemas/account_oauth_info_account_region"}, "description": "For Prisma accounts only, property key is the region name. Regions with allocated bandwidth", "type": "object"}, "account_oauth_info_account_service_connection": {"additionalProperties": false, "description": "Prisma Access service connection region for a linked OAuth account", "properties": {"region": {"description": "Prisma Access region where this service connection is provisioned", "examples": ["us-southwest"], "type": "string"}}, "type": "object"}, "account_oauth_info_account_service_connections": {"additionalProperties": {"$ref": "#/components/schemas/account_oauth_info_account_service_connection"}, "description": "For Prisma accounts only, property key is the service connection name"}, "account_oauth_info_accounts": {"description": "List of linked account details", "items": {"$ref": "#/components/schemas/account_oauth_info_account"}, "type": "array"}, "account_prisma_config": {"additionalProperties": false, "description": "OAuth linked CrowdStrike apps account details", "properties": {"auto_probe_subnet": {"description": "Required If `enable_probe`==`true`. This field will accept an IPv4 cidr and an IP address will be picked from this range to be used as tunnel probe source IP address and as well as BGP neighbour IP address. The subnet should be big enough for num_devices * num_tunnel * 2", "examples": ["11.0.0.0/8"], "type": "string"}, "client_id": {"description": "Customer account api client ID", "type": "string"}, "client_secret": {"description": "Customer account api client Secret", "type": "string"}, "enable_probe": {"default": false, "description": "To enable/disable tunnel probe", "type": "boolean"}, "tsg_id": {"description": "Prisma Tenant Service Group id", "type": "string"}}, "required": ["tsg_id", "client_id", "client_secret"], "type": "object"}, "account_sentinelone_config": {"additionalProperties": false, "description": "OAuth linked CrowdStrike apps account details", "properties": {"api_token": {"description": "Access token used to authenticate to the SentinelOne account", "type": "string"}, "instance_url": {"description": "Customer account SentinelOne instance URL", "type": "string"}}, "required": ["instance_url", "api_token"], "type": "object"}, "account_skyatp_cloud_name": {"description": "Sky ATP cloud name. enum: `www.amerskyatp.com`, `www.apacskyatp.com`, `www.euroskyatp.com`, `www.canadaskyatp.com`", "enum": ["www.amerskyatp.com", "www.apacskyatp.com", "www.euroskyatp.com", "www.canadaskyatp.com"], "examples": ["www.amerskyatp.com"], "type": "string"}, "account_skyatp_config": {"description": "Sky ATP account credentials and realm settings used for integration", "properties": {"cloud_name": {"$ref": "#/components/schemas/account_skyatp_cloud_name", "description": "Sky ATP cloud endpoint used for the integration"}, "password": {"description": "Credential password for the Sky ATP realm user", "examples": ["foryoureyesonly"], "format": "password", "type": "string"}, "realm": {"description": "Sky ATP realm to create or link with this Mist organization", "examples": ["mist-team"], "type": "string"}, "username": {"description": "Sky ATP username used to create or access the realm", "examples": ["john@abc.com"], "type": "string"}}, "required": ["realm", "username", "password"], "type": "object"}, "account_skyatp_data": {"description": "Sky ATP SecIntel feed data and generated list URLs", "properties": {"secintel": {"$ref": "#/components/schemas/account_skyatp_data_secintel", "description": "Juniper SecIntel threat feed configuration provided by Sky ATP"}, "secintel_allowlist_url": {"description": "URL for the Sky ATP SecIntel allowlist", "examples": ["https://papi.s3.amazonaws.com/secintel_allowlist/xxx..."], "readOnly": true, "type": "string"}, "secintel_blocklist_url": {"description": "URL for the Sky ATP SecIntel blocklist", "examples": ["https://papi.s3.amazonaws.com/secintel_blocklist/xxx..."], "readOnly": true, "type": "string"}}, "type": "object"}, "account_skyatp_data_secintel": {"additionalProperties": false, "description": "juniper secintel_feeds are enabled depending on your license tier: infected_host, geo_ip, attacker_ip, command_and_control.\nthird party:\n * ip-based: block_list, threatfox_ip, feodo_tracker, dshield, tor\n * url-based: threatfox_url, urlhaus, open_phish\n * domain-based: threatfox_domains", "properties": {"third_party_threat_feeds": {"$ref": "#/components/schemas/strings", "description": "Third-party threat feed names enabled for SecIntel"}}, "type": "object"}, "account_skyatp_info": {"additionalProperties": false, "description": "Linked Sky ATP account and realm information", "properties": {"cloud_name": {"$ref": "#/components/schemas/account_skyatp_cloud_name", "description": "Sky ATP cloud endpoint configured for the integration"}, "realm": {"description": "Sky ATP realm linked with this Mist organization", "examples": ["mist-team"], "type": "string"}, "username": {"description": "Sky ATP username configured for the linked realm", "examples": ["john@abc.com"], "type": "string"}}, "type": "object"}, "account_vmware_config": {"additionalProperties": false, "description": "VMware account credentials and webhook settings for OAuth application linking", "properties": {"client_id": {"description": "Customer account Client ID", "type": "string"}, "client_secret": {"description": "Customer account Client Secret", "type": "string"}, "instance_url": {"description": "Customer account VMware instance URL", "type": "string"}, "webhook_enabled": {"description": "Enables or disables the webhook integration", "type": "boolean"}}, "required": ["instance_url", "client_secret", "client_id", "webhook_enabled"], "type": "object"}, "account_zdx_config": {"additionalProperties": false, "description": "OAuth linked ZDX apps account details", "properties": {"cloud_name": {"default": "zdxcloud.net", "description": "ZDX cloud name. Refer https://help.zscaler.com/zdx/getting-started-zdx-api for ZDX cloud name", "type": "string"}, "key_id": {"description": "Customer account API key ID", "examples": ["K35vrZcK3JvrZc"], "type": "string"}, "key_secret": {"description": "Customer account API key Secret", "examples": ["K35vrZcK3JvrZcjjswpp2eii1oo100"], "type": "string"}, "zdx_org_id": {"description": "Organization identifier assigned to the ZDX account", "examples": ["123456"], "type": "string"}}, "required": ["key_id", "key_secret", "zdx_org_id"], "type": "object"}, "account_zscaler_config": {"description": "OAuth linked Zscaler apps account details", "properties": {"cloud_name": {"description": "Zscaler Internet Access cloud name used for the integration", "examples": ["zscalerbeta.net"], "type": "string"}, "partner_key": {"description": "Zscaler partner key generated for the Mist integration", "examples": ["K35vrZcK3JvrZc"], "type": "string"}, "password": {"description": "Credential password for the Zscaler partner administrator", "examples": ["password"], "format": "password", "type": "string"}, "username": {"description": "Zscaler partner administrator username used by Mist", "examples": ["john@nmo.com"], "type": "string"}}, "required": ["partner_key", "username", "password", "cloud_name"], "type": "object"}, "account_zscaler_info": {"additionalProperties": false, "description": "OAuth linked Zscaler apps account details", "properties": {"cloud_name": {"description": "Zscaler Internet Access cloud name configured for the integration", "examples": ["zscalerbeta.net"], "type": "string"}, "partner_key": {"description": "Zscaler partner key configured for the Mist integration", "examples": ["K35vrZcK3JvrZc"], "type": "string"}, "username": {"description": "Zscaler partner administrator username configured for Mist", "examples": ["john@nmo.com"], "type": "string"}}, "type": "object"}, "acl_policies": {"description": "List of ACL policy definitions", "items": {"$ref": "#/components/schemas/acl_policy"}, "type": "array"}, "acl_policy": {"additionalProperties": false, "description": "ACL Policy:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - 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": {"$ref": "#/components/schemas/acl_policy_actions", "description": "Destination tag actions evaluated for sources matching this ACL policy"}, "name": {"description": "Display name of the ACL policy", "examples": ["guest access"], "type": "string"}, "src_tags": {"$ref": "#/components/schemas/acl_policy_src_tags", "description": "Source ACL tags that select traffic for this ACL policy"}}, "type": "object"}, "acl_policy_action": {"additionalProperties": false, "description": "Action applied to traffic that matches a destination ACL tag", "properties": {"action": {"$ref": "#/components/schemas/allow_deny", "description": "Allow or deny decision applied to traffic matching the destination tag"}, "dst_tag": {"description": "Destination ACL tag matched by this policy action", "examples": ["corp"], "type": "string"}}, "required": ["dst_tag"], "type": "object"}, "acl_policy_actions": {"description": "ACL Policy Actions:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to", "items": {"$ref": "#/components/schemas/acl_policy_action"}, "type": "array"}, "acl_policy_src_tags": {"description": "ACL Policy Source Tags:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to", "items": {"examples": ["macs"], "type": "string"}, "type": "array"}, "acl_tag": {"additionalProperties": false, "description": "Resource tags (`type`==`resource` or `type`==`gbp_resource`) can only be used in `dst_tags`", "properties": {"ether_types": {"$ref": "#/components/schemas/acl_tag_ether_types", "description": "Layer 2 EtherTypes matched by this ACL tag; defaults to `any`"}, "gbp_tag": {"description": "Required if\n - `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n - `type`==`gbp_resource`\n - `type`==`static_gbp` (applying gbp tag against matching conditions)", "type": "integer"}, "macs": {"$ref": "#/components/schemas/acl_tag_macs", "description": "Client or resource MAC addresses matched by this ACL tag"}, "network": {"description": "If:\n * `type`==`mac` (optional. default is `any`)\n * `type`==`subnet` (optional. default is `any`)\n * `type`==`network`\n * `type`==`resource` (optional. default is `any`)\n * `type`==`static_gbp` if from matching network (vlan)", "type": "string"}, "port_usage": {"description": "Required if `type`==`port_usage`. Switch port usage name matched by this ACL tag", "type": "string"}, "radius_group": {"description": "Required if:\n * `type`==`radius_group`\n * `type`==`static_gbp`\nif from matching radius_group", "type": "string"}, "specs": {"$ref": "#/components/schemas/acl_tag_specs", "description": "Layer 4 protocol and destination-port constraints for this ACL tag"}, "subnets": {"$ref": "#/components/schemas/acl_tag_subnets", "description": "IP subnets matched by this ACL tag"}, "type": {"$ref": "#/components/schemas/acl_tag_type", "description": "Classifier type that determines which ACL tag fields are evaluated"}}, "required": ["type"], "type": "object"}, "acl_tag_ether_types": {"default": ["any"], "description": "ARP / IPv6. Default is `any`", "items": {"type": "string"}, "type": "array"}, "acl_tag_macs": {"description": "Required if \n- `type`==`mac`\n- `type`==`static_gbp` if from matching mac", "items": {"type": "string"}, "type": "array"}, "acl_tag_spec": {"additionalProperties": false, "description": "Layer 4 protocol and destination-port match constraint for an ACL tag", "properties": {"port_range": {"default": "0", "description": "Matched dst port, \"0\" means any", "type": "string"}, "protocol": {"default": "any", "description": "`tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254", "type": "string"}}, "type": "object"}, "acl_tag_specs": {"description": "If `type`==`resource`, `type`==`radius_group`, `type`==`port_usage` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any", "items": {"$ref": "#/components/schemas/acl_tag_spec"}, "type": "array"}, "acl_tag_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"}, "acl_tag_type": {"description": "enum: \n * `any`: matching anything not identified\n * `dynamic_gbp`: from the gbp_tag received from RADIUS\n * `gbp_resource`: can only be used in `dst_tags`\n * `mac`\n * `network`\n * `port_usage`\n * `radius_group`\n * `resource`: can only be used in `dst_tags`\n * `static_gbp`: applying gbp tag against matching conditions\n * `subnet`'", "enum": ["any", "dynamic_gbp", "gbp_resource", "mac", "network", "port_usage", "radius_group", "resource", "static_gbp", "subnet"], "type": "string"}, "acl_tags": {"additionalProperties": {"$ref": "#/components/schemas/acl_tag"}, "description": "ACL Tags to identify traffic source or destination. Key name is the tag name", "type": "object"}, "additional_config_cmds": {"description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done", "items": {"description": "JUNOS \"set\" command to add to the generated configuration", "examples": ["set snmp community public"], "type": "string"}, "type": "array"}, "additional_vlan_ids": {"anyOf": [{"type": "string"}, {"$ref": "#/components/schemas/additional_vlan_ids_array"}], "description": "List or Comma separated list of additional VLAN IDs (on the LAN side or from other WLANs) should we be forwarding bonjour queries/responses"}, "additional_vlan_ids_array": {"description": "Additional VLAN IDs represented as an array", "items": {"$ref": "#/components/schemas/vlan_id_with_variable"}, "type": "array"}, "admin": {"description": "Mist administrator account or organization API token details", "properties": {"admin_id": {"$ref": "#/components/schemas/admin_id", "description": "Unique identifier of the administrator"}, "compliance_status": {"$ref": "#/components/schemas/admin_compliance_status", "description": "Trade compliance status for this administrator"}, "email": {"description": "If admin account is not an Org API Token", "examples": ["jsnow@abc.com"], "format": "email", "type": "string"}, "enable_two_factor": {"description": "If admin account is not an Org API Token", "readOnly": true, "type": "boolean"}, "expire_time": {"description": "Expiration time for the admin invitation, in epoch seconds", "type": "integer"}, "first_name": {"description": "If admin account is not an Org API Token. For an invite, this is the original first name used", "examples": ["John"], "type": "string"}, "hours": {"default": 24, "description": "If admin account is not an Org API Token, how long the invite should be valid", "maximum": 168, "minimum": 1, "type": "integer"}, "last_name": {"description": "If admin account is not an Org API Token. For an invite, this is the original last name used", "examples": ["Sno"], "type": "string"}, "name": {"description": "For Org API Token Only", "type": "string"}, "no_tracking": {"default": null, "description": "Optional, whether to store privacy-consent information. When it doesn\u2019t exist, it\u2019s assumed true on EU (i.e. no tracking, the user has to opt-in); otherwise, the user would have to opt-out", "type": ["boolean", "null"]}, "oauth_google": {"description": "If admin account is not an Org API Token", "readOnly": true, "type": "boolean"}, "password_modified_time": {"description": "Password last modified time, in epoch", "format": "double", "type": "number"}, "phone": {"description": "If admin account is not an Org API Token. Phone number (numbers only, including country code)", "type": "string"}, "phone2": {"description": "If admin account is not an Org API Token. Secondary phone number (numbers only, including country code)", "type": "string"}, "privileges": {"$ref": "#/components/schemas/admin_privileges", "description": "Privilege assignments that define the admin's MSP, organization, site, or site group access"}, "session_expiry": {"description": "Session lifetime for the admin, in minutes", "examples": [1440], "format": "int64", "maximum": 20160, "minimum": 10, "readOnly": true, "type": "integer"}, "tags": {"$ref": "#/components/schemas/admin_tags", "description": "Read-only tags associated with the admin account"}, "two_factor_verified": {"description": "If admin account is not an Org API Token. Two factor status", "readOnly": true, "type": "boolean"}, "via_sso": {"description": "If admin account is not an Org API Token, an admin login via_sso is more restircted. (password and email cannot be changed)", "readOnly": true, "type": "boolean"}}, "type": "object"}, "admin_compliance_status": {"description": "trade compliance status. enum: `blocked`, `restricted`", "enum": ["blocked", "restricted"], "type": "string"}, "admin_id": {"description": "ID of the administrator", "examples": ["456b7016-a916-a4b1-78dd-72b947c152b7"], "format": "uuid", "readOnly": true, "type": "string"}, "admin_invite": {"description": "Administrator invitation and initial registration payload", "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": "Registration city for the admin user", "examples": ["Cupertino"], "type": "string"}, "country": {"description": "Registration country or region for the admin user, as a name or ISO code", "examples": ["United States"], "type": "string"}, "email": {"description": "Registration email address for the admin user", "examples": ["test@mistsys.com"], "maxLength": 64, "type": "string"}, "first_name": {"description": "Given name for the registering admin user", "examples": ["John"], "type": "string"}, "invite_code": {"description": "Invite code used to authorize new admin registration", "examples": ["MISTROCKS"], "type": "string"}, "last_name": {"description": "Family name for the registering admin user", "examples": ["Smith"], "type": "string"}, "org_name": {"description": "Organization name supplied during initial admin registration", "examples": ["Smith LLC"], "type": "string"}, "password": {"description": "Credential password for the registering admin account", "examples": ["foryoureyesonly"], "format": "password", "type": "string"}, "recaptcha": {"description": "CAPTCHA verification token submitted during admin registration", "type": "string"}, "recaptcha_flavor": {"$ref": "#/components/schemas/recaptcha_flavor", "description": "CAPTCHA provider flavor used for registration verification"}, "referer_invite_token": {"description": "Invite token to apply after account creation", "examples": ["Dm2gtT8dwMeM4Bc2E8FLIaA96VHOjPat"], "type": "string"}, "return_to": {"description": "URL the user should be redirected back to", "examples": ["https://mist.zendesk.com/hc/quickstart.pdf"], "type": "string"}, "state": {"description": "Registration state or province for the admin user, optional depending on country or region", "examples": ["CA"], "type": "string"}, "street_address": {"description": "Street address of registering user", "examples": ["1601 S De Anza Blvd Ste 248"], "type": "string"}, "street_address 2": {"description": "Street address 2 of registering user", "examples": ["1601 S De Anza Blvd Ste 248"], "type": "string"}, "zipcode": {"description": "Postal code for the registering admin user", "examples": ["95014"], "type": "string"}}, "required": ["email", "first_name", "last_name", "org_name", "password", "recaptcha"], "type": "object"}, "admin_privilege": {"additionalProperties": false, "description": "Admin privilege scope, role, and UI access settings", "properties": {"msp_id": {"$ref": "#/components/schemas/admin_privilege_msp_id", "description": "Required if `scope`==`msp`. MSP granted by this privilege"}, "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)", "readOnly": true, "type": ["string", "null"]}, "msp_url": {"description": "Custom url of the MSP (if the MSP belongs to an Advanced tier)", "readOnly": true, "type": "string"}, "name": {"description": "Display name of the object for this privilege scope", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/admin_privilege_org_id", "description": "Required if `scope`==`org`. Organization granted by this privilege"}, "org_name": {"description": "Name of the org (for a site belonging to org)", "readOnly": true, "type": "string"}, "orggroup_ids": {"$ref": "#/components/schemas/admin_privilege_orggroup_ids", "description": "If `scope`==`orggroup`. Organization groups granted by this privilege"}, "role": {"$ref": "#/components/schemas/admin_privilege_role", "description": "Access role granted by this privilege"}, "scope": {"$ref": "#/components/schemas/admin_privilege_scope", "description": "Object scope where this privilege applies"}, "site_id": {"$ref": "#/components/schemas/admin_privilege_site_id", "description": "Required if `scope`==`site`. Site granted by this privilege"}, "sitegroup_ids": {"$ref": "#/components/schemas/admin_privilege_sitegroup_ids", "description": "If `scope`==`sitegroup`. Site groups granted by this privilege"}, "views": {"$ref": "#/components/schemas/admin_privilege_views", "description": "UI view restrictions applied when custom roles limit this privilege"}}, "required": ["role", "scope"], "type": "object"}, "admin_privilege_msp_id": {"description": "Required if `scope`==`msp`. MSP granted by this privilege", "examples": ["b9d42c2e-88ee-41f8-b798-f009ce7fe909"], "format": "uuid", "type": "string"}, "admin_privilege_org_id": {"description": "Required if `scope`==`org`. Organization granted by this privilege", "examples": ["a97c1b22-a4e9-411e-9bfd-d8695a0f9e61"], "format": "uuid", "type": "string"}, "admin_privilege_orggroup_ids": {"description": "If `scope`==`orggroup`. Organization groups granted by this privilege", "items": {"$ref": "#/components/schemas/orggroup_id"}, "type": "array"}, "admin_privilege_role": {"description": "access permissions. enum: `admin`, `helpdesk`, `installer`, `read`, `write`", "enum": ["admin", "helpdesk", "installer", "read", "write"], "type": "string"}, "admin_privilege_scope": {"description": "enum: `msp`, `org`, `orggroup`, `site`, `sitegroup`", "enum": ["msp", "org", "orggroup", "site", "sitegroup"], "type": "string"}, "admin_privilege_site_id": {"description": "Required if `scope`==`site`. Site granted by this privilege", "examples": ["441a1214-6928-442a-8e92-e1d34b8ec6a6"], "format": "uuid", "type": "string"}, "admin_privilege_sitegroup_ids": {"description": "Site group identifiers granted by an admin privilege when scope is `sitegroup`", "items": {"$ref": "#/components/schemas/sitegroup_id"}, "type": "array"}, "admin_privilege_view": {"description": "UI view name allowed by a custom admin role. enum: `lobby_admin`, `location`, `marketing`, `mxedge_admin`, `reporting`, `security`, `super_observer`, `switch_admin`", "enum": ["lobby_admin", "location", "marketing", "mxedge_admin", "reporting", "security", "super_observer", "switch_admin"], "type": "string"}, "admin_privilege_views": {"description": "Custom roles restrict Org users to specific UI views. This is useful for limiting UI access of Org users. Custom roles restrict Org users to specific UI views. This is useful for limiting UI access of Org users. \nYou can define custom roles by adding the `views` attribute along with `role` when assigning privileges. \nBelow are the list of supported UI views. Note that this is UI only feature. \n\n | UI View | Required Role | Description |\n | --- | --- | --- |\n | `reporting` | `read` | full access to all analytics tools |\n | `marketing` | `read` | can view analytics and location maps |\n | `super_observer` | `read` | can view all the organization except the subscription page |\n | `location` | `write` | can view and manage location maps, can view analytics |\n | `security` | `write` | can view and manage site labels, policies and security |\n | `switch_admin` | `helpdesk` | can view and manage Switch ports, can view wired clients |\n | `mxedge_admin` | `admin` | can view and manage Mist edges and Mist tunnels |\n | `lobby_admin` | `admin` | full access to Org and Site Pre-shared keys |", "items": {"$ref": "#/components/schemas/admin_privilege_view"}, "type": "array"}, "admin_privileges": {"description": "List of privileges the admin has", "items": {"$ref": "#/components/schemas/admin_privilege"}, "minItems": 1, "type": "array", "uniqueItems": true}, "admin_tags": {"description": "Read-only tags associated with an administrator account", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "admins": {"description": "List of Mist administrator accounts", "items": {"$ref": "#/components/schemas/admin"}, "type": "array", "uniqueItems": true}, "aggregate_route": {"additionalProperties": false, "description": "Aggregate route configuration for a network or routing instance", "properties": {"discard": {"default": false, "description": "Whether to install the aggregate route as a discard route", "type": "boolean"}, "metric": {"description": "Routing metric assigned to the aggregate route", "maximum": 4294967295, "minimum": 0, "type": ["integer", "null"]}, "preference": {"description": "Route preference assigned to the aggregate route", "maximum": 4294967295, "minimum": 0, "type": ["integer", "null"]}}, "type": "object"}, "aggregate_routes": {"additionalProperties": {"$ref": "#/components/schemas/aggregate_route"}, "description": "Property key is the destination subnet (e.g. \"172.16.3.0/24\")", "examples": [{"172.16.3.0/24": {"discard": false, "metric": null, "preference": 30}}], "type": "object"}, "aggregate_routes6": {"additionalProperties": {"$ref": "#/components/schemas/aggregate_route"}, "description": "Property key is the destination subnet (e.g. \"2a02:1234:420a:10c9::/64\")", "example": {"2a02:1234:420a:10c9::/64": {"discard": false, "metric": null, "preference": 30}}, "type": "object"}, "alarm": {"additionalProperties": false, "description": "Additional information per alarm type", "properties": {"ack_admin_id": {"description": "UUID of the admin who acked the alarm", "examples": ["456b7016-a916-a4b1-78dd-72b947c152b7"], "format": "uuid", "readOnly": true, "type": "string"}, "ack_admin_name": {"description": "Name & Email ID of the admin who acked the alarm", "examples": ["Joe"], "type": "string"}, "acked": {"description": "Whether the alarm is acked or not", "examples": [true], "type": "boolean"}, "acked_time": {"description": "Epoch (seconds) when the alarm was acked", "examples": [1711031352], "readOnly": true, "type": "integer"}, "aps": {"$ref": "#/components/schemas/alarm_aps", "description": "Access point MAC addresses related to this alarm"}, "bssids": {"$ref": "#/components/schemas/alarm_bssids", "description": "Wireless BSSIDs related to this alarm"}, "count": {"description": "Number of incident within an alarm window", "examples": [2], "readOnly": true, "type": "integer"}, "gateways": {"$ref": "#/components/schemas/alarm_gateways", "description": "Gateway MAC addresses related to this alarm"}, "group": {"description": "Category group for this alarm, such as certificate_expiry, infrastructure, marvis, or security", "examples": ["security"], "type": "string"}, "hostnames": {"$ref": "#/components/schemas/alarm_hostnames", "description": "Device hostnames related to this alarm"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the alarm"}, "last_seen": {"description": "Epoch (seconds) of the last incident/alarm within an alarm window", "examples": [1711031774], "format": "double", "readOnly": true, "type": "number"}, "note": {"description": "Text describing the alarm", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with this alarm"}, "resolved_time": {"description": "Epoch (seconds) of the resolved_time for the alarm", "type": "integer"}, "severity": {"description": "Impact level assigned to this alarm, such as critical, warn, or info", "examples": ["critical"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this alarm"}, "ssids": {"$ref": "#/components/schemas/alarm_ssids", "description": "Wireless SSIDs related to this alarm"}, "status": {"$ref": "#/components/schemas/alarm_status", "description": "Current lifecycle status of this alarm"}, "switches": {"$ref": "#/components/schemas/alarm_switches", "description": "Switch MAC addresses related to this alarm"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the alarm was raised, in epoch seconds"}, "type": {"description": "Key-name of the alarm type", "examples": ["rogue_client"], "readOnly": true, "type": "string"}}, "required": ["id", "timestamp", "last_seen", "type", "group", "severity", "count"], "type": "object"}, "alarm_ack": {"description": "Request body for acknowledging or unacknowledging alarms", "properties": {"alarm_ids": {"$ref": "#/components/schemas/alarm_ack_alarm_ids", "description": "Alarm identifiers to acknowledge or unacknowledge"}, "note": {"description": "Some text note describing the intent", "examples": ["maintenance window"], "type": "string"}}, "required": ["alarm_ids"], "type": "object"}, "alarm_ack_alarm_ids": {"description": "Alarm identifiers included in an alarm acknowledgement request", "examples": [["ccb8c94d-ca56-4075-932f-1f2ab444ff2c", "98ff4a3d-ec9b-4138-a42e-54fc3335179d"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "alarm_aps": {"description": "additional information: List of MACs of the APs", "examples": [["ffeeddccbbaa", "ffeeddccbbab"]], "items": {"type": "string"}, "type": "array"}, "alarm_bssids": {"description": "Wireless BSSIDs related to this alarm", "items": {"examples": ["Corp SSID"], "type": "string"}, "type": "array"}, "alarm_count_distinct": {"default": "type", "description": "enum: `acked`, `group`, `severity`, `type`", "enum": ["acked", "group", "severity", "type"], "type": "string"}, "alarm_gateways": {"description": "additional information: List of MACs of the gateways", "examples": [["ffeeddccbbaa", "ffeeddccbbab"]], "items": {"type": "string"}, "type": "array"}, "alarm_group": {"description": "Alarm group. enum: `certificate_expiry`, `infrastructure`, `marvis`, `security`", "enum": ["certificate_expiry", "infrastructure", "marvis", "security"], "type": "string"}, "alarm_hostnames": {"description": "additional information: List of Hostnames of the devices (AP/Switch/Gateway)", "examples": [["MC_DavidL", "MCM_AP_33_Nishant"]], "items": {"type": "string"}, "type": "array"}, "alarm_ids": {"description": "List of alarm identifiers", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "alarm_search_result": {"additionalProperties": false, "description": "Paginated response returned by an alarm search", "properties": {"component": {"description": "Alarm component matched by the search result", "type": "string"}, "end": {"description": "Upper bound of the alarm search window, in epoch seconds", "examples": [1711035686], "type": "integer"}, "limit": {"description": "Maximum number of alarm results returned", "examples": [10], "type": "integer"}, "next": {"description": "URL for the next page of alarm search results", "examples": ["/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": {"description": "Current page number for paginated alarm search results", "examples": [1], "type": "integer"}, "results": {"$ref": "#/components/schemas/alarm_search_results", "description": "Alarm records returned for this search"}, "start": {"description": "Lower bound of the alarm search window, in epoch seconds", "examples": [1710949286], "type": "integer"}, "total": {"description": "Number of alarm records matching the search", "examples": [232], "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "alarm_search_results": {"description": "Alarm records returned by an alarm search response", "items": {"$ref": "#/components/schemas/alarm"}, "type": "array"}, "alarm_severity": {"description": "Severity of the alarm. enum: `critical`, `info`, `warn`", "enum": ["critical", "info", "warn"], "type": "string"}, "alarm_ssids": {"description": "Wireless SSIDs related to this alarm", "items": {"type": "string"}, "type": "array"}, "alarm_status": {"description": "Current lifecycle status of this alarm. enum: `open`, `resolved`", "enum": ["open", "resolved"], "type": "string"}, "alarm_switches": {"description": "additional information: List of MACs of the switches", "examples": [["ffeeddccbbaa", "ffeeddccbbab"]], "items": {"type": "string"}, "type": "array"}, "alarm_template": {"description": "Alarm template defining default delivery and per-alarm rules", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the alarm template was created"}, "delivery": {"$ref": "#/components/schemas/delivery", "description": "Default alarm delivery settings for rules in this template"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the alarm template"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the alarm template was last modified"}, "name": {"description": "Some string to name the alarm template", "examples": ["default"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this alarm template"}, "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.", "examples": [{"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_rule": {"additionalProperties": false, "description": "Per-alarm enablement and delivery override in an alarm template", "properties": {"delivery": {"$ref": "#/components/schemas/delivery", "description": "Overrides for the alarm template delivery defaults for this alarm rule"}, "enabled": {"description": "Whether this alarm rule is enabled in the template", "type": "boolean"}}, "type": "object"}, "alarm_templates": {"description": "List of alarm templates", "items": {"$ref": "#/components/schemas/alarm_template"}, "type": "array"}, "alarms": {"description": "Alarm identifiers and optional note used for bulk alarm state changes", "properties": {"alarm_ids": {"$ref": "#/components/schemas/alarm_ids", "description": "Alarm identifiers to acknowledge or unacknowledge"}, "note": {"description": "Some text note describing the intent", "type": "string"}}, "required": ["alarm_ids"], "type": "object"}, "allow_deny": {"description": "Policy action value that either allows or denies matching traffic. enum: `allow`, `deny`", "enum": ["allow", "deny"], "type": "string"}, "anomaly": {"additionalProperties": false, "description": "SLE anomaly data point with baseline, deviation, and contributing events", "properties": {"events": {"$ref": "#/components/schemas/anomaly_events", "description": "Event names contributing to this anomaly"}, "since": {"description": "Timestamp when the anomalous period began", "readOnly": true, "type": "number"}, "sle_baseline": {"description": "Expected SLE value used as the anomaly baseline", "readOnly": true, "type": "number"}, "sle_deviation": {"description": "Difference between the observed SLE value and the baseline", "readOnly": true, "type": "number"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when this anomaly data point was recorded, in epoch seconds"}}, "required": ["timestamp", "sle_baseline", "sle_deviation", "events"], "type": "object"}, "anomaly_events": {"description": "Event names associated with an anomaly record", "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "antenna_select": {"description": "Antenna Mode for AP which supports selectable antennas. enum: `\"\"` (default), `external`, `internal`", "enum": ["", "external", "internal"], "examples": ["external"], "type": "string"}, "aos_register_cmd": {"additionalProperties": false, "description": "AOS Brownfield Registration Commands", "properties": {"cli_commands": {"description": "AOS-specific CLI commands that can be copied and pasted directly into an AOS device to register it with Mist. Includes registration code and configuration commands.", "type": "string"}}, "type": "object"}, "ap_aeroscout": {"additionalProperties": false, "description": "AeroScout location integration settings applied to an AP or AP profile", "properties": {"enabled": {"default": false, "description": "Whether to enable aeroscout config", "type": "boolean"}, "host": {"default": "", "description": "Required if enabled, aeroscout server host", "examples": ["aero.pvt.net"], "type": ["string", "null"]}, "locate_connected": {"default": false, "description": "Whether to enable the feature to allow wireless clients data received and sent to AES server for location calculation", "type": "boolean"}, "port": {"default": 1144, "description": "Optional if enabled, Aeroscout server port. Defaults to 1144", "type": ["integer", "null"]}}, "type": "object"}, "ap_airista": {"additionalProperties": false, "description": "Airista RTLS integration settings for an AP", "properties": {"enabled": {"default": false, "description": "Whether to enable Airista config", "type": "boolean"}, "host": {"default": "", "description": "Required if enabled, Airista server host", "examples": ["airista.pvt.net"], "type": ["string", "null"]}, "port": {"default": 1144, "description": "Optional if enabled, Airista server port. Defaults to 1144", "type": ["integer", "null"]}}, "type": "object"}, "ap_auto_upgrade_custom_versions": {"additionalProperties": {"description": "Firmware version or channel to deploy on the specified AP model", "type": "string"}, "description": "Per-AP-model firmware versions or channels used for auto-upgrade. Property key is the AP model name (e.g. \"AP41\"), value is the firmware version or release channel (e.g. `stable`)", "examples": [{"AP21": "stable", "AP41": "0.1.5135", "AP61": "0.1.7215"}], "type": "object"}, "ap_centrak": {"additionalProperties": false, "description": "CenTrak integration settings for an AP", "properties": {"enabled": {"default": false, "description": "Whether to enable Centrak config", "type": "boolean"}}, "type": "object"}, "ap_channel_band24_channel": {"description": "Supported 2.4 GHz channel numbers for a channel-width group", "items": {"examples": [1], "type": "integer"}, "type": "array"}, "ap_channel_band24_channels": {"additionalProperties": {"$ref": "#/components/schemas/ap_channel_band24_channel"}, "description": "Property key is the channel width", "examples": [{"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"}, "ap_channel_band5_channel": {"description": "Supported 5 GHz channel numbers for a channel-width group", "items": {"examples": [36], "type": "integer"}, "type": "array"}, "ap_channel_band5_channels": {"additionalProperties": {"$ref": "#/components/schemas/ap_channel_band5_channel"}, "description": "Property key is the channel width", "examples": [{"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"}, "ap_channel_band6_channel": {"description": "Supported 6 GHz channel numbers for a channel-width group", "items": {"examples": [1], "type": "integer"}, "type": "array"}, "ap_channel_band6_channels": {"additionalProperties": {"$ref": "#/components/schemas/ap_channel_band6_channel"}, "description": "Property key is the channel width", "examples": [{"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"}, "ap_client_bridge": {"additionalProperties": false, "description": "AP client bridge mode configuration", "properties": {"auth": {"$ref": "#/components/schemas/ap_client_bridge_auth", "description": "Credentials and security mode used when the AP connects as a wireless client bridge"}, "enabled": {"default": false, "description": "When acted as client bridge:\n * only 5G radio can be used\n * will not serve as AP on any radios", "type": "boolean"}, "ssid": {"description": "Uplink SSID used by the AP when client bridge mode is enabled", "examples": ["Uplink-SSID"], "minLength": 1, "type": "string"}}, "type": "object"}, "ap_client_bridge_auth": {"additionalProperties": false, "description": "Authentication settings for the AP client bridge uplink", "properties": {"psk": {"description": "Pre-shared key used when `type`==`psk` for client bridge authentication", "examples": ["foryoureyesonly"], "maxLength": 63, "minLength": 8, "type": "string"}, "type": {"$ref": "#/components/schemas/ap_client_bridge_auth_type", "description": "Authentication mode for the client bridge connection"}}, "type": "object"}, "ap_client_bridge_auth_type": {"default": "psk", "description": "wpa2-AES/CCMPp is assumed when `type`==`psk`. enum: `open`, `psk`", "enum": ["open", "psk"], "examples": ["psk"], "minLength": 1, "type": "string"}, "ap_esl_config": {"additionalProperties": false, "description": "Electronic shelf label integration settings for an AP", "properties": {"cacert": {"description": "Only if `type`==`imagotag` or `type`==`native`", "examples": ["--BEGIN CERTIFICATE--\nMIIDXTCCAkWgAwIBAgIJAL5b1z4f3k2TMA0GCSqGSIb3DQEBCwUAMIGVMQsw\n"], "type": "string"}, "channel": {"description": "Only if `type`==`imagotag` or `type`==`native`", "examples": [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`", "examples": ["1.1.1.1"], "type": "string"}, "port": {"description": "Only if `type`==`imagotag` or `type`==`native`", "examples": [0], "type": "integer"}, "type": {"$ref": "#/components/schemas/ap_esl_type", "description": "ESL integration type to enable on the AP"}, "verify_cert": {"description": "Only if `type`==`imagotag` or `type`==`native`", "examples": [true], "type": "boolean"}, "vlan_id": {"default": 1, "description": "Only if `type`==`solum` or `type`==`hanshow`", "type": "integer"}}, "type": "object"}, "ap_esl_type": {"description": "note: ble_config will be ignored if esl_config is enabled and with native mode. enum: `hanshow`, `imagotag`, `native`, `solum`", "enum": ["hanshow", "imagotag", "native", "solum"], "examples": ["imagotag"], "type": "string"}, "ap_import_json": {"description": "AP device records supplied in a JSON import payload", "items": {"$ref": "#/components/schemas/device_ap"}, "type": "array"}, "ap_iot": {"additionalProperties": false, "description": "Digital and analog IoT port settings applied to an AP or AP profile", "properties": {"A1": {"$ref": "#/components/schemas/ap_iot_output", "description": "Analog-capable IoT pin A1 output settings"}, "A2": {"$ref": "#/components/schemas/ap_iot_output", "description": "Analog-capable IoT pin A2 output settings"}, "A3": {"$ref": "#/components/schemas/ap_iot_output", "description": "Analog-capable IoT pin A3 output settings"}, "A4": {"$ref": "#/components/schemas/ap_iot_output", "description": "Analog-capable IoT pin A4 output settings"}, "DI1": {"$ref": "#/components/schemas/ap_iot_input", "description": "Digital input pin DI1 settings"}, "DI2": {"$ref": "#/components/schemas/ap_iot_input", "description": "Digital input pin DI2 settings"}, "DO": {"$ref": "#/components/schemas/ap_iot_output", "description": "Digital output pin DO settings"}}, "type": "object"}, "ap_iot_input": {"additionalProperties": false, "description": "IoT Input AP settings", "properties": {"enabled": {"default": false, "description": "Whether to enable a pin", "type": "boolean"}, "name": {"description": "Optional; descriptive pin name", "examples": ["motion"], "type": "string"}, "pullup": {"$ref": "#/components/schemas/ap_iot_pullup", "description": "Selects the pull-up resistor mode applied to the input pin"}}, "type": "object"}, "ap_iot_output": {"additionalProperties": false, "description": "IoT output AP settings", "properties": {"enabled": {"default": false, "description": "Whether to enable a pin", "type": "boolean"}, "name": {"description": "Optional; descriptive pin name", "examples": ["motion"], "type": "string"}, "output": {"description": "Whether the pin is configured as an output. DO and A1-A4 can be repurposed by changing", "examples": [true], "type": "boolean"}, "pullup": {"$ref": "#/components/schemas/ap_iot_pullup", "description": "Selects the pull-up resistor mode applied to the output pin"}, "value": {"description": "Output pin signal level, default 0", "examples": [0], "type": "integer"}}, "type": "object"}, "ap_iot_pullup": {"default": "none", "description": "the type of pull-up the pin uses. enum: `external`, `internal`, `none`", "enum": ["external", "internal", "none"], "type": "string"}, "ap_ip_config": {"additionalProperties": false, "description": "Management IP addressing settings for an access point", "properties": {"dns": {"$ref": "#/components/schemas/ap_ip_config_dns", "description": "If `type`==`static`. DNS server IP addresses for AP management traffic"}, "dns_suffix": {"$ref": "#/components/schemas/ap_ip_config_dns_suffix", "description": "If `type`==`static`. DNS search suffixes applied to AP management lookups"}, "gateway": {"description": "Required if `type`==`static`. IPv4 default gateway for AP management traffic", "examples": ["10.2.1.254"], "format": "ipv4", "type": "string"}, "gateway6": {"description": "Required if `type6`==`static`. IPv6 default gateway for AP management traffic when static IPv6 addressing is used", "examples": ["2607:f8b0:4005:808::1"], "format": "ipv6", "type": "string"}, "ip": {"description": "Required if `type`==`static`. Static IPv4 address for the AP management interface", "examples": ["10.2.1.1"], "format": "ipv4", "type": "string"}, "ip6": {"description": "Required if `type6`==`static`. Static IPv6 address for the AP management interface", "examples": ["2607:f8b0:4005:808::2004"], "format": "ipv6", "type": "string"}, "mtu": {"description": "Maximum transmission unit for AP management traffic", "examples": [0], "type": "integer"}, "netmask": {"description": "Required if `type`==`static`. IPv4 netmask for the AP management interface", "examples": ["255.255.255.0"], "type": "string"}, "netmask6": {"description": "Required if `type6`==`static`. IPv6 prefix length for the AP management interface", "examples": ["/32"], "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IPv4 address assignment mode for AP management traffic"}, "type6": {"$ref": "#/components/schemas/ip_type6", "description": "IPv6 address assignment mode for AP management traffic"}, "vlan_id": {"default": 1, "description": "Management VLAN ID, default is 1 (untagged)", "examples": [1], "type": "integer"}}, "type": "object"}, "ap_ip_config_dns": {"description": "If `type`==`static`. DNS server IP addresses for AP management traffic", "examples": [["8.8.8.8", "4.4.4.4"]], "items": {"type": "string"}, "type": "array"}, "ap_ip_config_dns_suffix": {"description": "Required if `type`==`static`; DNS search suffixes applied to AP management lookups", "examples": [[".mist.local", ".mist.com"]], "items": {"type": "string"}, "type": "array"}, "ap_led": {"additionalProperties": false, "description": "Indicator light settings for an access point", "properties": {"brightness": {"default": 255, "description": "Indicator LED brightness level from 0 to 255", "examples": [255], "maximum": 255, "minimum": 0, "type": "integer"}, "enabled": {"default": true, "description": "Whether the AP indicator LED is enabled", "type": "boolean"}}, "type": "object"}, "ap_mesh": {"additionalProperties": false, "description": "Wireless mesh settings for an access point", "properties": {"bands": {"$ref": "#/components/schemas/ap_mesh_bands", "description": "Radio bands allowed for AP mesh links"}, "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", "examples": [1], "maximum": 9, "minimum": 1, "type": ["integer", "null"]}, "role": {"$ref": "#/components/schemas/ap_mesh_role", "description": "Mesh role for this AP, either base or remote"}, "use_wpa3_on_5": {"default": false, "description": "Whether to use WPA3 on the 5 GHz band for mesh links", "type": "boolean"}}, "type": "object"}, "ap_mesh_bands": {"description": "List of bands that mesh should use. For relay, the first viable one will be picked. enum: `24`, `5`, `6`", "items": {"$ref": "#/components/schemas/dot11_band"}, "type": "array"}, "ap_mesh_role": {"description": "Mesh role for this AP, either base or remote. enum: `base`, `remote`", "enum": ["base", "remote"], "examples": ["base"], "type": "string"}, "ap_mqtt": {"additionalProperties": false, "description": "MQTT broker publishing settings for an AP; use `mqtt_topic` on individual AssetFilter entries to specify which MQTT topic each matching BLE advertisement is forwarded to", "properties": {"broker_host": {"description": "MQTT broker hostname or IP address; required when `enabled` is `true`", "type": "string"}, "broker_port": {"description": "MQTT broker port; defaults to `1883` for `tcp` and `8883` for `ssl`", "type": "integer"}, "broker_proto": {"$ref": "#/components/schemas/ap_mqtt_broker_proto", "description": "MQTT broker transport protocol"}, "enabled": {"default": false, "description": "Whether to enable MQTT publishing", "type": "boolean"}, "format": {"$ref": "#/components/schemas/ap_mqtt_format", "description": "Payload format for published messages"}, "password": {"description": "Optional MQTT password; masked in GET responses", "format": "password", "type": "string"}, "username": {"description": "Optional MQTT username", "type": "string"}}, "type": "object"}, "ap_mqtt_broker_proto": {"default": "tcp", "description": "MQTT broker transport protocol. enum: `ssl`, `tcp`", "enum": ["ssl", "tcp"], "type": "string"}, "ap_mqtt_format": {"default": "raw", "description": "Payload format for MQTT published messages. enum: `json`, `raw`", "enum": ["json", "raw"], "type": "string"}, "ap_port_config": {"additionalProperties": false, "description": "Ethernet port behavior settings for an access point", "properties": {"disabled": {"default": false, "description": "Whether this AP Ethernet port is disabled", "type": "boolean"}, "dynamic_vlan": {"$ref": "#/components/schemas/ap_port_config_dynamic_vlan", "description": "RADIUS-assigned VLAN settings for AP port authentication"}, "enable_mac_auth": {"default": false, "description": "Whether MAC authentication is enabled on this AP port", "type": "boolean"}, "forwarding": {"$ref": "#/components/schemas/ap_port_config_forwarding", "description": "Traffic forwarding mode for this AP Ethernet port"}, "mac_auth_preferred": {"default": false, "description": "When `true`, we'll do dot1x then mac_auth. enable this to prefer mac_auth", "type": "boolean"}, "mac_auth_protocol": {"$ref": "#/components/schemas/ap_port_config_mac_auth_protocol", "description": "Protocol used for MAC authentication when `enable_mac_auth` is `true`"}, "mist_nac": {"$ref": "#/components/schemas/wlan_mist_nac", "description": "Juniper Mist NAC settings used by AP port authentication"}, "mx_tunnel_id": {"default": "", "description": "If `forwarding`==`mxtunnel`, vlan_ids comes from mxtunnel", "examples": ["08cd7499-5841-51c8-e663-fb16b6f3b45e"], "format": "uuid", "type": "string"}, "mxtunnel_name": {"default": "", "description": "If `forwarding`==`site_mxedge`, vlan_ids comes from site_mxedge (`mxtunnel` under site setting)", "type": "string"}, "port_auth": {"$ref": "#/components/schemas/ap_port_config_port_auth", "description": "Authentication mode for this AP Ethernet port"}, "port_vlan_id": {"description": "If `forwarding`==`limited`. VLAN ID allowed on this AP Ethernet port", "examples": [1], "maximum": 4094, "minimum": 1, "type": "integer"}, "radius_config": {"$ref": "#/components/schemas/radius_config", "description": "RADIUS authentication and accounting settings for this AP port"}, "radsec": {"$ref": "#/components/schemas/radsec", "description": "TLS-secured RADIUS settings for this AP port"}, "vlan_id": {"description": "Optional to specify the VLAN ID for a tunnel if forwarding is for `wxtunnel`, `mxtunnel` or `site_mxedge`.\n * if vlan_id is not specified then it will use first one in vlan_ids[] of the mxtunnel.\n * if forwarding == site_mxedge, vlan_ids comes from site_mxedge (`mxtunnel` under site setting)", "examples": [9], "maximum": 4094, "minimum": 1, "type": "integer"}, "vlan_ids": {"description": "If `forwarding`==`limited`, comma separated list of additional VLAN IDs allowed on this port", "examples": ["10,20,30"], "type": "string"}, "wxtunnel_id": {"default": "", "description": "If `forwarding`==`wxtunnel`, the port is bridged to the vlan of the session", "examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "type": "string"}, "wxtunnel_remote_id": {"default": "", "description": "If `forwarding`==`wxtunnel`, the port is bridged to the vlan of the session", "examples": ["wifiguest"], "type": "string"}}, "type": "object"}, "ap_port_config_dynamic_vlan": {"additionalProperties": false, "description": "Dynamic VLAN assignment settings for AP port authentication", "properties": {"default_vlan_id": {"description": "Fallback VLAN ID used when RADIUS does not return a dynamic VLAN match", "examples": [999], "maximum": 4094, "minimum": 1, "type": "integer"}, "enabled": {"description": "Whether dynamic VLAN assignment is enabled for this AP port", "type": "boolean"}, "type": {"$ref": "#/components/schemas/ap_port_config_dynamic_vlan_type", "description": "Mapping mode for interpreting dynamic VLAN attributes returned by RADIUS"}, "vlans": {"additionalProperties": {"type": ["string", "null"]}, "description": "Mapping entries for RADIUS-assigned VLAN values on this AP port. For `type`==`airespace-interface-name`, the property key is the Airespace interface name returned by RADIUS (e.g. \"guest\"), and the value is the corresponding VLAN ID (e.g. 100). For `type`==`standard`, the property key is the VLAN ID number returned by RADIUS, and the value is ignored.", "examples": [{"1-10": null, "user": 10}], "type": "object"}}, "type": "object"}, "ap_port_config_dynamic_vlan_type": {"description": "Mapping mode for interpreting dynamic VLAN attributes returned by RADIUS.\\ \\ enum: `airespace-interface-name`, where the VLAN is determined by parsing\\ \\ the RADIUS attribute as an Airespace interface name (e.g. \"guest\"\\ \\ would map to VLAN 100), or `standard`, where the VLAN is determined by parsing\\ \\ the RADIUS attribute as a standard VLAN ID number", "enum": ["airespace-interface-name", "standard"], "type": "string"}, "ap_port_config_forwarding": {"default": "all", "description": "enum: \n * `all`: local breakout, All VLANs\n * `limited`: local breakout, only the VLANs configured in `port_vlan_id` and `vlan_ids`\n * `mxtunnel`: central breakout to an Org Mist Edge (requires `mxtunnel_id`)\n * `site_mxedge`: central breakout to a Site Mist Edge (requires `mxtunnel_name`)\n * `wxtunnel`': central breakout to an Org WxTunnel (requires `wxtunnel_id`)", "enum": ["all", "limited", "mxtunnel", "site_mxedge", "wxtunnel"], "examples": ["all"], "type": "string"}, "ap_port_config_mac_auth_protocol": {"default": "pap", "description": "if `enable_mac_auth`==`true`, allows user to select an authentication protocol. enum: `eap-md5`, `eap-peap`, `pap`", "enum": ["eap-md5", "eap-peap", "pap"], "type": "string"}, "ap_port_config_port_auth": {"default": "none", "description": "When doing port auth. enum: `dot1x`, `none`", "enum": ["dot1x", "none"], "examples": ["none"], "type": "string"}, "ap_pwr_config": {"additionalProperties": false, "description": "Power negotiation and peripheral power settings for an AP or AP profile", "properties": {"base": {"default": 0, "description": "Additional power to request during negotiating with PSE over PoE, in mW", "examples": [2000], "type": "integer"}, "prefer_usb_over_wifi": {"default": false, "description": "Whether to enable power out to peripheral, meanwhile will reduce power to Wi-Fi (only for AP45 at power mode)", "type": "boolean"}}, "type": "object"}, "ap_radio": {"additionalProperties": false, "description": "Radio configuration settings for an access point", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM can be disabled for individual radio-band settings", "type": "boolean"}, "ant_gain_24": {"description": "Antenna gain for 2.4G - for models with external antenna only", "examples": [4], "minimum": 0, "type": "integer"}, "ant_gain_5": {"description": "Antenna gain for 5G - for models with external antenna only", "examples": [5], "minimum": 0, "type": "integer"}, "ant_gain_6": {"description": "Antenna gain for 6G - for models with external antenna only", "examples": [5], "minimum": 0, "type": "integer"}, "antenna_mode": {"$ref": "#/components/schemas/ap_radio_antenna_mode", "description": "Selected radio chain mode for AP models that support antenna mode control"}, "antenna_select": {"$ref": "#/components/schemas/antenna_select", "description": "Internal or external antenna selection for AP models with selectable antennas"}, "band_24": {"$ref": "#/components/schemas/ap_radio_band24", "description": "2.4 GHz radio settings for this access point"}, "band_24_usage": {"$ref": "#/components/schemas/radio_band_24_usage", "description": "Radio usage mode for the 2.4 GHz-capable radio"}, "band_5": {"$ref": "#/components/schemas/ap_radio_band5", "description": "5 GHz radio settings for this access point"}, "band_5_on_24_radio": {"$ref": "#/components/schemas/ap_radio_band5", "description": "5 GHz settings used when the 2.4 GHz radio operates in 5 GHz mode"}, "band_6": {"$ref": "#/components/schemas/ap_radio_band6", "description": "6 GHz radio settings for this access point"}, "full_automatic_rrm": {"default": false, "description": "Let RRM control everything, only the `channels` and `ant_gain` will be honored (i.e. disabled/bandwidth/power/band_24_usage are all controlled by RRM)", "type": "boolean"}, "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"}, "rrm_managed": {"description": "Enable RRM to manage all radio settings (ignores all band_xxx configs)", "type": "boolean"}, "scanning_enabled": {"description": "Whether scanning radio is enabled", "examples": [true], "type": "boolean"}}, "type": "object"}, "ap_radio_antenna_mode": {"default": "default", "description": "enum: `1x1`, `2x2`, `3x3`, `4x4`, `default`", "enum": ["1x1", "2x2", "3x3", "4x4", "default"], "type": "string"}, "ap_radio_band24": {"additionalProperties": false, "description": "2.4 GHz radio settings for an access point", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 2.4 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 2.4 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 2.4 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth24", "description": "Channel width configured for the 2.4 GHz radio"}, "channel": {"default": null, "description": "For Device. (primary) channel for the band, 0 means using the Site Setting", "examples": [6], "maximum": 13, "minimum": 1, "type": ["integer", "null"]}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 2.4 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [3], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 3, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 3, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 2.4 GHz radio"}}, "type": "object"}, "ap_radio_band5": {"additionalProperties": false, "description": "5 GHz radio settings for an access point", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 5 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 5 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_beam_pattern": {"$ref": "#/components/schemas/radio_band_antenna_beam_pattern", "description": "Beam pattern used by the 5 GHz radio antenna"}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 5 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth5", "description": "Channel width configured for the 5 GHz radio"}, "channel": {"default": null, "description": "For Device. (primary) channel for the band, 0 means using the Site Setting", "examples": [100], "type": ["integer", "null"]}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 5 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [6], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 17, "minimum": 5, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 17, "minimum": 5, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 5 GHz radio"}}, "type": "object"}, "ap_radio_band6": {"additionalProperties": false, "description": "6 GHz radio settings for an access point", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 6 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 6 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_beam_pattern": {"$ref": "#/components/schemas/radio_band_antenna_beam_pattern", "description": "Beam pattern used by the 6 GHz radio antenna"}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 6 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth6", "description": "Channel width configured for the 6 GHz radio"}, "channel": {"default": null, "description": "For Device. (primary) channel for the band, 0 means using the Site Setting", "examples": [0], "type": ["integer", "null"]}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 6 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [7], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 5, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 5, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 6 GHz radio"}, "standard_power": {"default": false, "description": "For 6GHz Only, standard-power operation, AFC (Automatic Frequency Coordination) will be performed, and we'll fall back to Low Power Indoor if AFC failed", "type": "boolean"}}, "type": "object"}, "ap_radio_mac": {"additionalProperties": false, "description": "Access point MAC address and its related radio MAC addresses", "examples": [{"mac": "5c5b350001a0", "radio_macs": ["5c5b350001a0", "5c5b350001a1"]}], "properties": {"mac": {"description": "Access point MAC address for this radio MAC mapping", "examples": ["5c5b350001a0"], "minLength": 1, "type": "string"}, "radio_macs": {"$ref": "#/components/schemas/ap_radio_mac_radio_macs", "description": "List of radio MAC addresses associated with this access point"}}, "required": ["mac", "radio_macs"], "type": "object"}, "ap_radio_mac_radio_macs": {"description": "Radio MAC addresses associated with an access point", "examples": [["5c5b350001a0", "5c5b350001a1"]], "items": {"type": "string"}, "type": "array"}, "ap_radio_macs": {"description": "Access point radio MAC records supplied in an import payload", "items": {"$ref": "#/components/schemas/ap_radio_mac"}, "minItems": 1, "type": "array", "uniqueItems": true}, "ap_radio_stat": {"additionalProperties": false, "description": "Runtime radio statistics for an access point radio", "properties": {"bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth", "description": "Current channel width reported for this radio"}, "channel": {"description": "Current channel the radio is running on", "readOnly": true, "type": ["integer", "null"]}, "dynamic_chaining_enabled": {"description": "Use dynamic chaining for downlink", "readOnly": true, "type": ["boolean", "null"]}, "mac": {"description": "Radio base MAC address; a base radio MAC can represent up to 16 BSSIDs (e.g. 5c5b350001a0-5c5b350001af)", "readOnly": true, "type": ["string", "null"]}, "noise_floor": {"description": "Measured noise floor for this radio, in dBm", "examples": [-90], "readOnly": true, "type": ["integer", "null"]}, "num_clients": {"description": "Number of clients currently connected on this radio", "readOnly": true, "type": ["integer", "null"]}, "num_wlans": {"description": "How many WLANs are applied to the radio", "type": "integer"}, "power": {"description": "Transmit power (in dBm)", "readOnly": true, "type": ["integer", "null"]}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Received byte count reported for this radio"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Received packet count reported for this radio"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Transmitted byte count reported for this radio"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Transmitted packet count reported for this radio"}, "usage": {"description": "Operating band reported for this radio, such as 24, 5, or 6", "examples": ["24"], "readOnly": true, "type": ["string", "null"]}, "util_all": {"description": "All utilization in percentage", "readOnly": true, "type": ["integer", "null"]}, "util_non_wifi": {"description": "Reception of \"No Packets\" utilization in percentage, received frames with invalid PLCPs and CRS glitches as noise", "readOnly": true, "type": ["integer", "null"]}, "util_rx_in_bss": {"description": "Reception of \"In BSS\" utilization in percentage, only frames that are received from AP/STAs within the BSS", "readOnly": true, "type": ["integer", "null"]}, "util_rx_other_bss": {"description": "Reception of \"Other BSS\" utilization in percentage, all frames received from AP/STAs that are outside the BSS", "readOnly": true, "type": ["integer", "null"]}, "util_tx": {"description": "Transmission utilization in percentage", "readOnly": true, "type": ["integer", "null"]}, "util_undecodable_wifi": {"description": "Reception of \"UnDecodable Wifi\" utilization in percentage, only Preamble, PLCP header is decoded, Rest is undecodable in this radio", "readOnly": true, "type": ["integer", "null"]}, "util_unknown_wifi": {"description": "Reception of \"No Category\" utilization in percentage, all 802.11 frames that are corrupted at the receiver", "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "ap_redundancy": {"additionalProperties": false, "description": "AP switch redundancy coverage summary", "properties": {"modules": {"$ref": "#/components/schemas/ap_redundancy_modules", "description": "Per-module AP redundancy counts keyed by switch node ID"}, "num_aps": {"description": "Total number of APs considered for switch redundancy", "examples": [15], "type": "integer"}, "num_aps_with_switch_redundancy": {"description": "Number of APs that have switch redundancy coverage", "examples": [8], "type": "integer"}}, "type": "object"}, "ap_redundancy_module": {"additionalProperties": false, "description": "AP switch redundancy counts for one VC member", "properties": {"num_aps": {"description": "Total number of APs connected through this VC member", "examples": [15], "type": "integer"}, "num_aps_with_switch_redundancy": {"description": "Number of APs on this VC member with switch redundancy coverage", "examples": [8], "type": "integer"}}, "type": "object"}, "ap_redundancy_modules": {"additionalProperties": {"$ref": "#/components/schemas/ap_redundancy_module"}, "description": "Property key is the node id", "type": "object"}, "ap_search": {"additionalProperties": false, "description": "Access point record returned by device search endpoints", "properties": {"band_24_bandwidth": {"description": "Current channel bandwidth on the AP 2.4 GHz radio", "type": "string"}, "band_24_channel": {"description": "Current channel on the AP 2.4 GHz radio", "type": "integer"}, "band_24_power": {"description": "Current transmit power on the AP 2.4 GHz radio", "type": "integer"}, "band_5_bandwidth": {"description": "Current channel bandwidth on the AP 5 GHz radio", "type": "string"}, "band_5_channel": {"description": "Current channel on the AP 5 GHz radio", "type": "integer"}, "band_5_power": {"description": "Current transmit power on the AP 5 GHz radio", "type": "integer"}, "band_6_bandwidth": {"description": "Current channel bandwidth on the AP 6 GHz radio", "type": "string"}, "band_6_channel": {"description": "Current channel on the AP 6 GHz radio", "type": "integer"}, "band_6_power": {"description": "Current transmit power on the AP 6 GHz radio", "type": "integer"}, "eth0_port_speed": {"description": "Port speed of eth0", "type": "integer"}, "ext_ip": {"description": "External IP address observed for AP management traffic", "type": "string"}, "hostname": {"$ref": "#/components/schemas/ap_search_hostnames", "description": "Observed hostnames detected for the AP in search results"}, "inactive_wired_vlans": {"$ref": "#/components/schemas/ap_search_inactive_wired_vlans", "description": "Inactive wired VLAN IDs reported for this AP"}, "ip": {"description": "Management IP address currently assigned to the AP", "type": "string"}, "last_hostname": {"description": "Most recent hostname detected for the AP", "type": "string"}, "lldp_mgmt_addr": {"description": "LLDP management IP address advertised by the upstream neighbor", "type": "string"}, "lldp_port_desc": {"description": "LLDP port description advertised by the upstream neighbor", "type": "string"}, "lldp_port_id": {"description": "LLDP port identifier advertised by the upstream neighbor", "type": "string"}, "lldp_power_allocated": {"description": "Power allocated to the AP by LLDP, in mW", "type": "integer"}, "lldp_power_draw": {"description": "Power drawn by the AP as reported through LLDP, in mW", "type": "integer"}, "lldp_system_desc": {"description": "LLDP system description advertised by the upstream neighbor", "type": "string"}, "lldp_system_name": {"description": "LLDP system name advertised by the upstream neighbor", "type": "string"}, "mac": {"description": "Access point MAC address used to identify the AP in search results", "type": "string"}, "model": {"description": "AP hardware model for this search result", "type": "string"}, "mxedge_id": {"description": "Mist Edge id, if AP is connecting to a Mist Edge", "type": "string"}, "mxedge_ids": {"description": "Comma separated list of Mist Edge ids, if AP is connecting to a Mist Edge", "type": "string"}, "mxtunnel_status": {"description": "Current MxTunnel connection status of the AP", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this AP search result"}, "power_constrained": {"description": "Whether the AP is operating with insufficient power", "type": "boolean"}, "power_opmode": {"description": "Operating mode reported when AP power is constrained", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site that contains this AP search result"}, "sku": {"description": "Hardware SKU for the AP model", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time associated with this AP search result"}, "uptime": {"description": "Device uptime for the AP, in seconds", "type": "integer"}, "version": {"description": "Software version currently running on the AP", "type": "string"}, "wlans": {"$ref": "#/components/schemas/ap_search_wlans", "description": "Wireless LAN summaries applied to the AP in this search result"}}, "required": ["power_constrained", "power_opmode", "mxtunnel_status", "wlans"], "type": "object"}, "ap_search_hostnames": {"description": "List of hostnames detected for the AP", "items": {"type": "string"}, "type": "array"}, "ap_search_inactive_wired_vlans": {"description": "Inactive wired VLAN IDs reported for an AP", "items": {"type": "integer"}, "type": "array"}, "ap_search_wlan": {"additionalProperties": false, "description": "WLAN summary included in an AP search result", "properties": {"id": {"description": "WLAN identifier included in the AP search result", "format": "uuid", "type": "string"}, "ssid": {"description": "Wireless network SSID shown for this WLAN", "type": "string"}}, "type": "object"}, "ap_search_wlans": {"description": "WLAN summaries included in an AP search result", "items": {"$ref": "#/components/schemas/ap_search_wlan"}, "type": "array"}, "ap_stat_mesh_downlink": {"additionalProperties": false, "description": "Runtime statistics for a mesh downlink from this AP", "properties": {"band": {"description": "Radio band used by this mesh downlink", "examples": ["5"], "type": "string"}, "channel": {"description": "Radio channel used by this mesh downlink", "examples": [36], "type": "integer"}, "idle_time": {"description": "Seconds since traffic was last observed on this mesh downlink", "examples": [3], "type": "integer"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Timestamp when this mesh downlink was last observed"}, "proto": {"description": "802.11 protocol reported for this mesh downlink", "examples": ["n"], "type": "string"}, "rssi": {"description": "Received signal strength for this mesh downlink, in dBm", "examples": [-65], "type": "integer"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Inbound throughput on this mesh downlink, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Inbound byte count for this mesh downlink"}, "rx_packets": {"$ref": "#/components/schemas/rx_pkts", "description": "Inbound packet count for this mesh downlink"}, "rx_rate": {"$ref": "#/components/schemas/rx_rate", "description": "Inbound data rate reported for this mesh downlink"}, "rx_retries": {"$ref": "#/components/schemas/rx_retries", "description": "Inbound retry count reported for this mesh downlink"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this mesh downlink statistic"}, "snr": {"description": "Signal-to-noise ratio for this mesh downlink, in dB", "examples": [31], "type": "integer"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Outbound throughput on this mesh downlink, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Outbound byte count for this mesh downlink"}, "tx_packets": {"$ref": "#/components/schemas/tx_pkts", "description": "Outbound packet count for this mesh downlink"}, "tx_rate": {"$ref": "#/components/schemas/tx_rate", "description": "Outbound data rate reported for this mesh downlink"}, "tx_retries": {"$ref": "#/components/schemas/tx_retries", "description": "Outbound retry count reported for this mesh downlink"}}, "type": "object"}, "ap_stat_mesh_uplink": {"additionalProperties": false, "description": "Runtime statistics for this AP's mesh uplink", "properties": {"band": {"description": "Radio band used by this mesh uplink", "examples": ["5"], "type": "string"}, "channel": {"description": "Radio channel used by this mesh uplink", "examples": [36], "type": "integer"}, "idle_time": {"description": "Seconds since traffic was last observed on this mesh uplink", "examples": [3], "type": "integer"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Timestamp when this mesh uplink was last observed"}, "proto": {"description": "802.11 protocol reported for this mesh uplink", "examples": ["n"], "type": "string"}, "rssi": {"description": "Received signal strength for this mesh uplink, in dBm", "examples": [-65], "type": "integer"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Inbound throughput on this mesh uplink, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Inbound byte count for this mesh uplink"}, "rx_packets": {"$ref": "#/components/schemas/rx_pkts", "description": "Inbound packet count for this mesh uplink"}, "rx_rate": {"$ref": "#/components/schemas/rx_rate", "description": "Inbound data rate reported for this mesh uplink"}, "rx_retries": {"$ref": "#/components/schemas/rx_retries", "description": "Inbound retry count reported for this mesh uplink"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this mesh uplink statistic"}, "snr": {"description": "Signal-to-noise ratio for this mesh uplink, in dB", "examples": [31], "type": "integer"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Outbound throughput on this mesh uplink, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Outbound byte count for this mesh uplink"}, "tx_packets": {"$ref": "#/components/schemas/tx_pkts", "description": "Outbound packet count for this mesh uplink"}, "tx_rate": {"$ref": "#/components/schemas/tx_rate", "description": "Outbound data rate reported for this mesh uplink"}, "tx_retries": {"$ref": "#/components/schemas/tx_retries", "description": "Outbound retry count reported for this mesh uplink"}, "uplink_ap_id": {"description": "Identifier of the upstream AP for this mesh uplink", "examples": ["00000000-0000-0000-1000-5c5b35000010"], "format": "uuid", "type": "string"}}, "type": "object"}, "ap_switch": {"additionalProperties": false, "deprecated": true, "description": "Deprecated AP switch VLAN control settings for advanced per-port configuration", "properties": {"enabled": {"default": false, "description": "Whether deprecated AP switch VLAN control is enabled", "type": "boolean"}, "eth0": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for AP eth0"}, "eth1": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for AP eth1"}, "eth2": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for AP eth2"}, "eth3": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for AP eth3"}, "module": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for the AP module port"}, "wds": {"$ref": "#/components/schemas/ap_switch_setting", "description": "VLAN settings for WDS traffic on the AP"}}, "type": "object"}, "ap_switch_setting": {"additionalProperties": false, "description": "VLAN settings for one deprecated AP switch-config port", "properties": {"enable_vlan": {"description": "Whether VLAN tagging is enabled for this AP switch-config port", "type": "boolean"}, "port_vlan_id": {"$ref": "#/components/schemas/ap_switch_setting_port_vlan_id", "description": "Native VLAN ID for this AP switch-config port"}, "vlan_ids": {"$ref": "#/components/schemas/ap_switch_setting_vlan_ids", "description": "Allowed VLAN IDs for this AP switch-config port"}}, "type": "object"}, "ap_switch_setting_port_vlan_id": {"anyOf": [{"maximum": 4094, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "Native VLAN ID, optional"}, "ap_switch_setting_vlan_ids": {"description": "List of VLAN IDs", "items": {"maximum": 4094, "minimum": 1, "type": "integer"}, "type": "array"}, "ap_template": {"description": "Access point template configuration", "properties": {"ap_matching": {"$ref": "#/components/schemas/ap_template_matching", "description": "Rules used to select access points for this AP template"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the AP template was created"}, "for_site": {"description": "Whether the AP template is scoped to a site rather than the organization", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the AP template"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the AP template was last modified"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this AP template"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site that owns this site-level AP template"}, "wifi": {"$ref": "#/components/schemas/ap_template_wifi", "description": "Wi-Fi and mesh settings applied by this AP template"}}, "required": ["ap_matching"], "type": "object"}, "ap_template_matching": {"additionalProperties": false, "description": "Rules that select which AP template port configuration applies", "properties": {"enabled": {"description": "Whether AP matching is enabled for this AP template", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/ap_template_matching_rules", "description": "AP matching entries that select access points and apply AP port configuration"}}, "type": "object"}, "ap_template_matching_rule": {"additionalProperties": false, "description": "Model and name match criteria for an AP template port configuration", "properties": {"match_model": {"description": "Access point model matched by this AP template rule", "minLength": 1, "type": "string"}, "name": {"description": "Display label for this AP template matching rule", "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"}}, "type": "object"}, "ap_template_matching_rules": {"description": "Ordered AP template matching rules", "items": {"$ref": "#/components/schemas/ap_template_matching_rule"}, "type": "array", "uniqueItems": true}, "ap_template_wifi": {"additionalProperties": false, "description": "Wi-Fi behavior settings applied by an AP template", "properties": {"cisco_enabled": {"description": "Whether Cisco-specific Wi-Fi compatibility behavior is enabled", "type": "boolean"}, "disable_11k": {"default": false, "description": "Whether 802.11k neighbor reports are disabled", "type": "boolean"}, "disable_radios_when_power_constrained": {"description": "Whether AP radios are disabled when power is constrained", "type": "boolean"}, "enable_arp_spoof": {"description": "Whether ARP spoofing checks are enabled when proxy ARP is used", "type": "boolean"}, "enable_shared_radio_scanning": {"default": false, "description": "Whether shared radio scanning is enabled for AP radio scanning", "type": "boolean"}, "enabled": {"default": true, "description": "Whether Wi-Fi settings in this AP template are enabled", "type": "boolean"}, "locate_connected": {"default": false, "description": "Whether location tracking is enabled for connected clients", "type": "boolean"}, "locate_unconnected": {"default": false, "description": "Whether location tracking is enabled for unconnected clients", "type": "boolean"}, "mesh_allow_dfs": {"default": false, "description": "Whether mesh links may use DFS channels, which can add CAC delays during scanning", "type": "boolean"}, "mesh_enable_crm": {"description": "Whether CRM is enabled for mesh networking in this AP template", "type": "boolean"}, "mesh_enabled": {"description": "Whether mesh networking is enabled by this AP template", "type": "boolean"}, "proxy_arp": {"default": false, "description": "Whether proxy ARP is enabled for Wi-Fi clients", "type": "boolean"}}, "type": "object"}, "ap_templates": {"description": "List of AP templates", "items": {"$ref": "#/components/schemas/ap_template"}, "type": "array"}, "ap_uplink_port_config": {"additionalProperties": false, "description": "AP Uplink port configuration", "properties": {"dot1x": {"default": false, "description": "Whether to do 802.1x against uplink switch. When enabled, 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": {"additionalProperties": false, "description": "Legacy USB integration settings for an access point\n - Note: if native imagotag is enabled, BLE will be disabled automatically\n - Note: legacy, new config moved to ESL Config.", "properties": {"cacert": {"description": "Only if `type`==`imagotag`. CA certificate used to validate the Imagotag service certificate", "type": ["string", "null"]}, "channel": {"description": "Only if `type`==`imagotag`, channel selection, not needed by default, required for manual channel override only", "examples": [3], "type": "integer"}, "enabled": {"description": "Whether to enable any usb config", "type": "boolean"}, "host": {"description": "Only if `type`==`imagotag`. Imagotag service host or IP address contacted by the AP", "examples": ["1.1.1.1"], "type": "string"}, "port": {"default": 0, "description": "Only if `type`==`imagotag`. TCP port used to reach the Imagotag service", "examples": [0], "type": "integer"}, "type": {"$ref": "#/components/schemas/ap_usb_type", "description": "USB integration type for this legacy AP USB configuration"}, "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"}, "ap_usb_type": {"description": "usb config type. enum: `hanshow`, `imagotag`, `solum`", "enum": ["hanshow", "imagotag", "solum"], "examples": ["imagotag"], "type": "string"}, "ap_zigbee": {"additionalProperties": false, "description": "Zigbee radio and network settings applied to an AP or AP profile", "properties": {"allow_join": {"$ref": "#/components/schemas/ap_zigbee_allow_join", "description": "Join policy for new Zigbee devices on this AP"}, "channel": {"default": 0, "description": "Zigbee channel (2.4 GHz). `0` means auto; valid fixed values are 11\u201326", "examples": [0], "maximum": 26, "minimum": 0, "type": "integer"}, "enabled": {"default": false, "description": "Whether to enable Zigbee on this AP", "type": "boolean"}, "extended_pan_id": {"description": "Extended PAN ID in hex string format; only applicable when `pan_id` is also specified", "examples": [1311768467294899695], "type": ["string", "null"]}, "pan_id": {"description": "PAN ID in hex string format; if not specified, assigned automatically", "examples": ["0x1234"], "type": ["string", "null"]}}, "type": "object"}, "ap_zigbee_allow_join": {"default": "manual", "description": "Controls whether new Zigbee devices are allowed to join the network. enum: `always`, `manual`", "enum": ["always", "manual"], "examples": ["manual"], "type": "string"}, "api_usage": {"additionalProperties": false, "description": "API rate-limit usage status for the current user or API token", "properties": {"request_limit": {"default": 5000, "description": "Maximum API requests allowed in the current hourly rate-limit window", "readOnly": true, "type": "integer"}, "requests": {"description": "Number of API requests made in the current hourly rate-limit window", "readOnly": true, "type": "integer"}, "seconds": {"description": "Time remaining, in seconds, before the current hourly rate-limit window resets", "type": "number"}}, "required": ["requests", "request_limit"], "type": "object"}, "app_probing": {"additionalProperties": false, "description": "Application reachability probing settings for gateway management", "properties": {"apps": {"$ref": "#/components/schemas/app_probing_apps", "description": "Predefined application keys to probe"}, "custom_apps": {"$ref": "#/components/schemas/app_probing_custom_apps", "description": "User-defined application probe definitions"}, "enabled": {"description": "Whether gateway application probing is enabled", "type": "boolean"}}, "type": "object"}, "app_probing_apps": {"description": "Application keys from [List Applications](/#operations/listApplications)", "examples": [["facebook"]], "items": {"type": "string"}, "type": "array"}, "app_probing_custom_app": {"additionalProperties": false, "description": "User-defined application probe definition", "properties": {"address": {"description": "Required if `protocol`==`icmp`. IP address probed by the ICMP custom app", "examples": ["192.168.1.1"], "type": "string"}, "app_type": {"description": "Category label used for this custom application probe", "type": "string"}, "hostnames": {"$ref": "#/components/schemas/app_probing_custom_app_hostname", "description": "If `protocol`==`http`. Hostnames or URLs probed by this custom app"}, "key": {"description": "Stable key used to identify this custom application probe", "type": "string"}, "name": {"description": "Display name for this custom application probe", "examples": ["pos_app"], "type": "string"}, "network": {"description": "Gateway network used as the source context for this probe", "examples": ["lan"], "type": "string"}, "packetSize": {"description": "If `protocol`==`icmp`. ICMP packet size used by this custom app probe", "maximum": 65400, "minimum": 0, "type": "integer"}, "protocol": {"$ref": "#/components/schemas/app_probing_custom_app_protocol", "description": "Probe protocol used by this custom application definition"}, "url": {"description": "If `protocol`==`http`. HTTP URL or hostname probed by this custom app", "examples": ["www.abc.com"], "type": "string"}, "vrf": {"description": "Gateway VRF used as the source context for this probe", "examples": ["lan"], "type": "string"}}, "type": "object"}, "app_probing_custom_app_hostname": {"description": "If `protocol`==`http`. HTTP hostnames or URLs probed by the custom app", "examples": [["https://www.abc.com"]], "items": {"type": "string"}, "type": "array"}, "app_probing_custom_app_protocol": {"default": "http", "description": "Probe protocol for a custom application. enum: `http`, `icmp`", "enum": ["http", "icmp"], "type": "string"}, "app_probing_custom_apps": {"description": "User-defined application probe definitions", "items": {"$ref": "#/components/schemas/app_probing_custom_app"}, "type": "array"}, "arp_table_stats": {"additionalProperties": false, "description": "ARP table usage and capacity statistics", "properties": {"arp_table_count": {"description": "Number of ARP table entries currently present on the device", "type": "integer"}, "max_entries_supported": {"description": "Supported ARP table capacity for the device", "type": "integer"}}, "type": "object"}, "asset": {"description": "Named Bluetooth Low Energy asset record", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when this asset record was created"}, "for_site": {"description": "Whether this asset is scoped directly to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the asset record"}, "mac": {"description": "Bluetooth MAC address used to identify the BLE asset", "type": "string"}, "map_id": {"description": "Identifier of the map associated with this asset, when specified", "format": "uuid", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when this asset record was last modified"}, "name": {"description": "Display name or label for the BLE asset", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this asset"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site associated with this asset"}, "tag_id": {"description": "BLE tag identifier associated with this asset", "format": "uuid", "type": "string"}}, "required": ["name", "mac"], "type": "object"}, "asset_filter": {"description": "BLE asset filter definition; all specified criteria must match", "properties": {"ap_mac": {"description": "Access point MAC address that must observe the BLE asset", "type": "string"}, "beam": {"description": "BLE beam number used to filter asset observations", "type": "integer"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when this asset filter was created"}, "disabled": {"default": false, "description": "Whether the asset filter is disabled", "type": "boolean"}, "eddystone_uid_namespace": {"description": "Eddystone uid namespace used to filter assets", "examples": ["2818e3868dec25629ede"], "type": "string"}, "eddystone_url": {"description": "Eddystone url used to filter assets", "examples": ["https://www.abc.com"], "type": "string"}, "for_site": {"description": "Whether this asset filter is scoped directly to a site", "readOnly": true, "type": "boolean"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "Major value from the iBeacon advertisement that assets must match"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "UUID from the iBeacon advertisement that assets must match"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the asset filter"}, "mfg_company_id": {"description": "BLE manufacturing-specific company-id used to filter assets", "examples": [935], "type": "integer"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when this asset filter was last modified"}, "mqtt_topic": {"description": "If set, matching BLE advertisements are forwarded to this MQTT topic when MQTT publishing is enabled", "type": "string"}, "name": {"description": "Display name for this BLE asset filter", "examples": ["Visitor Tags"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this asset filter"}, "rssi": {"description": "Signal strength threshold used to filter BLE asset observations", "type": "integer"}, "service_uuid": {"description": "BLE service data uuid used to filter assets", "examples": ["0000fe6a-0000-1000-8000-0030459b3cfb"], "format": "uuid", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Containing site identifier for this asset filter, when site-scoped"}}, "required": ["name"], "type": "object"}, "asset_filters": {"description": "List of BLE asset filters", "items": {"$ref": "#/components/schemas/asset_filter"}, "type": "array"}, "asset_import": {"additionalProperties": false, "description": "Asset record supplied in a JSON import payload", "properties": {"mac": {"description": "Bluetooth MAC address used to identify the imported BLE asset", "minLength": 1, "type": "string"}, "name": {"description": "Display name for the imported BLE asset", "minLength": 1, "type": "string"}}, "required": ["name", "mac"], "type": "object"}, "asset_of_interest": {"additionalProperties": false, "description": "BLE beacon that matched a named asset or asset filter", "properties": {"ap_mac": {"description": "Access point MAC address that heard this BLE beacon", "minLength": 1, "type": "string"}, "beam": {"description": "BLE beam number that detected this beacon", "type": "number"}, "by": {"description": "Match source for this BLE beacon, such as asset or asset filter", "minLength": 1, "type": "string"}, "curr_site": {"description": "Site currently associated with this BLE beacon", "minLength": 1, "type": "string"}, "device_name": {"description": "AP name reported for the device that heard this BLE beacon", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the matched asset or filter entry"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Timestamp when this BLE beacon was last observed"}, "mac": {"description": "Bluetooth MAC address of this BLE beacon", "minLength": 1, "type": "string"}, "manufacture": {"description": "BLE manufacturer name resolved for this beacon", "minLength": 1, "type": "string"}, "map_id": {"description": "Identifier of the map associated with this BLE beacon observation", "minLength": 1, "type": "string"}, "name": {"description": "Display name of the matched asset or filter", "minLength": 1, "type": "string"}, "rssi": {"description": "Signal strength of this BLE beacon, in dBm", "type": "number"}}, "type": "object"}, "asset_rssi_zone": {"additionalProperties": false, "description": "RSSI zone membership for an individual asset statistic", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the RSSI zone"}, "since": {"description": "Timestamp when the asset entered this RSSI zone", "type": "number"}}, "type": "object"}, "asset_rssi_zones": {"description": "Only send this for individual asset stat", "items": {"$ref": "#/components/schemas/asset_rssi_zone"}, "type": "array"}, "asset_zone": {"additionalProperties": false, "description": "Map zone membership for an individual asset statistic", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the zone"}, "since": {"description": "Timestamp when the asset entered this zone", "type": "number"}}, "type": "object"}, "asset_zones": {"description": "Only send this for individual asset stat", "items": {"$ref": "#/components/schemas/asset_zone"}, "type": "array"}, "assets": {"description": "List of named BLE asset records", "items": {"$ref": "#/components/schemas/asset"}, "type": "array"}, "assets_import_file": {"additionalProperties": false, "description": "CSV file upload payload for importing BLE assets", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "CSV file containing asset records to import", "type": "string"}}, "type": "object"}, "assets_import_json": {"description": "BLE asset records supplied in a JSON import payload", "examples": [[{"mac": "a31eb04e1c38", "name": "Expensive Instrument"}, {"mac": "a31eb04e1c37", "name": "Cheap Instrument"}]], "items": {"$ref": "#/components/schemas/asset_import"}, "minItems": 1, "type": "array", "uniqueItems": true}, "assets_of_interest": {"description": "BLE beacons that matched named assets or asset filters", "items": {"$ref": "#/components/schemas/asset_of_interest"}, "type": "array"}, "audit_log": {"additionalProperties": false, "description": "Administrative audit log entry", "properties": {"admin_id": {"$ref": "#/components/schemas/admin_id", "description": "Identifier of the administrator associated with the audited action"}, "admin_name": {"description": "Name or email of the administrator associated with the audited action", "type": "string"}, "after": {"$ref": "#/components/schemas/audit_log_after", "description": "Field values after the audited change"}, "before": {"$ref": "#/components/schemas/audit_log_before", "description": "Field values before the audited change"}, "for_site": {"description": "Whether this audit log entry is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the audit log entry"}, "message": {"description": "Human-readable audit message describing the action", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this audit log entry"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for this audit log entry"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the audited action occurred"}}, "required": ["admin_id", "admin_name", "id", "message", "org_id", "site_id", "timestamp"], "type": "object"}, "audit_log_after": {"additionalProperties": true, "description": "Field values after the change", "type": "object"}, "audit_log_before": {"additionalProperties": true, "description": "Field values prior to the change", "type": "object"}, "auto_map_assignment": {"additionalProperties": false, "description": "Request options for validating or starting automatic AP map assignment", "properties": {"dryrun": {"default": false, "description": "If `true`, validates the site's APs without starting the map assignment process. Returns device validity and estimated runtime.", "type": "boolean"}, "force_collection": {"default": false, "description": "If `true`, forces data collection via orchestration. If `false`, attempts to use existing BLE data first.", "type": "boolean"}}, "type": "object"}, "auto_map_assignment_request": {"additionalProperties": false, "description": "Request body for accepting or clearing pending map assignments", "properties": {"map_ids": {"description": "Optional list of specific map IDs to apply/clear. If not provided or empty, all pending map assignments are accepted/rejected.", "items": {"format": "uuid", "type": "string"}, "type": "array"}}, "type": "object"}, "auto_orient": {"description": "Request options for validating or starting AP auto-orientation", "properties": {"dryrun": {"description": "Set to `true` to perform an invalid AP check and provide an estimated run time without enqueuing the run into the auto orient service.", "type": "boolean"}, "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": {"$ref": "#/components/schemas/auto_orient_macs", "description": "AP MAC addresses to include in the auto-orient run"}, "override": {"description": "Set to `true` to run auto orient even if there are invalid APs in the selected APs.", "type": "boolean"}}, "type": "object"}, "auto_orient_macs": {"description": "List of device macs", "items": {"type": "string"}, "type": "array"}, "auto_placement": {"description": "Request options for validating or starting AP auto-placement", "properties": {"dryrun": {"default": false, "description": "Set to `true` to perform an invalid AP check and provide an estimated run time without enqueuing the run into the auto placement service.", "type": "boolean"}, "force_collection": {"default": false, "description": "* If `force_collection`==`false`: the API attempts to start localization with existing data. \n* If `force_collection`==`true`: maintenance the API attempts to start orchestration.", "type": "boolean"}, "macs": {"$ref": "#/components/schemas/auto_placement_macs", "description": "AP MAC addresses to include in the auto-placement run"}, "override": {"default": false, "description": "Set to `true` to run auto placement even if there are invalid APs in the selected APs.", "type": "boolean"}}, "type": "object"}, "auto_placement_info_status": {"description": "the status of autoplacement for a given map. enum: `done`, `error`, `inprogress`, `pending`", "enum": ["done", "error", "inprogress", "pending"], "type": "string"}, "auto_placement_macs": {"description": "List of device macs", "items": {"type": "string"}, "type": "array"}, "auto_preemption": {"additionalProperties": false, "description": "Schedule to preempt AP tunnels that are not connected to their preferred peer", "properties": {"day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Scheduled weekday for auto preemption"}, "enabled": {"default": false, "description": "Whether auto preemption is enabled", "type": "boolean"}, "time_of_day": {"$ref": "#/components/schemas/time_of_day", "description": "Scheduled time of day for auto preemption"}}, "type": "object"}, "autoplacement_localization_selector": {"description": "Request body to apply or clear cached autoplacement or auto-orientation values for a map or subset of APs", "properties": {"for": {"default": "placement", "description": "The selector to choose auto placement or auto orientation. enum: `orientation`, `placement`", "enum": ["orientation", "placement"], "type": "string"}, "macs": {"description": "List of AP MAC addresses to apply the action to. If omitted, the action applies to all APs on the map", "items": {"type": "string"}, "type": "array"}}, "type": "object"}, "avprofile": {"description": "Antivirus scanning profile with protocols, limits, and whitelist settings", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when this antivirus profile was created"}, "fallback_action": {"$ref": "#/components/schemas/avprofile_fallback_action", "description": "Action to take when antivirus scanning cannot complete"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the antivirus profile"}, "max_filesize": {"default": 10000, "description": "Maximum file size scanned by this antivirus profile, in KB", "maximum": 40000, "minimum": 20, "type": "integer"}, "mime_whitelist": {"$ref": "#/components/schemas/strings", "description": "Content MIME types exempted from antivirus scanning"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when this antivirus profile was last modified"}, "name": {"description": "Display name of the antivirus profile", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this antivirus profile"}, "protocols": {"$ref": "#/components/schemas/avprofile_protocols", "description": "Network protocols inspected by this antivirus profile"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for this antivirus profile, when site-scoped"}, "url_whitelist": {"$ref": "#/components/schemas/strings", "description": "Allowed URL entries exempted from antivirus scanning"}}, "required": ["name"], "type": "object"}, "avprofile_fallback_action": {"description": "Action applied when antivirus scanning cannot complete. enum: `block`, `log-and-permit`, `permit`", "enum": ["block", "log-and-permit", "permit"], "type": "string"}, "avprofile_protocol": {"description": "Protocol that can be inspected by an antivirus profile. enum: `ftp`, `http`, `imap`, `pop3`, `smtp`", "enum": ["ftp", "http", "imap", "pop3", "smtp"], "type": "string"}, "avprofile_protocols": {"description": "List of network protocols monitored by the antivirus profile. enum: `ftp`, `http`, `imap`, `pop3`, `smtp`", "items": {"$ref": "#/components/schemas/avprofile_protocol"}, "minItems": 1, "type": "array"}, "avprofiles": {"description": "List of antivirus scanning profiles", "items": {"$ref": "#/components/schemas/avprofile"}, "type": "array"}, "beacon": {"description": "Beacon configuration and placement data", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when this beacon configuration was created"}, "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 value broadcast by the beacon", "type": "string"}, "for_site": {"description": "Whether this beacon is scoped directly to a site", "readOnly": true, "type": "boolean"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value advertised by this beacon"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value advertised by this beacon"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID advertised by this beacon"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the beacon configuration"}, "mac": {"description": "Optional beacon MAC address, currently used only to identify battery voltage", "type": "string"}, "map_id": {"description": "Map where the beacon is placed", "format": "uuid", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when this beacon configuration was last modified"}, "name": {"description": "Display name of the beacon", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this beacon"}, "power": {"default": -12, "description": "Beacon transmit power, in dBm", "maximum": 100, "minimum": -12, "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with this beacon"}, "type": {"$ref": "#/components/schemas/beacon_type", "description": "Beacon advertisement format used by this beacon"}, "x": {"description": "Horizontal map position of the beacon, in pixels", "format": "double", "type": "number"}, "y": {"description": "Vertical map position of the beacon, in pixels", "format": "double", "type": "number"}}, "type": "object"}, "beacon_type": {"default": "eddystone-uid", "description": "enum: `eddystone-uid`, `eddystone-url`, `ibeacon`", "enum": ["eddystone-uid", "eddystone-url", "ibeacon"], "type": "string"}, "beacons": {"description": "List of beacon configuration records", "items": {"$ref": "#/components/schemas/beacon"}, "type": "array"}, "bgp_as": {"anyOf": [{"type": "string"}, {"maximum": 4294967294, "minimum": 1, "type": "integer"}], "description": "BGP AS, value in range 1-4294967294. Can be a Variable (e.g. `{{bgp_as}}` )", "examples": [65000]}, "bgp_config": {"additionalProperties": false, "description": "BGP session configuration. BFD is enabled when either bfd_minimum_interval or bfd_multiplier is configured", "properties": {"auth_key": {"description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`", "type": "string"}, "bfd_minimum_interval": {"default": 350, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`, when bfd_multiplier is configured alone. Default:\n * 1000 if `type`==`external`\n * 350 `type`==`internal`", "maximum": 255000, "minimum": 1, "type": ["integer", "null"]}, "bfd_multiplier": {"default": 3, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`, when bfd_minimum_interval_is_configured alone", "maximum": 255, "minimum": 1, "type": ["integer", "null"]}, "disable_bfd": {"default": false, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. BFD provides faster path failure detection and is enabled by default", "type": "boolean"}, "export": {"description": "Routing policy applied to routes exported by this BGP session", "type": "string"}, "export_policy": {"description": "Default export policies if no per-neighbor policies defined", "type": "string"}, "extended_v4_nexthop": {"description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. By default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this", "type": "boolean"}, "graceful_restart_time": {"default": 0, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. `0` means disable", "maximum": 4095, "minimum": 0, "type": "integer"}, "hold_time": {"default": 90, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. Default is 90.", "maximum": 65535, "minimum": 0, "type": "integer"}, "import": {"description": "Routing policy applied to routes imported by this BGP session", "type": "string"}, "import_policy": {"description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. Default import policies if no per-neighbor policies defined", "type": "string"}, "local_as": {"$ref": "#/components/schemas/bgp_local_as", "description": "Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`; local BGP Autonomous System (AS) number"}, "neighbor_as": {"$ref": "#/components/schemas/bgp_as", "description": "Default BGP neighbor Autonomous System (AS) number for this session"}, "neighbors": {"additionalProperties": {"$ref": "#/components/schemas/bgp_config_neighbors"}, "description": "Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. If per-neighbor as is desired. Property key is the neighbor address", "type": "object"}, "networks": {"$ref": "#/components/schemas/bgp_config_networks", "description": "Optional if `via`==`lan`; networks where BGP neighbors can connect to or from"}, "no_private_as": {"default": false, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. If true, we will not advertise private ASNs (AS 64512-65534) to this neighbor", "type": "boolean"}, "no_readvertise_to_overlay": {"default": false, "description": "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. By default, we'll re-advertise all learned BGP routers toward overlay", "type": "boolean"}, "tunnel_name": {"description": "Optional if `via`==`tunnel`; tunnel name used for this BGP session", "type": "string"}, "type": {"$ref": "#/components/schemas/bgp_config_type", "description": "Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`; BGP session type, internal or external"}, "via": {"$ref": "#/components/schemas/bgp_config_via", "description": "Transport used for this BGP session, such as LAN, tunnel, VPN, or WAN"}, "vpn_name": {"description": "Optional if `via`==`vpn`; VPN name used for this BGP session", "type": "string"}, "wan_name": {"description": "Optional if `via`==`wan`; WAN interface name used for this BGP session", "type": "string"}}, "required": ["via"], "type": "object"}, "bgp_config_neighbors": {"additionalProperties": false, "description": "Per-neighbor BGP session settings", "properties": {"disabled": {"default": false, "description": "If true, the BGP session to this neighbor will be administratively disabled/shutdown", "type": "boolean"}, "export_policy": {"description": "Export policy applied only to this BGP neighbor", "type": "string"}, "hold_time": {"default": 90, "description": "BGP hold time for this neighbor, in seconds", "maximum": 65535, "minimum": 0, "type": "integer"}, "import_policy": {"description": "Import policy applied only to this BGP neighbor", "type": "string"}, "multihop_ttl": {"description": "Assuming BGP neighbor is directly connected", "maximum": 255, "minimum": 0, "type": "integer"}, "neighbor_as": {"$ref": "#/components/schemas/bgp_as", "description": "Autonomous System (AS) number of this BGP neighbor"}, "tunnel_via": {"$ref": "#/components/schemas/tunnel_via", "description": "If `via`==`tunnel`, primary or secondary tunnel associated with this BGP neighbor"}}, "required": ["neighbor_as"], "type": "object"}, "bgp_config_networks": {"description": "Optional if `via`==`lan`. List of networks where we expect BGP neighbor to connect to/from", "items": {"type": "string"}, "type": "array"}, "bgp_config_type": {"description": "Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. enum: `external`, `internal`", "enum": ["external", "internal"], "minLength": 1, "type": "string"}, "bgp_config_via": {"default": "lan", "description": "enum: `lan`, `tunnel`, `vpn`, `wan`", "enum": ["lan", "tunnel", "vpn", "wan"], "type": "string"}, "bgp_local_as": {"anyOf": [{"type": "string"}, {"maximum": 4294967295, "minimum": 1, "type": "integer"}], "description": "Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. BGP AS, value in range 1-4294967295", "examples": [65000]}, "bgp_peer": {"additionalProperties": false, "description": "Only present when `bgp_peers` in `fields` query parameter", "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": {"$ref": "#/components/schemas/bgp_as", "description": "Local Autonomous System (AS) number used by this BGP session"}, "neighbor": {"description": "IP address of the BGP neighbor", "examples": ["15.8.3.5"], "type": "string"}, "neighbor_as": {"$ref": "#/components/schemas/bgp_as", "description": "Autonomous System (AS) number of the BGP neighbor"}, "neighbor_mac": {"description": "MAC address of the BGP neighbor when it is another device in the same organization", "examples": ["020001c04600"], "type": "string"}, "node": {"description": "HA node reporting this BGP peer, such as node0 or node1", "examples": ["node0"], "type": "string"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Packets received from this BGP neighbor"}, "rx_routes": {"description": "Number of received routes", "examples": [60], "type": "integer"}, "state": {"$ref": "#/components/schemas/bgp_stats_state", "description": "Current state of the BGP session"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when these BGP peer stats were sampled"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Packets sent to this BGP neighbor"}, "tx_routes": {"description": "Number of routes advertised to this BGP neighbor", "examples": [60], "type": "integer"}, "up": {"description": "Whether the BGP session is currently up", "type": "boolean"}, "uptime": {"description": "Number of seconds the BGP session has been up", "examples": [31355], "type": "integer"}, "vrf_name": {"description": "VRF name associated with this BGP session", "examples": ["default"], "type": "string"}}, "type": "object"}, "bgp_peers": {"description": "Only present when `bgp_peers` in `fields` query parameter. Each port object is same as `GET /api/v1/sites/{site_id}/stats/bgp_peers/search` result object, except that org_id, site_id, mac, model are removed", "items": {"$ref": "#/components/schemas/bgp_peer"}, "type": "array"}, "bgp_stats": {"additionalProperties": false, "description": "BGP peer statistics reported by a network device", "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": {"$ref": "#/components/schemas/bgp_as", "description": "Local Autonomous System (AS) number used by this BGP session"}, "mac": {"description": "Router MAC address for the device reporting this BGP peer", "examples": ["020001c04668"], "type": "string"}, "model": {"description": "Device model reporting this BGP peer statistic", "type": "string"}, "neighbor": {"description": "IP address of the BGP neighbor", "examples": ["15.8.3.5"], "type": "string"}, "neighbor_as": {"$ref": "#/components/schemas/bgp_as", "description": "Autonomous System (AS) number of the BGP neighbor"}, "neighbor_mac": {"description": "MAC address of the BGP neighbor when it is another device in the same organization", "examples": ["020001c04600"], "type": "string"}, "node": {"description": "HA node reporting this BGP peer, such as node0 or node1", "examples": ["node0"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this BGP peer statistic"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Packets received from this BGP neighbor"}, "rx_routes": {"description": "Number of received routes", "examples": [60], "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with this BGP peer statistic"}, "state": {"$ref": "#/components/schemas/bgp_stats_state", "description": "Current state of the BGP session"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when these BGP peer stats were sampled"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Packets sent to this BGP neighbor"}, "tx_routes": {"description": "Number of routes advertised to this BGP neighbor", "examples": [60], "type": "integer"}, "up": {"description": "Whether the BGP session is currently up", "type": "boolean"}, "uptime": {"description": "Number of seconds the BGP session has been up", "examples": [31355], "type": "integer"}, "vrf_name": {"description": "VRF name associated with this BGP session", "examples": ["default"], "type": "string"}}, "type": "object"}, "bgp_stats_state": {"description": "enum: `active`, `connect`, `established`, `idle`, `open_config`, `open_sent`", "enum": ["active", "connect", "established", "idle", "open_config", "open_sent"], "examples": ["established"], "type": "string"}, "binary_stream": {"additionalProperties": false, "description": "Binary file upload payload", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Binary file payload to upload with this request", "type": "string"}}, "required": ["file"], "type": "object"}, "ble_config": {"additionalProperties": false, "description": "Bluetooth Low Energy beacon and asset advertising settings for an AP", "properties": {"beacon_enabled": {"default": true, "description": "Whether Mist beacons is enabled", "type": "boolean"}, "beacon_rate": {"description": "Required if `beacon_rate_mode`==`custom`, 1-10, in number-beacons-per-second", "examples": [3], "type": "integer"}, "beacon_rate_mode": {"$ref": "#/components/schemas/ble_config_beacon_rate_mode", "description": "Beacon rate mode for Mist BLE beacons; use custom to set beacon_rate"}, "beam_disabled": {"$ref": "#/components/schemas/ble_config_beam_disabled", "description": "AP BLE beam numbers disabled for location advertisements"}, "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": {"default": "", "description": "The custom frame to be sent out in this beacon. The frame must be a hexstring", "examples": ["0x........"], "type": "string"}, "custom_ble_packet_freq_msec": {"default": 0, "description": "Frequency (msec) of data emitted by custom ble beacon", "examples": [300], "minimum": 0, "type": "integer"}, "eddystone_uid_adv_power": {"default": 0, "description": "Advertised TX Power, -100 to 20 (dBm), omit this attribute to use default", "examples": [-65], "maximum": 20, "minimum": -100, "type": "integer"}, "eddystone_uid_beams": {"default": "", "description": "BLE beams used to transmit Eddystone-UID advertisements, expressed as ranges such as `2-4,7`", "examples": ["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": {"default": 0, "description": "Frequency (msec) of data emit by Eddystone-UID beacon", "examples": [200], "type": "integer"}, "eddystone_uid_instance": {"default": "", "description": "Eddystone-UID instance for the device", "examples": ["5c5b35000001"], "type": "string"}, "eddystone_uid_namespace": {"default": "", "description": "Eddystone-UID namespace broadcast by the AP, as a 10-byte hex string", "examples": ["2818e3868dec25629ede"], "type": "string"}, "eddystone_url_adv_power": {"default": 0, "description": "Advertised TX Power, -100 to 20 (dBm), omit this attribute to use default", "examples": [-65], "maximum": 20, "minimum": -100, "type": "integer"}, "eddystone_url_beams": {"default": "", "description": "BLE beams used to transmit Eddystone-URL advertisements, expressed as ranges such as `2-4,7`", "examples": ["2-4,7"], "type": "string"}, "eddystone_url_enabled": {"default": false, "description": "Only if `beacon_enabled`==`false`, Whether Eddystone-URL beacon is enabled", "type": "boolean"}, "eddystone_url_freq_msec": {"default": 0, "description": "Frequency (msec) of data emitted by Eddystone-URL beacon", "examples": [1000], "type": "integer"}, "eddystone_url_url": {"default": "", "description": "URL pointed by Eddystone-URL beacon", "examples": ["https://www.abc.com"], "type": "string"}, "ibeacon_adv_power": {"default": 0, "description": "Advertised TX Power, -100 to 20 (dBm), omit this attribute to use default", "examples": [-65], "maximum": 20, "minimum": -100, "type": "integer"}, "ibeacon_beams": {"default": "", "description": "BLE beams used to transmit iBeacon advertisements, expressed as ranges such as `2-4,7`", "examples": ["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": {"default": 0, "description": "Frequency (msec) of data emit for iBeacon", "type": "integer"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value broadcast by the AP"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value broadcast by the AP"}, "ibeacon_uuid": {"default": "", "description": "Optional, if not specified, the same UUID as the beacon will be used", "examples": ["f3f17139-704a-f03a-2786-0400279e37c3"], "format": "uuid", "type": "string"}, "power": {"default": 9, "description": "Required if `power_mode`==`custom`; else use `power_mode` as default", "examples": [6], "maximum": 10, "minimum": 1, "type": "integer"}, "power_mode": {"$ref": "#/components/schemas/ble_config_power_mode", "description": "Transmit power mode for BLE beacons; use custom to set `power`"}}, "type": "object"}, "ble_config_beacon_rate_mode": {"default": "default", "description": "Beacon rate mode for Mist BLE beacons; use custom to set beacon_rate. enum: `custom`, `default`", "enum": ["custom", "default"], "examples": ["custom"], "type": "string"}, "ble_config_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)", "examples": [[1, 3, 6]], "items": {"type": "integer"}, "type": "array"}, "ble_config_power_mode": {"default": "default", "description": "Transmit power mode for BLE beacons; use `custom` to set explicit power. enum: `custom`, `default`", "enum": ["custom", "default"], "examples": ["custom"], "type": "string"}, "cacerts": {"description": "List of PEM-encoded ca certs", "items": {"examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}, "type": "array"}, "call_troubleshoot": {"additionalProperties": false, "description": "Detailed call troubleshooting response", "properties": {"mac": {"description": "Client MAC address for the troubleshot call", "examples": ["983a78ea4a44"], "type": "string"}, "meeting_id": {"description": "Meeting identifier for the troubleshot call", "examples": ["b784d744-9a7c-4fad-9af0-f78858a319b1"], "format": "uuid", "type": "string"}, "results": {"$ref": "#/components/schemas/call_troubleshoots", "description": "Per-sample troubleshooting results for the call"}}, "type": "object"}, "call_troubleshoot_data": {"additionalProperties": false, "description": "Per-media call troubleshooting metric values", "properties": {"ap_num_clients": {"description": "Troubleshooting metric value for AP client count", "examples": [-0.6565111], "type": "number"}, "ap_rtt": {"description": "Troubleshooting metric value for AP round-trip time", "examples": [0.16559607], "type": "number"}, "client_cpu": {"description": "Troubleshooting metric value for client CPU load", "examples": [3.7028809], "type": "number"}, "client_n_streams": {"description": "Troubleshooting metric value for the number of client spatial streams", "examples": [0.15803306], "type": "number"}, "client_radio_band": {"description": "Troubleshooting metric value for the client radio band", "examples": [0.5576923], "type": "number"}, "client_rssi": {"description": "Troubleshooting metric value for client RSSI", "examples": [-1.0839354], "type": "number"}, "client_rx_bytes": {"description": "Troubleshooting metric value for bytes received by the client", "examples": [2.2622051], "type": "number"}, "client_rx_rates": {"description": "Troubleshooting metric value for client receive data rates", "examples": [0.62357205], "type": "number"}, "client_rx_retries": {"description": "Troubleshooting metric value for client receive retries", "examples": [0.26726437], "type": "number"}, "client_tx_bytes": {"description": "Troubleshooting metric value for bytes transmitted by the client", "examples": [0.15803306], "type": "number"}, "client_tx_rates": {"description": "Troubleshooting metric value for client transmit data rates", "examples": [0.62357205], "type": "number"}, "client_tx_retries": {"description": "Troubleshooting metric value for client transmit retries", "examples": [0.77553505], "type": "number"}, "client_vpn_distance": {"description": "Troubleshooting metric value for client VPN distance", "examples": [1.6474955], "type": "number"}, "client_wifi_version": {"description": "Troubleshooting metric value for the client Wi-Fi version", "examples": [0.18267937], "type": "number"}, "expected": {"description": "Model baseline value expected for this media direction", "examples": [30.941595], "type": "number"}, "radio_bandwidth": {"description": "Troubleshooting metric value for radio channel bandwidth", "examples": [-0.06538621], "type": "number"}, "radio_channel": {"description": "Troubleshooting metric value for the radio channel", "examples": [-0.73391086], "type": "number"}, "radio_tx_power": {"description": "Troubleshooting metric value for radio transmit power", "examples": [0.10027129], "type": "number"}, "radio_util": {"description": "Troubleshooting metric value for radio utilization", "examples": [12.770318], "type": "number"}, "radio_util_interference": {"description": "Troubleshooting metric value for radio interference utilization", "examples": [-3.079999], "type": "number"}, "site_num_clients": {"description": "Troubleshooting metric value for the number of clients at the site", "examples": [0.017364305], "type": "number"}, "wan_avg_download_mbps": {"description": "Troubleshooting metric value for average WAN download throughput", "examples": [1.4803165], "type": "number"}, "wan_avg_upload_mbps": {"description": "Troubleshooting metric value for average WAN upload throughput", "examples": [-0.038184267], "type": "number"}, "wan_jitter": {"description": "Troubleshooting metric value for WAN jitter", "examples": [5.9680853], "type": "number"}, "wan_max_download_mbps": {"description": "Troubleshooting metric value for maximum WAN download throughput", "examples": [1.4803165], "type": "number"}, "wan_max_upload_mbps": {"description": "Troubleshooting metric value for maximum WAN upload throughput", "examples": [-0.038184267], "type": "number"}, "wan_rtt": {"description": "Troubleshooting metric value for WAN round-trip time", "examples": [46.77899], "type": "number"}}, "type": "object"}, "call_troubleshoot_summaries": {"description": "List of call troubleshooting summary records", "items": {"$ref": "#/components/schemas/call_troubleshoot_summary"}, "type": "array"}, "call_troubleshoot_summary": {"additionalProperties": false, "description": "Summary row for call troubleshooting metrics", "properties": {"ap_num_clients": {"description": "Summary troubleshooting metric value for AP client count", "examples": [-0.08802365511655807], "type": "number"}, "ap_rtt": {"description": "Summary troubleshooting metric value for AP round-trip time", "examples": [0.09924473613500595], "type": "number"}, "audio_in": {"$ref": "#/components/schemas/call_troubleshoot_summary_data", "description": "Troubleshooting metrics for the inbound audio stream"}, "audio_out": {"$ref": "#/components/schemas/call_troubleshoot_summary_data", "description": "Troubleshooting metrics for the outbound audio stream"}, "client_cpu": {"description": "Summary troubleshooting metric value for client CPU load", "examples": [0.00834270566701889], "type": "number"}, "client_n_streams": {"description": "Summary troubleshooting metric value for the number of client spatial streams", "examples": [0.00734270566701889], "type": "number"}, "client_radio_band": {"description": "Summary troubleshooting metric value for the client radio band", "examples": [0.5841414928436279], "type": "number"}, "client_rssi": {"description": "Summary troubleshooting metric value for client RSSI", "examples": [0.7594696879386902], "type": "number"}, "client_rx_bytes": {"description": "Summary troubleshooting metric value for bytes received by the client", "examples": [2.365511655807e-05], "type": "number"}, "client_rx_rates": {"description": "Summary troubleshooting metric value for client receive data rates", "examples": [0.02441493794322014], "type": "number"}, "client_rx_retries": {"description": "Summary troubleshooting metric value for client receive retries", "examples": [-0.14325742423534393], "type": "number"}, "client_tx_bytes": {"description": "Summary troubleshooting metric value for bytes transmitted by the client", "examples": [0.00102365511655807], "type": "number"}, "client_tx_rates": {"description": "Summary troubleshooting metric value for client transmit data rates", "examples": [0.22236637771129608], "type": "number"}, "client_tx_retries": {"description": "Summary troubleshooting metric value for client transmit retries", "examples": [0.3308201730251312], "type": "number"}, "client_vpn_distance": {"description": "Summary troubleshooting metric value for client VPN distance", "examples": [-0.0001660545531194657], "type": "number"}, "client_wifi_version": {"description": "Summary troubleshooting metric value for the client Wi-Fi version", "examples": [7.0566701889e-07], "type": "number"}, "expected": {"description": "Model baseline value expected for this call sample", "examples": [-2.8630001056670187], "type": "number"}, "radio_ap_change": {"description": "Summary troubleshooting metric value for AP changes on the radio path", "examples": [0.01850946433842182], "type": "number"}, "radio_bandwidth": {"description": "Summary troubleshooting metric value for radio channel bandwidth", "examples": [-0.021175479516386986], "type": "number"}, "radio_channel": {"description": "Summary troubleshooting metric value for the radio channel", "examples": [0.11686426401138306], "type": "number"}, "radio_rx_failed": {"description": "Summary troubleshooting metric value for failed radio receive attempts", "examples": [1.1782013177871704], "type": "number"}, "radio_tx_power": {"description": "Summary troubleshooting metric value for radio transmit power", "examples": [0.121039018034935], "type": "number"}, "radio_util": {"description": "Summary troubleshooting metric value for radio utilization", "examples": [0.2452986091375351], "type": "number"}, "radio_util_interference": {"description": "Summary troubleshooting metric value for radio interference utilization", "examples": [3.4367904663085938], "type": "number"}, "site_num_clients": {"description": "Summary troubleshooting metric value for the number of clients at the site", "examples": [0.055026158690452576], "type": "number"}, "site_wan_avg_download_mbps": {"description": "Summary troubleshooting metric value for site WAN average download throughput", "examples": [3.0566701889e-07], "type": "number"}, "site_wan_avg_upload_mbps": {"description": "Summary troubleshooting metric value for site WAN average upload throughput", "examples": [5.566701889e-08], "type": "number"}, "site_wan_download_mbps": {"description": "Summary troubleshooting metric value for site WAN download throughput", "examples": [8.0566701889e-07], "type": "number"}, "site_wan_jitter": {"description": "Summary troubleshooting metric value for site WAN jitter", "examples": [0.7875519659784105], "type": "number"}, "site_wan_rtt": {"description": "Summary troubleshooting metric value for site WAN round-trip time", "examples": [15.094849904378256], "type": "number"}, "site_wan_upload_mbps": {"description": "Summary troubleshooting metric value for site WAN upload throughput", "examples": [2.0566701889e-07], "type": "number"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when this call troubleshooting sample was recorded"}, "video_in": {"$ref": "#/components/schemas/call_troubleshoot_summary_data", "description": "Troubleshooting metrics for the inbound video stream"}, "video_out": {"$ref": "#/components/schemas/call_troubleshoot_summary_data", "description": "Troubleshooting metrics for the outbound video stream"}}, "type": "object"}, "call_troubleshoot_summary_data": {"additionalProperties": false, "description": "Media-direction call troubleshooting metrics in a summary response", "properties": {"ap_num_clients": {"description": "Media-direction metric value for AP client count", "examples": [-0.6565111], "type": "number"}, "ap_rtt": {"description": "Media-direction metric value for AP round-trip time", "examples": [0.16559607], "type": "number"}, "client_cpu": {"description": "Media-direction metric value for client CPU load", "examples": [3.7028809], "type": "number"}, "client_n_streams": {"description": "Media-direction metric value for the number of client spatial streams", "examples": [0.15803306], "type": "number"}, "client_radio_band": {"description": "Media-direction metric value for the client radio band", "examples": [0.5576923], "type": "number"}, "client_rssi": {"description": "Media-direction metric value for client RSSI", "examples": [-1.0839354], "type": "number"}, "client_rx_bytes": {"description": "Media-direction metric value for bytes received by the client", "examples": [2.2622051], "type": "number"}, "client_rx_rates": {"description": "Media-direction metric value for client receive data rates", "examples": [0.26726437], "type": "number"}, "client_tx_bytes": {"description": "Media-direction metric value for bytes transmitted by the client", "examples": [6.6164713], "type": "number"}, "client_tx_rates": {"description": "Media-direction metric value for client transmit data rates", "examples": [0.62357205], "type": "number"}, "client_tx_retries": {"description": "Media-direction metric value for client transmit retries", "examples": [1.702031], "type": "number"}, "client_vpn_distance": {"description": "Media-direction metric value for client VPN distance", "examples": [1.6474955], "type": "number"}, "client_wifi_version": {"description": "Media-direction metric value for the client Wi-Fi version", "examples": [0.18267937], "type": "number"}, "expected": {"description": "Model baseline value expected for this media direction", "examples": [30.941595], "type": "number"}, "radio_bandwidth": {"description": "Media-direction metric value for radio channel bandwidth", "examples": [-0.06538621], "type": "number"}, "radio_channel": {"description": "Media-direction metric value for the radio channel", "examples": [-0.73391086], "type": "number"}, "radio_tx_power": {"description": "Media-direction metric value for radio transmit power", "examples": [0.10027129], "type": "number"}, "radio_util": {"description": "Media-direction metric value for radio utilization", "examples": [12.770318], "type": "number"}, "radio_util_interference": {"description": "Media-direction metric value for radio interference utilization", "examples": [-3.079999], "type": "number"}, "site_num_clients": {"description": "Media-direction metric value for the number of clients at the site", "examples": [0.017364305], "type": "number"}, "site_wan_avg_download_mbps": {"description": "Media-direction metric value for site WAN average download throughput", "examples": [3.0566701889e-07], "type": "number"}, "site_wan_avg_upload_mbps": {"description": "Media-direction metric value for site WAN average upload throughput", "examples": [5.566701889e-08], "type": "number"}, "site_wan_download_mbps": {"description": "Media-direction metric value for site WAN download throughput", "examples": [8.0566701889e-07], "type": "number"}, "site_wan_jitter": {"description": "Media-direction metric value for site WAN jitter", "examples": [0.7875519659784105], "type": "number"}, "site_wan_rtt": {"description": "Media-direction metric value for site WAN round-trip time", "examples": [15.094849904378256], "type": "number"}, "site_wan_upload_mbps": {"description": "Media-direction metric value for site WAN upload throughput", "examples": [2.0566701889e-07], "type": "number"}, "wan_avg_download_mbps": {"description": "Media-direction metric value for average WAN download throughput", "examples": [1.4803165], "type": "number"}, "wan_avg_upload_mbps": {"description": "Media-direction metric value for average WAN upload throughput", "examples": [-0.038184267], "type": "number"}, "wan_jitter": {"description": "Media-direction metric value for WAN jitter", "examples": [5.9680853], "type": "number"}, "wan_max_download_mbps": {"description": "Media-direction metric value for maximum WAN download throughput", "examples": [1.4803165], "type": "number"}, "wan_max_upload_mbps": {"description": "Media-direction metric value for maximum WAN upload throughput", "examples": [-0.038184267], "type": "number"}, "wan_rtt": {"description": "Media-direction metric value for WAN round-trip time", "examples": [46.77899], "type": "number"}}, "type": "object"}, "call_troubleshoots": {"description": "List of call troubleshooting detail records", "items": {"$ref": "#/components/schemas/troubleshoot_call_item"}, "type": "array"}, "capture_client": {"additionalProperties": false, "description": "Initiate a Client Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to target the client packet capture", "examples": [null], "type": ["string", "null"]}, "client_mac": {"description": "Client MAC address, required if `type`==`client`; optional otherwise", "examples": ["60a10a773412"], "type": ["string", "null"]}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "includes_mcast": {"default": false, "description": "Whether to include multicast traffic in the packet capture", "type": "boolean"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ssid": {"description": "Optional SSID filter for the packet capture", "examples": [null], "type": ["string", "null"]}, "type": {"$ref": "#/components/schemas/capture_client_type", "description": "Packet capture type discriminator for client captures"}}, "required": ["type"], "type": "object"}, "capture_client_type": {"description": "Packet capture type discriminator for client captures. enum: `client`", "enum": ["client"], "examples": ["client"], "type": "string"}, "capture_duration": {"default": 600, "description": "Duration of the capture, in seconds", "examples": [300], "maximum": 86400, "minimum": 60, "type": ["integer", "null"]}, "capture_gateway": {"additionalProperties": false, "description": "Initiate a Gateway (SSR/SRX) Packet Capture", "properties": {"duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_gateway_format", "description": "Output format for the gateway packet capture"}, "gateways": {"additionalProperties": {"$ref": "#/components/schemas/capture_gateway_gateways"}, "description": "List of SSRs. Property key is the SSR MAC", "type": "object"}, "max_pkt_len": {"default": 512, "description": "minimum is 64 (SSR) / 68 (SRX) maximum is 10240 (SSR) / 1520 (SRX)", "examples": [128], "maximum": 1520, "minimum": 64, "type": ["integer", "null"]}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ports": {"$ref": "#/components/schemas/capture_gateway_gateways_ports", "description": "Gateway ports to include in the packet capture"}, "type": {"$ref": "#/components/schemas/capture_gateway_type", "description": "Packet capture type discriminator for gateway captures"}}, "required": ["type", "gateways"], "type": "object"}, "capture_gateway_format": {"default": "stream", "description": "Output format for the gateway packet capture. enum: `stream`", "enum": ["stream"], "examples": ["stream"], "type": "string"}, "capture_gateway_gateways": {"additionalProperties": false, "description": "Gateway-specific packet capture settings keyed under a gateway MAC address", "properties": {"ports": {"$ref": "#/components/schemas/capture_gateway_gateways_ports", "description": "Gateway ports to include in the capture, keyed by port ID"}}, "type": "object"}, "capture_gateway_gateways_port": {"additionalProperties": false, "description": "Per-port tcpdump filter for a gateway packet capture", "properties": {"tcpdump_expression": {"description": "tcpdump expression per port", "type": "string"}}, "type": "object"}, "capture_gateway_gateways_ports": {"additionalProperties": {"$ref": "#/components/schemas/capture_gateway_gateways_port"}, "description": "Property key is the port ID", "type": "object"}, "capture_gateway_type": {"description": "Packet capture type discriminator for gateway captures. enum: `gateway`", "enum": ["gateway"], "examples": ["gateway"], "type": "string"}, "capture_max_pkt_length": {"default": 512, "description": "Maximum bytes captured from each packet, or null to use the default", "examples": [128], "maximum": 2048, "minimum": 64, "type": ["integer", "null"]}, "capture_mxedge": {"additionalProperties": false, "description": "Initiate a Mist Edge Packet Capture", "properties": {"duration": {"default": 600, "description": "Packet capture duration, in seconds. Default is 600, minimum is 60 and maximum is 10800 (3h)", "examples": [600], "maximum": 10800, "minimum": 60, "type": "integer"}, "format": {"$ref": "#/components/schemas/capture_mxedge_format", "description": "Output format for the Mist Edge packet capture"}, "max_pkt_len": {"default": 512, "description": "Max_len of each packet to capture. Default is 512, minimum is 64 and maximum is 2048", "examples": [512], "maximum": 2048, "minimum": 64, "type": "integer"}, "mxedges": {"additionalProperties": {"$ref": "#/components/schemas/capture_mxedge_mxedges"}, "description": "Dict of Mist Edges to capture on, property key is the Mist Edge ID. Property value is a dict of interfaces to capture for the given Mist Edge (e.g. port1, kni0, lacp0, ipsec, drop, oobm)", "type": "object"}, "num_packets": {"default": 1024, "description": "Number of packets to capture. Default is 1024, maximum is 10000, minimum 1, or 0 for unlimited (local/remote streaming only)", "examples": [100], "maximum": 10000, "minimum": 0, "type": "integer"}, "tcpdump_expression": {"description": "tcpdump expression, applicable across all interfaces if specified at top level. An interface-specific value (under the `interfaces` dict) overrides this top-level value.", "type": "string"}, "type": {"$ref": "#/components/schemas/capture_mxedge_type", "description": "Packet capture type discriminator for Mist Edge captures"}, "tzsp_host": {"description": "Required if `format`==`tzsp`. Remote host accessible to mxedges over the network for receiving the captured packets", "examples": ["192.168.1.2"], "type": "string"}, "tzsp_port": {"default": 37008, "description": "Optional port on remote host for receiving the captured packets. Default is 37008 (TZSP)", "maximum": 65535, "minimum": 1, "type": "integer"}}, "required": ["type"], "type": "object"}, "capture_mxedge_format": {"default": "stream", "description": "PCAP format. enum: \n * `stream`: to Mist cloud\n * `tzsp`: stream packets (over UDP as TZSP packets) to a remote host (typically running Wireshark)", "enum": ["stream", "tzsp"], "type": "string"}, "capture_mxedge_mxedges": {"additionalProperties": false, "description": "Property key is the Mx Edge ID, currently limited to one mxedge per org capture session", "properties": {"interfaces": {"additionalProperties": {"$ref": "#/components/schemas/capture_mxedge_mxedges_interfaces"}, "description": "Mx Edge interfaces to include in the capture, keyed by interface name"}}, "type": "object"}, "capture_mxedge_mxedges_interfaces": {"additionalProperties": false, "description": "Property key is the Port name (e.g. \"port1\", \"kni0\", \"lacp0\", \"ipsec\", \"drop\", \"oobm\"), currently limited to specifying one interface per mxedge", "properties": {"tcpdump_expression": {"description": "tcpdump expression common for wired,radiotap", "type": "string"}}, "type": "object"}, "capture_mxedge_type": {"description": "Packet capture type discriminator for Mist Edge captures. enum: `mxedge`", "enum": ["mxedge"], "examples": ["mxedge"], "type": "string"}, "capture_new_assoc": {"additionalProperties": false, "description": "Initiate a packet Capture for New Wireless Client Associations", "properties": {"ap_mac": {"description": "AP MAC address used to target new association capture", "examples": ["a83a79a947ee"], "type": "string"}, "client_mac": {"description": "Client MAC address, required if `type`==`client`; optional otherwise", "examples": ["60a10a773412"], "type": "string"}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "includes_mcast": {"default": false, "description": "Whether to include multicast traffic in the packet capture", "type": "boolean"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ssid": {"description": "Optional SSID filter for new association capture", "examples": [null], "type": "string"}, "type": {"$ref": "#/components/schemas/capture_new_assoc_type", "description": "Packet capture type discriminator for new association captures"}}, "required": ["type"], "type": "object"}, "capture_new_assoc_type": {"description": "Packet capture type discriminator for new association captures. enum: `new_assoc`", "enum": ["new_assoc"], "examples": ["new_assoc"], "type": "string"}, "capture_num_packets": {"default": 1024, "description": "number of packets to capture, 0 for unlimited, default is 1024, maximum is 10000", "examples": [1000], "maximum": 10000, "minimum": 0, "type": ["integer", "null"]}, "capture_org": {"description": "Packet capture request payload for organization-level captures", "oneOf": [{"$ref": "#/components/schemas/capture_mxedge"}]}, "capture_radiotap": {"additionalProperties": false, "description": "Initiate a Radiotap Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to target the radiotap packet capture", "examples": ["a83a79a947ee"], "type": "string"}, "band": {"$ref": "#/components/schemas/capture_radiotap_band", "description": "Radio band to capture for radiotap packets"}, "client_mac": {"description": "Client MAC address used to filter the radiotap packet capture", "examples": ["38f9d3972ff1"], "type": "string"}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_radiotap_format", "description": "Output format for the radiotap packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ssid": {"description": "Wireless network SSID used to filter the radiotap packet capture", "examples": ["test"], "type": "string"}, "tcpdump_expression": {"$ref": "#/components/schemas/capture_tcpdump_expression", "description": "Filter expression applied to the radiotap packet capture"}, "type": {"$ref": "#/components/schemas/capture_radiotap_type", "description": "Packet capture type discriminator for radiotap captures"}, "wlan_id": {"description": "WLAN id associated with the respective ssid.", "examples": ["fac8e973-feb9-421a-b381-aabbc4b61f5a"], "format": "uuid", "type": "string"}}, "required": ["type"], "type": "object"}, "capture_radiotap_band": {"default": "24", "description": "enum: `24`, `24,5,6`, `5`, `6`", "enum": ["24", "24,5,6", "5", "6"], "examples": ["24"], "type": "string"}, "capture_radiotap_format": {"default": "pcap", "description": "Output format for the radiotap packet capture. enum: `pcap`, `stream`", "enum": ["pcap", "stream"], "examples": ["stream"], "type": "string"}, "capture_radiotap_type": {"description": "Packet capture type discriminator for radiotap captures. enum: `radiotap`", "enum": ["radiotap"], "examples": ["radiotap"], "type": "string"}, "capture_radiotapwired": {"additionalProperties": false, "description": "Initiate a Radiotap Packet Capture and Wired Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to target the combined radiotap and wired packet capture", "examples": [null], "type": ["string", "null"]}, "band": {"$ref": "#/components/schemas/capture_radiotapwired_band", "description": "Radio band to capture for the radiotap portion"}, "client_mac": {"description": "Client MAC address used to filter the combined packet capture", "examples": ["38f9d3972ff1"], "type": ["string", "null"]}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_radiotapwired_format", "description": "Output format for the combined packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "radiotap_tcpdump_expression": {"description": "tcpdump expression for radiotap interface (802.11 + radio headers)", "examples": ["type"], "type": "string"}, "ssid": {"description": "Wireless network SSID used to filter the radiotap portion", "examples": ["test"], "type": ["string", "null"]}, "tcpdump_expression": {"$ref": "#/components/schemas/capture_tcpdump_expression", "description": "Filter expression applied across the combined packet capture"}, "type": {"$ref": "#/components/schemas/capture_radiotapwired_type", "description": "Packet capture type discriminator for combined radiotap and wired captures"}, "wired_tcpdump_expression": {"$ref": "#/components/schemas/capture_tcpdump_expression", "description": "Filter expression applied to the wired portion of the capture"}, "wireless_tcpdump_expression": {"description": "tcpdump expression for radiotap interface (802.11)", "type": "string"}, "wlan_id": {"description": "WLAN id associated with the respective ssid.", "examples": ["fac8e973-feb9-421a-b381-aabbc4b61f5a"], "type": ["string", "null"]}}, "required": ["type"], "type": "object"}, "capture_radiotapwired_band": {"default": "24", "description": "only used for radiotap. enum: `24`, `24,5,6`, `5`, `6`", "enum": ["24", "24,5,6", "5", "6"], "examples": ["24"], "type": "string"}, "capture_radiotapwired_format": {"default": "pcap", "description": "Output format for the combined packet capture. enum: `pcap`, `stream`", "enum": ["pcap", "stream"], "examples": ["stream"], "type": "string"}, "capture_radiotapwired_type": {"description": "Packet capture type discriminator for combined radiotap and wired captures. enum: `radiotap,wired`", "enum": ["radiotap,wired"], "examples": ["radiotap,wired"], "type": "string"}, "capture_scan": {"additionalProperties": false, "description": "Initiate a Scan Radio Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to filter the scan radio packet capture", "examples": [null], "type": ["string", "null"]}, "aps": {"additionalProperties": {"$ref": "#/components/schemas/capture_scan_aps"}, "description": "Dictionary key is AP mac and value is a dictionary which contains key \"band\", \"bandwidth\", \"channel\" and \"tcpdump_expression\". In case keys are missed we will take parent value if parent values are not set we will use default value", "type": "object"}, "band": {"$ref": "#/components/schemas/capture_scan_band", "description": "Radio band to capture for scan radio packets"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth", "description": "Channel bandwidth to use for the scan radio packet capture"}, "channel": {"default": 1, "description": "Specify the channel value where scan PCAP has to be started, default value gets applied when user provides wrong values", "examples": [1], "type": "integer"}, "client_mac": {"description": "Client MAC address used to filter the scan radio packet capture", "examples": ["38f9d3972ff1"], "type": ["string", "null"]}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_scan_format", "description": "Output format for the scan radio packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "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.", "examples": ["tcp port 80"], "type": "string"}, "type": {"$ref": "#/components/schemas/capture_scan_type", "description": "Packet capture type discriminator for scan radio captures"}, "width": {"description": "Specify the bandwidth value with respect to the channel.", "type": "string"}}, "required": ["type"], "type": "object"}, "capture_scan_aps": {"additionalProperties": false, "description": "Property key is the AP MAC address (e.g. \"5c5b35000001\"). All optionals, parent parameters will be used if not defined", "properties": {"band": {"$ref": "#/components/schemas/capture_scan_aps_band", "description": "Radio band on which to start the scan capture"}, "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"}, "capture_scan_aps_band": {"default": "24", "description": "Only Single value allowed. enum: `24`, `5`, `6`", "enum": ["24", "5", "6"], "type": "string"}, "capture_scan_band": {"default": "5", "description": "Only Single value allowed, default value gets applied when user provides wrong values. enum: `24`, `5`, `6`", "enum": ["24", "5", "6"], "examples": ["24"], "type": ["string", "null"]}, "capture_scan_format": {"default": "pcap", "description": "Output format for the scan radio packet capture. enum: `pcap`, `stream`", "enum": ["pcap", "stream"], "examples": ["stream"], "type": "string"}, "capture_scan_type": {"description": "Packet capture type discriminator for scan radio captures. enum: `scan`", "enum": ["scan"], "examples": ["scan"], "type": "string"}, "capture_site": {"description": "Packet capture request payload for site-level captures", "discriminator": {"mapping": {"client": "#/components/schemas/capture_client", "gateway": "#/components/schemas/capture_gateway", "new_assoc": "#/components/schemas/capture_new_assoc", "radiotap": "#/components/schemas/capture_radiotap", "radiotap,wired": "#/components/schemas/capture_radiotapwired", "scan": "#/components/schemas/capture_scan", "switch": "#/components/schemas/capture_switch", "wired": "#/components/schemas/capture_wired", "wireless": "#/components/schemas/capture_wireless"}, "propertyName": "type"}, "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": {"additionalProperties": false, "description": "Initiate a Switch (Junos) Packet Capture", "properties": {"duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_switch_format", "description": "Output format for the switch packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ports": {"$ref": "#/components/schemas/capture_switch_ports", "description": "Switch ports to include in the packet capture"}, "switches": {"additionalProperties": {"$ref": "#/components/schemas/capture_switch_switches"}, "description": "Property key is the switch MAC address", "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.", "examples": ["port 443"], "type": "string"}, "type": {"$ref": "#/components/schemas/capture_switch_type", "description": "Packet capture type discriminator for switch captures"}}, "required": ["type", "switches"], "type": "object"}, "capture_switch_format": {"default": "stream", "description": "Output format for the switch packet capture. enum: `stream`", "enum": ["stream"], "type": "string"}, "capture_switch_ports": {"additionalProperties": {"$ref": "#/components/schemas/capture_switch_ports_tcpdump_expression"}, "description": "Property key is the port name. 6 ports max per switch supported, or 5 max with irb port auto-included into capture request", "type": "object"}, "capture_switch_ports_tcpdump_expression": {"additionalProperties": false, "description": "Per-port tcpdump filter for a switch packet capture", "properties": {"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.", "examples": ["port 443"], "type": "string"}}, "type": "object"}, "capture_switch_switches": {"additionalProperties": false, "description": "Switch-specific packet capture settings keyed under a switch MAC address", "properties": {"ports": {"$ref": "#/components/schemas/capture_switch_ports", "description": "Switch ports to include in the capture, keyed by port ID"}}, "type": "object"}, "capture_switch_type": {"description": "Packet capture type discriminator for switch captures. enum: `switch`", "enum": ["switch"], "examples": ["switch"], "type": "string"}, "capture_tcpdump_expression": {"description": "tcpdump filter expression applied to packet capture traffic", "examples": ["tcp port 80"], "type": ["string", "null"]}, "capture_wired": {"additionalProperties": false, "description": "Initiate a Wired Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to target the wired packet capture", "examples": [null], "type": ["string", "null"]}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_wired_format", "description": "Output format for the wired packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "tcpdump_expression": {"$ref": "#/components/schemas/capture_tcpdump_expression", "description": "Filter expression applied to the wired packet capture"}, "type": {"$ref": "#/components/schemas/capture_wired_type", "description": "Packet capture type discriminator for wired captures"}}, "required": ["type"], "type": "object"}, "capture_wired_format": {"default": "pcap", "description": "pcap format. enum: `pcap`, `stream`", "enum": ["pcap", "stream"], "type": "string"}, "capture_wired_type": {"description": "Packet capture type discriminator for wired captures. enum: `wired`", "enum": ["wired"], "examples": ["wired"], "type": "string"}, "capture_wireless": {"additionalProperties": false, "description": "Initiate a Wireless Packet Capture", "properties": {"ap_mac": {"description": "AP MAC address used to target the wireless packet capture", "examples": [null], "type": ["string", "null"]}, "band": {"$ref": "#/components/schemas/capture_wireless_band", "description": "Radio band to capture for wireless packets"}, "duration": {"$ref": "#/components/schemas/capture_duration", "description": "Packet capture duration, in seconds"}, "format": {"$ref": "#/components/schemas/capture_wireless_format", "description": "Output format for the wireless packet capture"}, "max_pkt_len": {"$ref": "#/components/schemas/capture_max_pkt_length", "description": "Maximum number of bytes captured from each packet"}, "num_packets": {"$ref": "#/components/schemas/capture_num_packets", "description": "Maximum number of packets to capture; use 0 for unlimited"}, "ssid": {"description": "Wireless network SSID used to filter the packet capture", "type": "string"}, "type": {"$ref": "#/components/schemas/capture_wireless_type", "description": "Packet capture type discriminator for wireless captures"}, "wlan_id": {"description": "WLAN identifier used to filter the wireless packet capture", "format": "uuid", "type": "string"}}, "required": ["type"], "type": "object"}, "capture_wireless_band": {"default": "24", "description": "enum: `24`, `5`, `6`", "enum": ["24", "5", "6"], "type": "string"}, "capture_wireless_format": {"default": "pcap", "description": "pcap format. enum: `pcap`, `stream`", "enum": ["pcap", "stream"], "type": "string"}, "capture_wireless_type": {"description": "Packet capture type discriminator for wireless captures. enum: `wireless`", "enum": ["wireless"], "examples": ["wireless"], "type": "string"}, "claim_activation": {"description": "Request to claim organization licenses or activation codes", "properties": {"code": {"description": "Activation or license claim code to redeem", "type": "string"}, "device_type": {"$ref": "#/components/schemas/device_type_default_ap", "description": "If only intended to claim a certain device type, specify it here"}, "type": {"$ref": "#/components/schemas/claim_type", "description": "Claim scope, such as all, inventory, or license"}}, "required": ["code", "type"], "type": "object"}, "claim_activation_async": {"description": "Request to schedule an asynchronous inventory claim", "properties": {"code": {"description": "Activation code to claim", "type": "string"}, "device_type": {"$ref": "#/components/schemas/device_type_default_ap", "description": "If only intended to claim a certain device type, specify it here"}, "type": {"$ref": "#/components/schemas/claim_type_async", "description": "Claim scope; `all` claims licenses synchronously and queues inventory, `inventory` queues inventory only"}}, "required": ["code", "type"], "type": "object"}, "claim_codes": {"description": "List of Claim Codes", "examples": [["6JG8E-PTFV2-A9Z2N", "DVH4V-SNMSZ-PDXBR"]], "items": {"description": "Claim code", "type": "string"}, "type": "array", "uniqueItems": true}, "claim_type": {"default": "all", "description": "what to claim. enum: `all`, `inventory`, `license`", "enum": ["all", "inventory", "license"], "type": "string"}, "claim_type_async": {"description": "Claim scope for async inventory claiming. enum: `all`, `inventory`", "enum": ["all", "inventory"], "type": "string"}, "clear_dot1x_session": {"description": "Request body for clearing dot1x sessions on switch ports", "properties": {"ports": {"$ref": "#/components/schemas/clear_dot1x_session_ports", "description": "Port IDs whose dot1x sessions should be cleared"}}, "type": "object"}, "clear_dot1x_session_ports": {"description": "List of port IDs where the dot1x session must be cleared. Use `all` to clear sessions on all ports.", "examples": [["ge-0/0/0", "ge-0/0/1"]], "items": {"type": "string"}, "type": "array"}, "clear_policy_hit_count": {"description": "Request body for clearing hit counters on an application policy", "properties": {"policy_name": {"description": "Application policy name whose hit counters should be cleared", "type": "string"}}, "required": ["policy_name"], "type": "object"}, "client_cert_serial_numbers": {"description": "Client certificate serial numbers targeted by a certificate operation", "examples": [{"serial_numbers": ["13 00 13 03 23 EE D5 84 01"]}], "properties": {"serial_numbers": {"$ref": "#/components/schemas/strings", "description": "Certificate serial numbers to revoke"}}, "type": "object"}, "client_info_source": {"description": "source from where the client was learned (lldp, mac). enum: `lldp`, `mac`", "enum": ["lldp", "mac"], "type": "string"}, "client_key_mgmt": {"description": "Key management protocol used for the latest authentication. enum: `WPA2-PSK`, `WPA2-PSK/CCMP`, `WPA2-PSK-FT`, `WPA2-PSK-SHA256`, `WPA3-EAP-SHA256`, `WPA3-EAP-SHA256/CCMP`, `WPA3-EAP-FT/GCMP256`, `WPA3-SAE-FT`, `WPA3-SAE-PSK`", "enum": ["WPA2-PSK", "WPA2-PSK/CCMP", "WPA2-PSK-FT", "WPA2-PSK-SHA256", "WPA3-EAP-SHA256", "WPA3-EAP-SHA256/CCMP", "WPA3-EAP-FT/GCMP256", "WPA3-SAE-FT", "WPA3-SAE-PSK"], "examples": ["WPA2-PSK"], "type": "string"}, "client_nac": {"additionalProperties": false, "description": "NAC client authentication and access state", "properties": {"ap": {"$ref": "#/components/schemas/nac_client_ap", "description": "Observed AP MAC addresses for the NAC client during the query duration"}, "auth_type": {"$ref": "#/components/schemas/nac_auth_type", "description": "Authentication method used by the NAC client"}, "cert_cn": {"$ref": "#/components/schemas/nac_cert_cn", "description": "Certificate common names observed for the client during the query duration"}, "cert_issuer": {"$ref": "#/components/schemas/nac_cert_issuer", "description": "Certificate issuers observed for the client during the query duration"}, "cert_serial": {"$ref": "#/components/schemas/nac_cert_serial", "description": "Certificate serial numbers observed for the client during the query duration"}, "cert_subject": {"$ref": "#/components/schemas/nac_cert_subject", "description": "Certificate subjects observed for the client during the query duration"}, "client_ip": {"$ref": "#/components/schemas/nac_client_ip", "description": "Client IP addresses observed during the query duration"}, "device_mac": {"$ref": "#/components/schemas/nac_device_mac", "description": "MAC address of the AP or switch handling the NAC client session"}, "edr_managed": {"description": "Whether the NAC client is managed by an EDR provider", "type": "boolean"}, "edr_provider": {"$ref": "#/components/schemas/edr_provider", "description": "EDR provider associated with the NAC client"}, "edr_status": {"$ref": "#/components/schemas/edr_status", "description": "EDR health status reported for the NAC client"}, "group": {"description": "User group associated with the NAC client", "type": "string"}, "idp_id": {"description": "Identity Provider identifier used during NAC authentication", "type": "string"}, "idp_role": {"$ref": "#/components/schemas/strings", "description": "Identity Provider roles or groups returned for the NAC client"}, "last_ap": {"$ref": "#/components/schemas/last_ap", "description": "Most recent AP MAC address used by the NAC client"}, "last_cert_cn": {"$ref": "#/components/schemas/last_cert_cn", "description": "Most recent certificate common name used by the NAC client"}, "last_cert_expiry": {"$ref": "#/components/schemas/last_cert_expiry", "description": "Most recent certificate expiration timestamp for the NAC client"}, "last_cert_issuer": {"$ref": "#/components/schemas/last_cert_issuer", "description": "Most recent certificate issuer used by the NAC client"}, "last_cert_serial": {"$ref": "#/components/schemas/last_cert_serial", "description": "Most recent certificate serial number used by the NAC client"}, "last_cert_subject": {"$ref": "#/components/schemas/last_cert_subject", "description": "Most recent certificate subject used by the NAC client"}, "last_client_ip": {"$ref": "#/components/schemas/last_client_ip", "description": "Most recent client IP address observed for the NAC client"}, "last_nacrule_id": {"$ref": "#/components/schemas/last_nacrule_id", "description": "Most recent NAC policy rule identifier used for authentication"}, "last_nacrule_name": {"$ref": "#/components/schemas/last_nacrule_name", "description": "Most recent NAC policy rule name used for authentication"}, "last_nas_vendor": {"$ref": "#/components/schemas/last_nas_vendor", "description": "Most recent NAS vendor reported for the NAC client"}, "last_port_id": {"$ref": "#/components/schemas/last_port_id", "description": "Most recent port identifier used by the NAC client"}, "last_ssid": {"$ref": "#/components/schemas/last_ssid", "description": "Most recent SSID used by the NAC client"}, "last_status": {"$ref": "#/components/schemas/nac_client_last_status", "description": "Most recent NAC authentication status for the client"}, "last_username": {"$ref": "#/components/schemas/last_username", "description": "Most recent username presented by the NAC client"}, "last_vlan": {"$ref": "#/components/schemas/last_vlan", "description": "Most recent VLAN associated with the NAC client"}, "mac": {"$ref": "#/components/schemas/nac_client_mac", "description": "Client MAC address for the NAC record"}, "nacrule_id": {"$ref": "#/components/schemas/nac_nacrule_id", "description": "NAC policy rule identifiers used during the query duration"}, "nacrule_matched": {"description": "Whether a NAC policy rule matched the client", "type": "boolean"}, "nacrule_name": {"$ref": "#/components/schemas/nac_nacrule_name", "description": "NAC policy rule names used during the query duration"}, "nas_ip": {"description": "IP address of the NAS device used for authentication", "type": "string"}, "nas_vendor": {"$ref": "#/components/schemas/nac_nas_vendor", "description": "NAS vendors observed for the client during the query duration"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the NAC client"}, "port_id": {"$ref": "#/components/schemas/nac_port_id", "description": "Port identifiers used by the NAC client during the query duration"}, "random_mac": {"$ref": "#/components/schemas/random_mac", "description": "Whether the NAC client used a randomized MAC address"}, "resp_attrs": {"$ref": "#/components/schemas/resp_attrs", "description": "RADIUS response attributes returned for the NAC client"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the NAC client"}, "ssid": {"$ref": "#/components/schemas/nac_ssid", "description": "Wireless SSIDs used by the NAC client during the query duration"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the NAC client record was observed"}, "type": {"$ref": "#/components/schemas/nac_access_type", "description": "Network access type for the NAC client"}, "usermac_label": {"$ref": "#/components/schemas/strings", "description": "User MAC labels associated with the NAC client"}, "username": {"$ref": "#/components/schemas/nac_client_username", "description": "User identities associated with the NAC client authentication"}, "vlan": {"$ref": "#/components/schemas/nac_client_vlan", "description": "Network VLANs associated with the NAC client during authentication"}}, "type": "object"}, "client_wireless": {"additionalProperties": false, "description": "Wireless client record observed during a client search or stats query", "properties": {"ap": {"$ref": "#/components/schemas/client_wireless_ap", "description": "Observed AP MAC addresses for the wireless client during the query duration"}, "app_version": {"$ref": "#/components/schemas/client_wireless_app_version", "description": "Marvis Client application versions reported by the wireless client during the query duration"}, "band": {"description": "Wi-Fi radio band used by the wireless client", "examples": ["5"], "type": "string"}, "device": {"$ref": "#/components/schemas/client_wireless_device", "description": "Detected device types for the wireless client during the query duration"}, "ftc": {"description": "Whether fast transition information is reported for the wireless client", "type": "boolean"}, "hardware": {"description": "Only when client has the Marvis Client app running. Type of Wi-Fi adapter", "examples": ["Apple Wi-Fi adapter"], "type": "string"}, "hostname": {"$ref": "#/components/schemas/client_wireless_hostname", "description": "Detected hostnames for the wireless client during the query duration"}, "ip": {"$ref": "#/components/schemas/client_wireless_ip", "description": "Detected IP addresses for the wireless client during the query duration"}, "last_ap": {"$ref": "#/components/schemas/last_ap", "description": "Most recent AP MAC address used by the wireless client"}, "last_device": {"$ref": "#/components/schemas/last_device", "description": "Most recent device type detected for the wireless client"}, "last_firmware": {"description": "Only when client has the Marvis Client app running. Same as \"firmware\"", "examples": ["wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675"], "type": "string"}, "last_hostname": {"description": "Latest hostname we detected for the client", "examples": ["hostname-a"], "type": "string"}, "last_ip": {"$ref": "#/components/schemas/last_client_ip", "description": "Most recent IP address detected for the wireless client"}, "last_model": {"description": "Only when client has the Marvis Client app running. latest client hardware model we detected for the client", "examples": ["MBP 16\\\" M1 2021"], "type": "string"}, "last_os": {"description": "Only when client has the Marvis Client app running. Latest version of OS Type we detected for the client", "examples": ["Sonoma"], "type": "string"}, "last_os_version": {"description": "Only when client has the Marvis Client app running. Latest version of OS Version we detected for the client", "examples": ["14.4.1 (Build 23E224)"], "type": "string"}, "last_psk_id": {"description": "Only for PPSK authentication. Latest PPSK ID used by the client", "examples": ["abf7dc5c-bb51-4bb7-93b6-5547400ffe11"], "format": "uuid", "type": "string"}, "last_psk_name": {"description": "Only for PPSK authentication. Latest PPSK Name used by the client", "examples": ["iot"], "type": "string"}, "last_ssid": {"$ref": "#/components/schemas/last_username", "description": "Most recent SSID used by the wireless client"}, "last_username": {"description": "Most recent username associated with the wireless client", "type": "string"}, "last_vlan": {"$ref": "#/components/schemas/last_vlan", "description": "Most recent VLAN associated with the wireless client"}, "last_wlan_id": {"description": "ID of the latest SSID (WLAN) the client is/was connected to", "examples": ["e5d67b07-aae8-494b-8584-cbc20c8110aa"], "format": "uuid", "type": "string"}, "mac": {"description": "Client MAC address for the wireless client", "examples": ["bcd074000000"], "type": "string"}, "mfg": {"description": "Manufacturer of the client hardware (MAC OUI based)", "examples": ["Apple"], "type": "string"}, "model": {"description": "Only when client has the Marvis Client app running. Client hardware model", "examples": ["MBP 16\\\" M1 2021"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the wireless client"}, "os": {"$ref": "#/components/schemas/client_wireless_os", "description": "Operating systems detected for the wireless client during the query duration"}, "os_version": {"$ref": "#/components/schemas/client_wireless_os_version", "description": "Operating system versions detected for the wireless client during the query duration"}, "protocol": {"description": "802.11 protocol amendment used by the wireless client", "examples": ["ax"], "type": "string"}, "psk_id": {"$ref": "#/components/schemas/client_wireless_psk_id", "description": "PPSK identifiers used by the wireless client during the query duration"}, "psk_name": {"$ref": "#/components/schemas/client_wireless_psk_name", "description": "PPSK names used by the wireless client during the query duration"}, "random_mac": {"description": "Whether the wireless client uses a randomized MAC address", "type": "boolean"}, "sdk_version": {"$ref": "#/components/schemas/client_wireless_sdk_version", "description": "Marvis Client SDK versions reported by the wireless client during the query duration"}, "site_id": {"description": "Mist Site ID where the client is connected", "examples": ["25ff5219-9be7-4db9-907d-0c9b60445147"], "format": "uuid", "type": "string"}, "site_ids": {"$ref": "#/components/schemas/client_wireless_site_ids", "description": "Site identifiers where the wireless client was observed during the query duration"}, "ssid": {"$ref": "#/components/schemas/client_wireless_ssid", "description": "Wireless network SSIDs used by the client during the query duration"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the wireless client record was observed"}, "username": {"$ref": "#/components/schemas/client_wireless_username", "description": "User identities associated with the wireless client during the query duration"}, "vlan": {"$ref": "#/components/schemas/client_wireless_vlan", "description": "Network VLANs associated with the wireless client during the query duration"}, "wlan_id": {"$ref": "#/components/schemas/client_wireless_wlan_id", "description": "WLAN identifiers used by the wireless client during the query duration"}}, "type": "object"}, "client_wireless_ap": {"description": "List of AP MAC addresses the client was connected to", "examples": [["a83a79a947ee", "003e73170b4c"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_app_version": {"description": "Only when client has the Marvis Client app running. List of the versions of the Marvis Client", "examples": [["0.100.3"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_device": {"description": "Only when client has the Marvis Client app running. List of the type of device type detected", "examples": [["Mac"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_hostname": {"description": "List of hostname detected for this client", "examples": [["hostname-a", "hostname-b"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_ip": {"description": "List if the IP addresses detected for this client", "examples": [["10.5.23.43", "192.168.0.2"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_os": {"description": "Only when client is having the Marvis Client app running. List of OS detected for the client", "examples": [["Sonoma"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_os_version": {"description": "Only when client is having the Marvis Client app running. List of OS version detected for the client", "examples": [["14.4.1 (Build 23E224)"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_psk_id": {"description": "List of IDs of the PPSK used by the client", "examples": [["abf7dc5c-bb51-4bb7-93b6-5547400ffe11"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "client_wireless_psk_name": {"description": "List of names of the PPSK used by the client", "examples": [["iot"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_sdk_version": {"description": "Only when client has the Marvis Client app running. List of Marvis Client SDK version detected for the client", "examples": [["0.100.3"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_site_ids": {"description": "List of Mist Site IDs where the client was connected", "examples": [["25ff5219-9be7-4db9-907d-0c9b60445147"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "client_wireless_ssid": {"description": "List of the WLAN names the client was connected to", "examples": [["IoT SSID"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_username": {"description": "Only for 802.1X authentication. List of usernames used by the client", "examples": [["user@corp.com"]], "items": {"type": "string"}, "type": "array"}, "client_wireless_vlan": {"description": "List of vlans that have been assigned to the client", "examples": [[10]], "items": {"type": "integer"}, "type": "array"}, "client_wireless_wlan_id": {"description": "List of IDs of WLANs the client was connected to", "examples": [["e5d67b07-aae8-494b-8584-cbc20c8110aa"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "coa_server": {"additionalProperties": false, "description": "RADIUS Change of Authorization (CoA) server settings", "properties": {"disable_event_timestamp_check": {"default": false, "description": "Whether to disable Event-Timestamp Check", "type": "boolean"}, "enabled": {"default": false, "description": "Whether this RADIUS CoA server is enabled", "type": "boolean"}, "ip": {"description": "Server IPv4 address for RADIUS CoA messages", "examples": ["1.2.3.4"], "format": "ipv4", "type": "string"}, "port": {"$ref": "#/components/schemas/radius_coa_port", "description": "UDP port used to send RADIUS CoA messages to the server"}, "secret": {"description": "Shared secret used to authenticate RADIUS CoA messages", "examples": ["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"}, "type": "array"}, "code_string": {"description": "Request body containing a single authorization or claim code", "properties": {"code": {"description": "Request-supplied authorization or claim code value", "type": "string"}}, "required": ["code"], "type": "object"}, "config_device": {"description": "Device configuration object for an AP, switch, or gateway", "discriminator": {"mapping": {"ap": "#/components/schemas/device_ap", "gateway": "#/components/schemas/device_gateway", "switch": "#/components/schemas/device_switch"}, "propertyName": "type"}, "oneOf": [{"$ref": "#/components/schemas/device_ap"}, {"$ref": "#/components/schemas/device_switch"}, {"$ref": "#/components/schemas/device_gateway"}]}, "config_devices": {"description": "List of device configuration objects", "items": {"$ref": "#/components/schemas/config_device"}, "type": "array"}, "config_switch_local_accounts": {"additionalProperties": {"$ref": "#/components/schemas/config_switch_local_accounts_user"}, "description": "Property key is the user name. For Local user authentication", "type": "object"}, "config_switch_local_accounts_user": {"additionalProperties": false, "description": "Local switch user account credentials and access role", "properties": {"password": {"description": "Local password for the switch user account", "examples": ["Juniper123"], "format": "password", "type": "string"}, "role": {"$ref": "#/components/schemas/config_switch_local_accounts_user_role", "description": "Access role granted to the local switch user account"}}, "type": "object"}, "config_switch_local_accounts_user_role": {"default": "none", "description": "enum: `admin`, `helpdesk`, `none`, `read`", "enum": ["admin", "helpdesk", "none", "read"], "type": "string"}, "config_vc_port_member": {"additionalProperties": false, "description": "Virtual Chassis member and port list for a VC port operation", "properties": {"member": {"description": "Virtual Chassis member ID whose VC ports are being configured", "type": "number"}, "vc_ports": {"$ref": "#/components/schemas/strings", "description": "Port names to configure as Virtual Chassis ports on the member"}}, "required": ["member"], "type": "object"}, "const_alarm_definition": {"additionalProperties": false, "description": "Alarm type definition returned by the constants API", "properties": {"display": {"description": "Description of the alarm type", "examples": ["Device offline"], "type": "string"}, "example": {"additionalProperties": true, "description": "Sample alarm payload returned for this alarm type", "examples": [{"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": {"$ref": "#/components/schemas/const_alarm_definition_fields", "description": "Alarm payload fields available for this alarm type"}, "group": {"description": "Alarm group to which this definition belongs", "examples": ["infrastructure"], "type": "string"}, "key": {"description": "Alarm type key used in event and alarm payloads", "examples": ["device_down"], "type": "string"}, "marvis_suggestion_category": {"description": "Marvis defined category to which the alarm belongs", "type": "string"}, "severity": {"description": "Alarm severity level for this definition", "examples": ["warn"], "type": "string"}}, "required": ["key", "display", "group", "severity", "fields"], "type": "object"}, "const_alarm_definition_fields": {"description": "List of fields available in an alarm details payload (in REST APIs & Webhooks); e.g. `aps`, `switches`, `gateways`, `hostnames`, `ssids`, `bssids`", "examples": [["aps", "hostnames"]], "items": {"type": "string"}, "type": "array"}, "const_alarm_definitions": {"description": "Alarm type definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_alarm_definition"}, "type": "array"}, "const_ap_channel": {"additionalProperties": false, "description": "Country and regulatory-domain channel capabilities for AP radios", "properties": {"band24_40mhz_allowed": {"description": "Whether 40 MHz channels are allowed on the 2.4 GHz band", "examples": [true], "type": "boolean"}, "band24_channels": {"$ref": "#/components/schemas/ap_channel_band24_channels", "description": "Allowed 2.4 GHz channels for this country or regulatory domain"}, "band24_enabled": {"description": "Whether the 2.4 GHz band is enabled for this country or regulatory domain", "examples": [true], "type": "boolean"}, "band5_channels": {"$ref": "#/components/schemas/ap_channel_band5_channels", "description": "Allowed 5 GHz channels for this country or regulatory domain"}, "band5_enabled": {"description": "Whether the 5 GHz band is enabled for this country or regulatory domain", "examples": [true], "type": "boolean"}, "band6_channels": {"$ref": "#/components/schemas/ap_channel_band6_channels", "description": "Allowed 6 GHz channels for this country or regulatory domain"}, "band6_enabled": {"description": "Whether the 6 GHz band is enabled for this country or regulatory domain", "examples": [true], "type": "boolean"}, "certified": {"description": "Whether AP operation is certified for this country or regulatory domain", "examples": [true], "type": "boolean"}, "code": {"description": "Country code, ISO 3166-1 numeric", "examples": [840], "type": "integer"}, "dfs_ok": {"description": "Whether DFS channels are allowed in this country or regulatory domain", "examples": [true], "type": "boolean"}, "key": {"description": "Country code, in two-character", "examples": ["US"], "type": "string"}, "name": {"description": "Country or regulatory-domain display name", "examples": ["United States"], "type": "string"}, "uses": {"description": "Regulatory ruleset used for AP channel validation", "examples": ["US_FCC"], "type": "string"}}, "type": "object"}, "const_ap_esl_version": {"additionalProperties": false, "description": "Supported Electronic Shelf Label (ESL) version for an AP model", "properties": {"esl_version": {"description": "Electronic Shelf Label (ESL) package version supported by the AP model", "examples": ["2.5.1"], "readOnly": true, "type": "string"}, "model": {"description": "AP model that supports the listed ESL version", "examples": ["AP34"], "readOnly": true, "type": "string"}}, "type": "object"}, "const_ap_esl_versions": {"description": "Supported Electronic Shelf Label versions by AP model", "items": {"$ref": "#/components/schemas/const_ap_esl_version"}, "type": "array"}, "const_ap_led": {"additionalProperties": false, "description": "AP LED status and `last_trouble` code definition returned by the constants API", "properties": {"code": {"description": "Numeric LED status and `last_trouble` code reported by the AP", "examples": ["01"], "type": "string"}, "description": {"description": "Human-readable explanation of the AP status", "examples": ["LED not working"], "type": "string"}, "key": {"description": "Machine-readable AP status key", "examples": ["LED_FAILURE"], "type": "string"}, "name": {"description": "Display name for the AP status", "examples": ["LED Failure"], "type": "string"}}, "required": ["code", "key", "name", "description"], "type": "object"}, "const_ap_leds": {"description": "AP LED status and trouble-code definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_ap_led"}, "type": "array"}, "const_app_category_definition": {"additionalProperties": false, "description": "Application category definition returned by the constants API", "properties": {"display": {"description": "Description of the app category", "examples": ["Images"], "type": "string"}, "filters": {"$ref": "#/components/schemas/const_app_category_definition_filters", "description": "Platform-specific application signatures included in this category"}, "includes": {"$ref": "#/components/schemas/const_app_category_definition_includes", "description": "Application categories included by this aggregate category"}, "key": {"description": "Machine-readable application category key", "examples": ["Images"], "type": "string"}}, "required": ["key", "display"], "type": "object"}, "const_app_category_definition_filters": {"additionalProperties": false, "description": "Platform-specific application category filters", "examples": [{"srx": ["Enhanced_Images_Media", "Enhanced_Web_Images", "Enhanced_Image_Servers"]}], "properties": {"srx": {"$ref": "#/components/schemas/strings", "description": "Application signature names for SRX platforms included in this category"}, "ssr": {"$ref": "#/components/schemas/strings", "description": "Application identifiers for SSR platforms included in this category"}}, "type": "object"}, "const_app_category_definition_includes": {"description": "List of other App Categories contained by this one", "items": {"type": "string"}, "type": "array"}, "const_app_category_definitions": {"description": "Application category definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_app_category_definition"}, "type": "array"}, "const_app_subcategory_definition": {"additionalProperties": false, "description": "Application subcategory definition returned by the constants API", "properties": {"display": {"description": "Description of the app subcategory", "examples": ["Office Document"], "type": "string"}, "key": {"description": "Machine-readable application subcategory key", "examples": ["Office_Documents"], "type": "string"}, "traffic_type": {"description": "Type of traffic (QoS) of the app subcategory", "examples": ["Images"], "type": "string"}}, "required": ["key", "display", "traffic_type"], "type": "object"}, "const_app_subcategory_definitions": {"description": "Application subcategory definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_app_subcategory_definition"}, "type": "array"}, "const_application_definition": {"additionalProperties": false, "description": "Application definition recognized by Juniper Devices", "properties": {"app_id": {"description": "Whether an AppID is defined for this application", "type": "boolean"}, "app_image_url": {"description": "URL of the application icon image, when one is available", "examples": ["\"\""], "type": "string"}, "app_probe": {"description": "Whether an application probe is available for this application", "type": "boolean"}, "category": {"description": "Application category key associated with this application", "examples": ["FileSharing"], "type": "string"}, "group": {"description": "Application group display name for this application", "examples": ["File Sharing"], "type": "string"}, "key": {"description": "Machine-readable key that identifies the application", "examples": ["dropbox"], "type": "string"}, "name": {"description": "Display name of the application", "examples": ["Dropbox"], "type": "string"}, "signature_based": {"description": "Whether this application is detected using signatures", "type": "boolean"}, "ssr_app_id": {"description": "Whether an SSR AppID is defined for this application", "type": "boolean"}}, "type": "object"}, "const_application_definitions": {"description": "Application definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_application_definition"}, "type": "array"}, "const_countries": {"description": "Country definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_country"}, "type": "array"}, "const_country": {"additionalProperties": false, "description": "Country definition returned by the constants API", "properties": {"alpha2": {"description": "Country code, in two-character", "examples": ["FR"], "type": "string"}, "certified": {"description": "Whether this country is certified for use in Mist APs", "examples": [true], "type": "boolean"}, "name": {"description": "Human-readable country name for display", "examples": ["France"], "type": "string"}, "numeric": {"description": "Country code, ISO 3166-1 numeric", "examples": [250], "type": "number"}}, "required": ["alpha2", "numeric", "name", "certified"], "type": "object"}, "const_device_ap": {"additionalProperties": false, "description": "AP model capability definition returned by the constants API", "properties": {"ap_type": {"description": "Internal AP platform type identifier", "examples": ["jewel"], "type": "string"}, "band24": {"$ref": "#/components/schemas/const_device_ap_band24", "description": "2.4 GHz radio capability limits for this AP model"}, "band5": {"$ref": "#/components/schemas/const_device_ap_band5", "description": "5 GHz radio capability limits for this AP model"}, "band6": {"$ref": "#/components/schemas/const_device_ap_band6", "description": "6 GHz radio capability limits for this AP model"}, "band_24_usages": {"$ref": "#/components/schemas/const_device_ap_band_24_usages", "description": "Supported RF band usages for the 2.4 GHz radio on this AP model"}, "ce_dfs_ok": {"description": "Whether DFS operation is allowed for this AP model under CE rules", "examples": [true], "type": "boolean"}, "cisco_pace": {"description": "Whether the AP model supports Cisco PACE interoperability", "type": "boolean"}, "description": {"description": "Product description for the AP model", "examples": ["AP-45"], "type": "string"}, "disallowed_channels": {"additionalProperties": {"additionalProperties": {"$ref": "#/components/schemas/const_device_ap_disallowed_channels"}, "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\")", "type": "object"}, "display": {"description": "User-facing model name shown for the AP", "examples": ["AP45"], "type": "string"}, "extio": {"additionalProperties": {"$ref": "#/components/schemas/const_device_ap_extios"}, "description": "Property key is the GPIO port name (e.g. \"D0\", \"A1\")", "type": "object"}, "fcc_dfs_ok": {"description": "Whether DFS operation is allowed for this AP model under FCC rules", "examples": [true], "type": "boolean"}, "has_11ax": {"description": "Whether the AP model supports 802.11ax", "type": "boolean"}, "has_compass": {"description": "Whether the AP model includes a compass sensor", "examples": [false], "type": "boolean"}, "has_ext_ant": {"description": "Whether the AP model supports external antennas", "type": "boolean"}, "has_extio": {"description": "Whether the AP model exposes external I/O ports", "examples": [false], "type": "boolean"}, "has_height": {"description": "Whether mounting height can be configured for this AP model", "examples": [false], "type": "boolean"}, "has_module_port": {"description": "Whether the AP model includes a module port", "type": "boolean"}, "has_poe_out": {"description": "Whether the AP model supports PoE output", "examples": [true], "type": "boolean"}, "has_scanning_radio": {"description": "Whether the AP model has scanning-radio capability", "examples": [true], "type": "boolean"}, "has_selectable_radio": {"description": "Whether the AP model has selectable radio modes", "examples": [true], "type": "boolean"}, "has_usb": {"description": "Whether the AP model includes a USB port", "type": "boolean"}, "has_vble": {"description": "Whether the AP model supports virtual BLE (vBLE)", "examples": [true], "type": "boolean"}, "has_wifi_band24": {"description": "Whether the AP model supports 2.4 GHz Wi-Fi", "examples": [true], "type": "boolean"}, "has_wifi_band5": {"description": "Whether the AP model supports 5 GHz Wi-Fi", "examples": [true], "type": "boolean"}, "has_wifi_band6": {"description": "Whether the AP model supports 6 GHz Wi-Fi", "examples": [true], "type": "boolean"}, "max_poe_out": {"description": "Maximum PoE-out power budget supported by the AP model, in milliwatts", "examples": [15400], "type": "integer"}, "max_wlans": {"description": "Maximum number of WLANs supported by this AP model", "type": "integer"}, "model": {"description": "AP model identifier for this capability definition", "examples": ["AP45"], "type": "string"}, "other_dfs_ok": {"description": "Whether DFS operation is allowed for this AP model in other regulatory domains", "examples": [true], "type": "boolean"}, "outdoor": {"description": "Whether the AP model is rated for outdoor deployment", "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\", ...)", "examples": [{"r0": "6", "r1": "5", "r2": "24"}], "type": "object"}, "shared_scanning_radio": {"description": "Whether scanning-radio capability shares a radio with client service", "type": "boolean"}, "type": {"$ref": "#/components/schemas/const_device_type_ap", "description": "Device type for this AP model definition"}, "unmanaged": {"description": "Whether this AP model is listed as unmanaged in the constants catalog", "type": "boolean"}, "vble": {"$ref": "#/components/schemas/const_device_ap_vble", "description": "Virtual BLE (vBLE) capability settings for this AP model"}}, "required": ["ap_type", "type"], "type": "object"}, "const_device_ap_band24": {"additionalProperties": false, "description": "2.4 GHz radio capability limits for an AP model", "properties": {"band5_channels_op": {"description": "5 GHz channel set used when this radio operates on 5 GHz", "examples": ["low"], "type": "string"}, "max_clients": {"description": "Maximum client count supported on the 2.4 GHz radio", "examples": [128], "type": "integer"}, "max_power": {"description": "Maximum transmit power for the 2.4 GHz radio, in dBm", "examples": [19], "type": "integer"}, "min_power": {"description": "Minimum transmit power for the 2.4 GHz radio, in dBm", "examples": [8], "type": "integer"}}, "type": "object"}, "const_device_ap_band5": {"additionalProperties": false, "description": "5 GHz radio capability limits for an AP model", "properties": {"max_clients": {"description": "Maximum client count supported on the 5 GHz radio", "examples": [128], "type": "integer"}, "max_power": {"description": "Maximum transmit power for the 5 GHz radio, in dBm", "examples": [17], "type": "integer"}, "min_power": {"description": "Minimum transmit power for the 5 GHz radio, in dBm", "examples": [8], "type": "integer"}}, "type": "object"}, "const_device_ap_band6": {"additionalProperties": false, "description": "6 GHz radio capability limits for an AP model", "properties": {"max_clients": {"description": "Maximum client count supported on the 6 GHz radio", "examples": [128], "type": "integer"}, "max_power": {"description": "Maximum transmit power for the 6 GHz radio, in dBm", "examples": [17], "type": "integer"}, "min_power": {"description": "Minimum transmit power for the 6 GHz radio, in dBm", "examples": [8], "type": "integer"}}, "type": "object"}, "const_device_ap_band_24_usage": {"description": "enum: `24`, `5`, `6`", "enum": ["24", "5", "6"], "type": "string"}, "const_device_ap_band_24_usages": {"description": "Supported 2.4 GHz radio usage modes for AP models", "items": {"$ref": "#/components/schemas/const_device_ap_band_24_usage"}, "type": "array"}, "const_device_ap_disallowed_channels": {"description": "Disallowed RF channel definitions for AP device models", "items": {"type": "integer"}, "type": "array"}, "const_device_ap_extios": {"additionalProperties": false, "description": "External I/O port capabilities for an AP model", "properties": {"default_dir": {"$ref": "#/components/schemas/const_device_ap_extios_default_dir", "description": "Default direction for this external I/O port"}, "input": {"description": "Whether this external I/O port supports input mode", "type": "boolean"}, "output": {"description": "Whether this external I/O port supports output mode", "type": "boolean"}}, "type": "object"}, "const_device_ap_extios_default_dir": {"description": "Default direction for this external I/O port. enum: `IN`, `OUT`", "enum": ["IN", "OUT"], "type": "string"}, "const_device_ap_vble": {"additionalProperties": false, "description": "Virtual BLE (vBLE) capability settings for an AP model", "properties": {"beacon_rate": {"description": "Advertisement rate for the virtual BLE beacon", "examples": [4], "type": "integer"}, "beams": {"description": "Number of virtual BLE beams supported by the AP model", "examples": [9], "type": "integer"}, "power": {"description": "Transmit power for virtual BLE beacons, in dBm", "examples": [8], "type": "integer"}}, "type": "object"}, "const_device_gateway": {"additionalProperties": false, "description": "Gateway model capability definition returned by the constants API", "properties": {"defaults": {"$ref": "#/components/schemas/const_device_gateway_defaults", "description": "Default interface group mappings for this gateway model"}, "description": {"description": "Product description for the gateway model", "type": "string"}, "experimental": {"default": false, "description": "Whether this gateway model is marked experimental in the constants catalog", "type": "boolean"}, "fans_pluggable": {"default": true, "description": "Whether the gateway model has field-replaceable fans", "type": "boolean"}, "ha_node0_fpc": {"description": "FPC number used for node0 in HA deployments", "type": "integer"}, "ha_node1_fpc": {"description": "FPC number used for node1 in HA deployments", "type": "integer"}, "has_bgp": {"default": false, "description": "Whether the gateway model supports BGP", "type": "boolean"}, "has_fxp0": {"default": true, "description": "Whether the gateway model includes an fxp0 management interface", "type": "boolean"}, "has_ha_control": {"default": false, "description": "Whether the gateway model has a dedicated HA control port", "type": "boolean"}, "has_ha_data": {"default": false, "description": "Whether the gateway model has dedicated HA data ports", "type": "boolean"}, "has_irb": {"default": false, "description": "Whether the gateway model supports IRB interfaces", "type": "boolean"}, "has_poe_out": {"default": true, "description": "Whether the gateway model supports PoE output", "type": "boolean"}, "has_snapshot": {"default": true, "description": "Whether the gateway model supports configuration snapshots", "type": "boolean"}, "irb_disabled_by_default": {"default": false, "description": "Whether IRB interfaces are disabled by default on this gateway model", "type": "boolean"}, "model": {"description": "Gateway model identifier for this capability definition", "type": "string"}, "number_fans": {"description": "Number of fans in the gateway model", "type": "integer"}, "oc_device": {"default": false, "description": "Whether this gateway model is identified as an OpenConfig-managed device", "type": "boolean"}, "pic": {"$ref": "#/components/schemas/const_device_gateway_pic", "description": "Physical Interface Card port layout for this gateway model"}, "ports": {"$ref": "#/components/schemas/const_device_gateway_ports", "description": "Per-interface metadata for this gateway model"}, "sub_required": {"description": "Subscription type required for this gateway model", "type": "string"}, "t128_device": {"default": false, "description": "Whether this gateway model is a 128 Technology or SSR device", "type": "boolean"}, "type": {"$ref": "#/components/schemas/const_device_type_gateway", "description": "Device type for this gateway model definition"}}, "required": ["type"], "type": "object"}, "const_device_gateway_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\", ...)", "type": "object"}, "const_device_gateway_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", "type": "object"}, "const_device_gateway_ports": {"additionalProperties": false, "description": "Object Key is the interface name (e.g. \"ge-0/0/1\", ...)", "properties": {"display": {"description": "User-facing interface name for the gateway port", "type": "string"}, "pci_address": {"description": "PCI address for the gateway port", "type": "string"}, "speed": {"description": "Port speed for the gateway interface, in Mbps", "type": "integer"}}, "type": "object"}, "const_device_model": {"description": "Device model definition returned by the constants API", "discriminator": {"mapping": {"ap": "#/components/schemas/const_device_ap", "gateway": "#/components/schemas/const_device_switch", "switch": "#/components/schemas/const_device_gateway"}, "propertyName": "type"}, "oneOf": [{"$ref": "#/components/schemas/const_device_ap"}, {"$ref": "#/components/schemas/const_device_switch"}, {"$ref": "#/components/schemas/const_device_gateway"}]}, "const_device_models": {"description": "Device model definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_device_model"}, "type": "array"}, "const_device_switch": {"additionalProperties": false, "description": "Switch model capability definition returned by the constants API", "properties": {"alias": {"description": "Alternate model identifier for chassis-based switch definitions", "examples": ["EX4100-48P-CHAS"], "type": "string"}, "defaults": {"$ref": "#/components/schemas/const_device_switch_default", "description": "Default port mappings for this switch model"}, "description": {"description": "Product description for the switch model", "examples": ["Juniper EX4100 Series"], "type": "string"}, "display": {"description": "User-facing model name shown for the switch", "examples": ["EX4100-48P"], "type": "string"}, "evolved_os": {"default": false, "description": "Whether the switch model runs Junos Evolved", "type": "boolean"}, "evpn_ri_type": {"description": "EVPN routing-instance type used by this switch model", "examples": ["mac-vrf"], "type": "string"}, "experimental": {"default": false, "description": "Whether this switch model is marked experimental in the constants catalog", "type": "boolean"}, "fans_pluggable": {"default": false, "description": "Whether the switch model has field-replaceable fans", "examples": [true], "type": "boolean"}, "has_bgp": {"default": false, "description": "Whether the switch model supports BGP", "examples": [true], "type": "boolean"}, "has_ets": {"default": false, "description": "Whether the switch model supports Enhanced Transmission Selection (ETS)", "type": "boolean"}, "has_evpn": {"default": false, "description": "Whether the switch model supports EVPN", "examples": [true], "type": "boolean"}, "has_irb": {"default": false, "description": "Whether the switch model supports IRB interfaces", "examples": [true], "type": "boolean"}, "has_poe_out": {"default": false, "description": "Whether the switch model supports PoE output", "examples": [true], "type": "boolean"}, "has_snapshot": {"default": true, "description": "Whether the switch model supports configuration snapshots", "type": "boolean"}, "has_vc": {"default": true, "description": "Whether the switch model supports Virtual Chassis", "examples": [true], "type": "boolean"}, "model": {"description": "Switch model identifier for this capability definition", "examples": ["EX4100-48P"], "type": "string"}, "modular": {"default": false, "description": "Whether the switch model has modular hardware", "type": "boolean"}, "no_shaping_rate": {"default": false, "description": "Whether the switch model omits shaping-rate support", "type": "boolean"}, "number_fans": {"description": "Number of fans in the switch model", "examples": [2], "type": "integer"}, "oc_device": {"default": false, "description": "Whether this switch model is identified as an OpenConfig-managed device", "examples": [true], "type": "boolean"}, "oob_interface": {"description": "Out-of-band management interface names for this switch model", "examples": ["re0:mgmt-0, re1:mgmt-0"], "type": "string"}, "packet_action_drop_only": {"default": false, "description": "Whether packet action support is limited to drop-only behavior", "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", "examples": [{"0": "ge*48", "1": "qsfp+*4", "2": "sfp+*4 (uplink)"}], "type": "object"}, "sub_required": {"description": "Subscription type required for this switch model", "type": "string"}, "type": {"$ref": "#/components/schemas/const_device_type_switch", "description": "Device type for this switch model definition"}}, "required": ["type"], "type": "object"}, "const_device_switch_default": {"additionalProperties": false, "description": "Default switch port ranges for a model", "properties": {"_ports": {"description": "Default switch port range list for this model", "examples": ["ge-0/0/0-47, et-0/1/0-3, xe-0/2/0-3, ge-0/2/0-3"], "type": "string"}}, "type": "object"}, "const_device_type_ap": {"description": "Device Type. enum: `ap`", "enum": ["ap"], "readOnly": true, "type": "string"}, "const_device_type_gateway": {"description": "Device Type. enum: `gateway`", "enum": ["gateway"], "readOnly": true, "type": "string"}, "const_device_type_switch": {"description": "Device Type. enum: `switch`", "enum": ["switch"], "readOnly": true, "type": "string"}, "const_event": {"additionalProperties": false, "description": "Device event definition returned by the constants API", "properties": {"description": {"description": "Narrative description of the device event type", "type": "string"}, "display": {"description": "Human-readable label for the device event type", "type": "string"}, "example": {"additionalProperties": true, "description": "Sample device event payload for this event type", "type": "object"}, "group": {"description": "Device event group for this definition", "type": "string"}, "key": {"description": "Machine-readable device event key", "type": "string"}}, "required": ["key", "display"], "type": "object"}, "const_events": {"description": "Event type definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_event"}, "type": "array"}, "const_fingerprint_types": {"additionalProperties": false, "description": "Supported client fingerprint values for NAC matching", "properties": {"family": {"$ref": "#/components/schemas/strings", "description": "Device family values available for client fingerprint matching"}, "mfg": {"$ref": "#/components/schemas/strings", "description": "Manufacturer values available for client fingerprint matching"}, "model": {"$ref": "#/components/schemas/strings", "description": "Device model values available for client fingerprint matching"}, "os": {"$ref": "#/components/schemas/strings", "description": "Operating system values available for client fingerprint matching"}}, "type": "object"}, "const_gateway_applications_definition": {"additionalProperties": false, "description": "Gateway application definition returned by the constants API", "properties": {"app_id": {"description": "Whether an AppID is defined for this gateway application", "examples": [true], "type": "boolean"}, "key": {"description": "Machine-readable key that identifies the gateway application", "examples": ["4shared"], "type": "string"}, "name": {"description": "Display name of the gateway application", "examples": ["4shared"], "type": "string"}, "ssr_app_id": {"description": "Whether an SSR AppID is defined for this gateway application", "examples": [true], "type": "boolean"}}, "type": "object"}, "const_gateway_applications_definitions": {"description": "Gateway application definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_gateway_applications_definition"}, "type": "array"}, "const_insight_metrics": {"additionalProperties": {"$ref": "#/components/schemas/const_insight_metrics_property"}, "description": "Property key is the metric name", "type": "object"}, "const_insight_metrics_property": {"additionalProperties": false, "description": "Definition of an insight metric returned by the constants API", "properties": {"ctype": {"$ref": "#/components/schemas/strings", "description": "Metric classification type labels for this insight metric"}, "description": {"description": "Human-readable description of the insight metric", "type": "string"}, "example": {"$ref": "#/components/schemas/const_insight_metrics_property_example_any_of", "description": "Sample values returned for this insight metric"}, "intervals": {"$ref": "#/components/schemas/const_insight_metrics_property_intervals", "description": "Supported time intervals and retention windows for this metric"}, "keys": {"$ref": "#/components/schemas/const_insight_metrics_property_keys", "description": "Additional key metadata for this insight metric"}, "params": {"$ref": "#/components/schemas/const_insight_metrics_property_params", "description": "Parameters supported when querying this insight metric"}, "report_durations": {"$ref": "#/components/schemas/const_insight_metrics_property_report_durations", "description": "Supported reporting durations for this insight metric"}, "report_scopes": {"$ref": "#/components/schemas/strings", "description": "Entity scopes supported when reporting this insight metric"}, "scopes": {"$ref": "#/components/schemas/const_insight_metrics_property_scopes", "description": "Entity scopes that can be queried for this insight metric"}, "sle_baselined": {"description": "Whether the insight metric uses an SLE baseline", "type": "boolean"}, "sle_classifiers": {"$ref": "#/components/schemas/strings", "description": "SLE classifiers associated with this insight metric"}, "type": {"description": "Metric data type, such as timeseries", "type": "string"}, "unit": {"description": "Measurement unit for values returned by this metric", "type": "string"}, "values": {"$ref": "#/components/schemas/const_insight_metrics_property_values", "description": "Enumerated or structured value metadata for this insight metric"}}, "type": "object"}, "const_insight_metrics_property_example": {"anyOf": [{"type": "integer"}, {"type": "number"}, {"type": "string"}, {"type": "boolean"}, {"type": "null"}, {"additionalProperties": true, "type": "object"}], "description": "Example value for an insight metric property"}, "const_insight_metrics_property_example_any_of": {"anyOf": [{"$ref": "#/components/schemas/const_insight_metrics_property_examples"}, {"$ref": "#/components/schemas/const_insight_metrics_property_examples_object"}], "description": "Example values for an insight metric property, as an array or keyed object"}, "const_insight_metrics_property_examples": {"description": "List of example values for an insight metric property", "items": {"$ref": "#/components/schemas/const_insight_metrics_property_example"}, "type": "array"}, "const_insight_metrics_property_examples_object": {"additionalProperties": {"$ref": "#/components/schemas/const_insight_metrics_property_examples"}, "description": "Object containing named fields, each with array of example values", "type": "object"}, "const_insight_metrics_property_interval": {"additionalProperties": false, "description": "Interval definition for an insight metric", "properties": {"interval": {"description": "Sampling interval length, in seconds", "type": "integer"}, "max_age": {"description": "Maximum lookback age for this interval, in seconds", "type": "integer"}}, "type": "object"}, "const_insight_metrics_property_intervals": {"additionalProperties": {"$ref": "#/components/schemas/const_insight_metrics_property_interval"}, "description": "Property key is the interval (e.g. 10m, 1h, ...)", "type": "object"}, "const_insight_metrics_property_keys": {"additionalProperties": true, "description": "Additional key metadata for an insight metric property", "type": "object"}, "const_insight_metrics_property_param": {"additionalProperties": false, "description": "Query parameter definition for an insight metric", "properties": {"required": {"description": "Whether this query parameter is required", "type": "boolean"}}, "type": "object"}, "const_insight_metrics_property_params": {"additionalProperties": {"$ref": "#/components/schemas/const_insight_metrics_property_param"}, "description": "Property key is the parameter name", "type": "object"}, "const_insight_metrics_property_report_duration": {"additionalProperties": false, "description": "Report duration definition for an insight metric", "properties": {"duration": {"description": "Report duration length, in seconds", "type": "integer"}, "interval": {"description": "Sampling interval used for this report duration, in seconds", "type": "integer"}}, "type": "object"}, "const_insight_metrics_property_report_durations": {"additionalProperties": {"$ref": "#/components/schemas/const_insight_metrics_property_report_duration"}, "description": "Property key is the duration (e.g. 1d, 1w, ...)", "type": "object"}, "const_insight_metrics_property_scope": {"description": "enum: `ap`, `client`, `device`, `gateway`, `map`, `msp`, `mxcluster`, `mxedge`, `org`, `otherdevice`, `rssizone`, `sdkclient`, `site`, `switch`, `wlan`, `zone`", "enum": ["ap", "client", "device", "gateway", "map", "msp", "mxcluster", "mxedge", "org", "otherdevice", "rssizone", "sdkclient", "site", "switch", "wlan", "zone"], "type": "string"}, "const_insight_metrics_property_scopes": {"description": "Entity scopes supported by an insight metric property", "items": {"$ref": "#/components/schemas/const_insight_metrics_property_scope"}, "type": "array"}, "const_insight_metrics_property_values": {"additionalProperties": true, "description": "Enumerated or structured value metadata for an insight metric property", "type": "object"}, "const_language": {"additionalProperties": false, "description": "Language option returned by the constants API", "properties": {"display": {"description": "Localized language display name in the API default locale", "examples": ["English (US)"], "type": "string"}, "display_native": {"description": "Language display name in its native locale", "examples": ["English (US)"], "type": "string"}, "key": {"description": "Locale key used to select this language", "examples": ["en-US"], "type": "string"}}, "required": ["display", "display_native", "key"], "type": "object"}, "const_languages": {"description": "Language options returned by the constants API", "items": {"$ref": "#/components/schemas/const_language"}, "type": "array"}, "const_license_type": {"additionalProperties": false, "description": "License type definition returned by the constants API", "properties": {"description": {"description": "Human-readable description of the license type", "examples": ["Wired Assurance 12"], "type": "string"}, "includes": {"$ref": "#/components/schemas/const_license_type_includes", "description": "License SKU components included by this license type"}, "key": {"description": "Machine-readable license type key", "examples": ["sub_ex12"], "type": "string"}, "name": {"description": "Display name of the license type", "examples": ["SUB-EX12"], "type": "string"}}, "type": "object"}, "const_license_type_includes": {"description": "License SKU components included by a license type", "examples": [["sub_ex12a", "sub_ex12p"]], "items": {"type": "string"}, "type": "array"}, "const_license_types": {"description": "License type definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_license_type"}, "type": "array"}, "const_marvis_client_version": {"additionalProperties": false, "description": "Marvis Client version download entry", "properties": {"label": {"description": "Release label for this Marvis Client version", "examples": ["default"], "type": "string"}, "notes": {"description": "Release notes or extra text for this Marvis Client version", "type": "string"}, "os": {"description": "Operating system supported by this Marvis Client installer", "examples": ["windows"], "type": "string"}, "url": {"description": "Download URL for this Marvis Client installer", "examples": ["https://mobile.mist.com/installers/marvisclient/..."], "type": "string"}, "version": {"description": "Marvis Client software version for this installer", "examples": ["0.100.29"], "type": "string"}}, "type": "object"}, "const_marvis_client_versions": {"description": "Marvis Client installer versions returned by the constants API", "items": {"$ref": "#/components/schemas/const_marvis_client_version"}, "type": "array"}, "const_mxedge_model": {"additionalProperties": false, "description": "Mist Edge model definition returned by the constants API", "properties": {"custom_ports": {"description": "Whether this Mist Edge model supports custom port definitions", "type": "boolean"}, "display": {"description": "User-facing model name shown for the Mist Edge", "examples": ["X10"], "type": "string"}, "model": {"description": "Mist Edge model identifier", "examples": ["ME-X10"], "type": "string"}, "ports": {"additionalProperties": {"$ref": "#/components/schemas/const_mxedge_model_port"}, "description": "Port metadata keyed by interface number for this Mist Edge model", "type": "object"}}, "type": "object"}, "const_mxedge_model_port": {"additionalProperties": false, "description": "Mist Edge model port metadata", "properties": {"display": {"description": "User-facing interface name for this Mist Edge port", "examples": ["xe0"], "type": "string"}, "speed": {"description": "Port speed for the Mist Edge interface, in Mbps", "examples": [10000], "type": "integer"}}, "type": "object"}, "const_mxedge_models": {"description": "Mist Edge model definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_mxedge_model"}, "type": "array"}, "const_nac_event": {"additionalProperties": false, "description": "NAC event example payload returned by the constants API", "properties": {"ap": {"description": "Access point MAC address associated with the NAC event", "examples": ["5c5b355008c0"], "type": "string"}, "bssid": {"description": "Wireless BSSID associated with the NAC event", "examples": ["5c5b35548892"], "type": "string"}, "cert_cn": {"description": "Certificate common name presented during NAC authentication", "examples": ["suriyas"], "type": "string"}, "cert_expiry": {"description": "Certificate expiration timestamp presented during NAC authentication", "examples": [1711557441], "type": "integer"}, "cert_issuer": {"description": "Certificate issuer presented during NAC authentication", "examples": ["/DC=net/DC=jnpr/CN=Juniper Networks Issuing AWS1 CA"], "type": "string"}, "cert_san_upn": {"$ref": "#/components/schemas/const_nac_events_cert_san_upn", "description": "Certificate SAN UPN values presented during NAC authentication"}, "cert_serial": {"description": "Certificate serial number presented during NAC authentication", "examples": ["1300103d29e56ef083797bedc2000100103d29"], "type": "string"}, "cert_subject": {"description": "Certificate subject presented during NAC authentication", "examples": ["/CN=suriyas/emailAddress=suriyas@juniper.net"], "type": "string"}, "eap_type": {"description": "EAP method used for the NAC authentication", "examples": ["EAP-TLS"], "type": "string"}, "nas_vendor": {"description": "Network access server vendor reported for the NAC event", "examples": ["Mist"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the NAC event"}, "random_mac": {"description": "Whether the client used a randomized MAC address in the NAC event", "examples": [true], "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the NAC event"}, "ssid": {"description": "Wireless SSID associated with the NAC event", "examples": ["Test_Suriya-SSID"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the NAC event occurred"}, "type": {"description": "NAC event type key", "examples": ["NAC_CLIENT_CERT_CHECK_SUCCESS"], "type": "string"}, "username": {"description": "User identity associated with the NAC event", "examples": ["suriyas@juniper.net"], "type": "string"}, "wcid": {"description": "Wireless client identifier associated with the NAC event", "examples": ["b43637b0-f0d9-0a1d-1ec2-73c394a9f679"], "format": "uuid", "type": "string"}}, "type": "object"}, "const_nac_events": {"description": "NAC event example payloads returned by the constants API", "items": {"$ref": "#/components/schemas/const_nac_event"}, "type": "array"}, "const_nac_events_cert_san_upn": {"description": "Certificate Subject Alternative Name UPN values", "examples": [["suriyas@juniper.net"]], "items": {"type": "string"}, "type": "array"}, "const_other_device_model": {"additionalProperties": false, "description": "Other-device model definition returned by the constants API", "properties": {"_vendor_model_id": {"description": "Vendor-specific model identifier for this other-device model", "type": "string"}, "display": {"description": "User-facing model name shown for the other-device model", "type": "string"}, "model": {"description": "Device model identifier for this other-device definition", "type": "string"}, "type": {"description": "Device category for this other-device model", "type": "string"}, "vendor": {"description": "Manufacturer name for this other-device model", "type": "string"}}, "type": "object"}, "const_other_device_models": {"description": "Other-device model definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_other_device_model"}, "type": "array"}, "const_state": {"additionalProperties": false, "description": "State or territory definition returned by the constants API", "properties": {"iso_code": {"description": "ISO subdivision code for the state or territory", "examples": ["AK"], "type": "string"}, "name": {"description": "State or territory display name", "examples": ["Alaska"], "type": "string"}}, "type": "object"}, "const_states": {"description": "State and territory definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_state"}, "type": "array"}, "const_traffic_type": {"additionalProperties": false, "description": "Traffic type definition returned by the constants API", "properties": {"display": {"description": "Human-readable traffic type label", "examples": ["VoIP Video"], "type": "string"}, "dscp": {"description": "Differentiated Services Code Point value used for this traffic type", "examples": [32], "type": "integer"}, "failover_policy": {"description": "Failover behavior associated with this traffic type", "examples": ["non_revertible"], "type": "string"}, "max_jitter": {"description": "Maximum jitter threshold for this traffic type, in milliseconds", "examples": [250], "type": "integer"}, "max_latency": {"description": "Maximum latency threshold for this traffic type, in milliseconds", "examples": [1500], "type": "integer"}, "max_loss": {"description": "Maximum packet loss threshold for this traffic type, in percent", "examples": [35], "type": "integer"}, "name": {"description": "Machine-readable traffic type name", "examples": ["voip_video"], "type": "string"}, "traffic_class": {"description": "Traffic class associated with this traffic type", "examples": ["medium"], "type": "string"}}, "type": "object"}, "const_traffic_types": {"description": "Traffic type definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_traffic_type"}, "type": "array"}, "const_webhook_topic": {"additionalProperties": false, "description": "Webhook topic definition returned by the constants API", "properties": {"allows_single_event_per_message": {"description": "Whether this topic can be configured to enforce one event per webhook message", "type": "boolean"}, "for_org": {"description": "Whether this topic can be used in organization-level webhooks", "type": "boolean"}, "has_delivery_results": {"description": "Whether delivery-result search is available for this webhook topic", "type": "boolean"}, "internal": {"description": "Whether this topic is internal and not selectable in site or organization webhooks", "type": "boolean"}, "key": {"description": "Machine-readable key that identifies the webhook topic", "examples": ["alarms"], "type": "string"}}, "type": "object"}, "const_webhook_topics": {"description": "Webhook topic definitions returned by the constants API", "items": {"$ref": "#/components/schemas/const_webhook_topic"}, "type": "array"}, "count_org_devices_mxtunnel_status": {"description": "Mist Tunnel status value used when counting organization devices. enum: `down`, `up`", "enum": ["down", "up"], "type": "string"}, "count_pbn_distinct": {"description": "Fields that can be used to group PBN advisory count results. enum: `versions`, `models`, `customer_risk`, `bug_type`", "enum": ["versions", "models", "customer_risk", "bug_type"], "examples": ["versions"], "type": "string"}, "count_result": {"additionalProperties": {"type": "string"}, "description": "Count result row with the matching distinct field values", "properties": {"count": {"description": "Number of matching items for the distinct value or values in this result", "type": "integer"}}, "required": ["count"], "type": "object"}, "count_results": {"description": "List of count result rows", "items": {"$ref": "#/components/schemas/count_result"}, "type": "array", "uniqueItems": true}, "count_sirt_distinct": {"description": "Fields that can be used to group SIRT advisory count results. enum: `versions`, `models`, `severity`, `jsa_updated_date`", "enum": ["versions", "models", "severity", "jsa_updated_date"], "examples": ["versions"], "type": "string"}, "count_site_calls_distinct": {"default": "mac", "description": "Distinct field used when counting site call statistics. enum: `mac`", "enum": ["mac"], "type": "string"}, "count_usermac_distinct": {"description": "Fields that can be used to group user MAC count results. enum: `mac`, `name`, `labels`, `org_id`", "enum": ["mac", "name", "labels", "org_id"], "examples": ["org_id"], "type": "string"}, "cpu_stat": {"additionalProperties": false, "description": "CPU utilization breakdown for a device", "properties": {"idle": {"description": "Percentage of CPU time that is idle", "readOnly": true, "type": ["number", "null"]}, "interrupt": {"description": "Percentage of CPU time being used by interrupts", "readOnly": true, "type": ["number", "null"]}, "load_avg": {"$ref": "#/components/schemas/cpu_stat_load_avg", "description": "Load averages for the last 1, 5, and 15 minutes"}, "system": {"description": "Percentage of CPU time being used by system processes", "readOnly": true, "type": ["number", "null"]}, "usage": {"description": "Overall CPU usage percentage", "readOnly": true, "type": ["number", "null"]}, "user": {"description": "Percentage of CPU time being used by user processes", "readOnly": true, "type": ["number", "null"]}}, "type": "object"}, "cpu_stat_load_avg": {"description": "Load averages for the last 1, 5, and 15 minutes", "items": {"type": "number"}, "type": "array"}, "created_time": {"description": "When the object has been created, in epoch", "format": "double", "readOnly": true, "type": "number"}, "day_of_week": {"description": "enum: `any`, `fri`, `mon`, `sat`, `sun`, `thu`, `tue`, `wed`", "enum": ["any", "fri", "mon", "sat", "sun", "thu", "tue", "wed"], "type": "string"}, "days_number": {"description": "Request body specifying CRL truncation retention in days", "properties": {"days": {"default": 30, "description": "Number of most recent days of CRL entries to retain after truncation", "type": "integer"}}, "type": "object"}, "delivery": {"additionalProperties": false, "description": "Delivery object to configure the alarm delivery", "properties": {"additional_emails": {"$ref": "#/components/schemas/delivery_additional_emails", "description": "Additional email recipients for alarm delivery"}, "enabled": {"description": "Whether to enable the alarm delivery via emails or not", "examples": [true], "type": "boolean"}, "to_org_admins": {"description": "Whether to deliver the alarms via emails to Org admins or not", "examples": [true], "type": "boolean"}, "to_site_admins": {"description": "Whether to deliver the alarms via emails to Site admins or not", "examples": [false], "type": "boolean"}}, "required": ["enabled"], "type": "object"}, "delivery_additional_emails": {"description": "List of additional email string to deliver the alarms via emails", "items": {"examples": ["john@mycorp.com"], "type": "string"}, "type": "array"}, "device_ap": {"additionalProperties": false, "description": "Access point configuration and placement data", "properties": {"aeroscout": {"$ref": "#/components/schemas/ap_aeroscout", "description": "Location integration settings for AeroScout on this access point"}, "airista": {"$ref": "#/components/schemas/ap_airista", "description": "Location integration settings for Airista on this access point"}, "ble_config": {"$ref": "#/components/schemas/ble_config", "description": "Bluetooth Low Energy beacon and asset settings for this access point"}, "centrak": {"$ref": "#/components/schemas/ap_centrak", "description": "Location integration settings for Centrak on this access point"}, "client_bridge": {"$ref": "#/components/schemas/ap_client_bridge", "description": "Wireless client bridge settings for this access point"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the access point object was created"}, "deviceprofile_id": {"description": "Device profile assigned to this access point", "examples": ["6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9"], "format": "uuid", "type": ["string", "null"]}, "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", "description": "Electronic shelf label integration settings for this access point"}, "flow_control": {"default": false, "description": "For some AP models, flow_control can be enabled to address some switch compatibility issue", "type": "boolean"}, "for_site": {"description": "Whether the access point configuration is scoped directly to a site", "readOnly": true, "type": "boolean"}, "height": {"description": "Installation height of the AP, in meters", "examples": [2.75], "format": "double", "type": "number"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the access point object"}, "image1_url": {"description": "First custom image URL associated with the access point", "type": ["string", "null"]}, "image2_url": {"description": "Second custom image URL associated with the access point", "type": ["string", "null"]}, "image3_url": {"description": "Third custom image URL associated with the access point", "type": ["string", "null"]}, "iot_config": {"$ref": "#/components/schemas/ap_iot", "description": "Digital and analog IoT pin settings for this access point"}, "ip_config": {"$ref": "#/components/schemas/ap_ip_config", "description": "Management IP addressing settings for this access point"}, "lacp_config": {"$ref": "#/components/schemas/device_ap_lacp_config", "description": "Link aggregation settings for supported AP Ethernet uplinks"}, "led": {"$ref": "#/components/schemas/ap_led", "description": "Indicator light behavior settings for this access point"}, "locked": {"description": "Whether this map is considered locked down", "type": "boolean"}, "mac": {"description": "Access point MAC address used to identify the device", "readOnly": true, "type": "string"}, "map_id": {"description": "Map where the device belongs to", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "type": "string"}, "mesh": {"$ref": "#/components/schemas/ap_mesh", "description": "Wireless mesh role and band settings for this access point"}, "model": {"description": "Hardware model reported for the access point", "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the access point object was last modified"}, "mqtt_config": {"$ref": "#/components/schemas/ap_mqtt", "description": "MQTT broker publishing settings for this access point"}, "name": {"description": "Configured hostname assigned to the access point", "examples": ["conference room"], "type": "string"}, "notes": {"description": "Any notes about this AP", "examples": ["slightly off center"], "type": "string"}, "ntp_servers": {"$ref": "#/components/schemas/strings", "description": "NTP servers used by this access point"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this access point"}, "orientation": {"description": "AP orientation in degrees from 0 to 359, where 0 is up and 90 is right", "examples": [45], "maximum": 359, "minimum": 0, "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 not allowed here. Property key is the interface(s) name (e.g. `eth1` or `eth1,eth2`). If spcified, this takes predecence over switch_config (switch_config requires user to configure all vlans manually, which is error-prone. thus deprecated)", "type": "object"}, "pwr_config": {"$ref": "#/components/schemas/ap_pwr_config", "description": "Power negotiation and peripheral power settings for this access point"}, "radio_config": {"$ref": "#/components/schemas/ap_radio", "description": "Radio configuration overrides for this access point"}, "serial": {"description": "Manufacturer serial number for the access point", "readOnly": true, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where this access point is assigned"}, "type": {"$ref": "#/components/schemas/const_device_type_ap", "description": "Device type discriminator for access point records"}, "uplink_port_config": {"$ref": "#/components/schemas/ap_uplink_port_config", "description": "Authentication and failover behavior for AP uplink ports"}, "usb_config": {"$ref": "#/components/schemas/ap_usb", "description": "Legacy USB integration settings for this access point"}, "vars": {"$ref": "#/components/schemas/vars", "description": "Variable values that override site variables for this access point"}, "x": {"description": "Horizontal map position of the AP, in pixels", "examples": [53.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map position of the AP, in pixels", "examples": [173.1], "format": "double", "type": "number"}, "zigbee_config": {"$ref": "#/components/schemas/ap_zigbee", "description": "Zigbee radio and network settings for this access point"}}, "required": ["type"], "type": "object"}, "device_ap_lacp_config": {"additionalProperties": false, "description": "LACP settings for supported AP Ethernet uplinks", "properties": {"enabled": {"default": false, "description": "Whether to enable LACP on supported AP Ethernet uplinks", "type": "boolean"}}, "type": "object"}, "device_enum_with_all": {"default": "ap", "description": "device type. enum: `all`, `ap`, `gateway`, `switch`. Default is `ap`", "enum": ["all", "ap", "switch", "gateway"], "type": "string"}, "device_event": {"additionalProperties": false, "description": "Device event payload returned by search and webhook APIs", "properties": {"ap": {"deprecated": true, "description": "Deprecated AP MAC address field; use `mac` instead", "type": "string"}, "ap_name": {"deprecated": true, "description": "Deprecated AP name field; use `device_name` instead", "type": "string"}, "apfw": {"description": "AP firmware version associated with the device event", "type": "string"}, "audit_id": {"$ref": "#/components/schemas/id", "description": "Audit log identifier associated with the device event"}, "bandwidth": {"description": "Channel bandwidth associated with a radio event, in MHz", "type": "integer"}, "channel": {"description": "RF channel associated with the device event", "type": "integer"}, "chassis_mac": {"description": "Chassis MAC address associated with the device event", "type": "string"}, "count": {"description": "Event count reported in the device event payload", "type": "integer"}, "device_name": {"description": "Name of the device associated with the event", "type": "string"}, "device_type": {"$ref": "#/components/schemas/device_type", "description": "Device type associated with the event"}, "ev_type": {"$ref": "#/components/schemas/webhook_device_events_event_ev_type", "description": "Advisory severity for the device event"}, "ext_ip": {"description": "External IP address reported for the device event", "type": "string"}, "mac": {"description": "Device MAC address associated with the event", "type": "string"}, "model": {"description": "Device model associated with the event", "type": "string"}, "node": {"description": "Cluster node identifier associated with the device event", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the device event"}, "port_id": {"description": "Port identifier associated with the device event", "type": "string"}, "power": {"description": "Transmit power associated with a radio event", "type": "integer"}, "pre_bandwidth": {"description": "Previous channel bandwidth before an RRM change, in MHz", "type": "integer"}, "pre_channel": {"description": "Previous RF channel before an RRM change", "type": "integer"}, "pre_power": {"description": "Previous transmit power before an RRM change", "type": "integer"}, "pre_usage": {"description": "Previous radio usage band before an RRM change", "type": "integer"}, "reason": {"description": "Optional reason text reported for the device event", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the device event"}, "site_name": {"description": "Name of the site associated with the event", "type": "string"}, "text": {"description": "Optional human-readable text for the device event", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the device event occurred"}, "type": {"description": "Device event type key", "type": "string"}, "usage": {"description": "Current radio usage band for an RRM event", "type": "integer"}, "version": {"description": "Firmware or software version associated with the device event", "type": "string"}}, "required": ["org_id", "timestamp", "type"], "type": "object"}, "device_events": {"description": "List of device event payloads", "items": {"$ref": "#/components/schemas/device_event"}, "type": "array", "uniqueItems": true}, "device_gateway": {"additionalProperties": false, "description": "Gateway configuration and placement data", "properties": {"additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands to apply to this gateway"}, "bgp_config": {"additionalProperties": {"$ref": "#/components/schemas/bgp_config"}, "description": "BGP routing configuration for this gateway. Property key is the BGP session name", "type": "object"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the gateway object was created"}, "deviceprofile_id": {"description": "Device profile associated with this gateway", "format": "uuid", "readOnly": true, "type": "string"}, "dhcpd_config": {"$ref": "#/components/schemas/dhcpd_config", "description": "DHCP server configuration served by this gateway"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers configured for this gateway"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes configured for this gateway"}, "extra_routes": {"$ref": "#/components/schemas/gateway_extra_routes", "description": "Additional IPv4 routes configured on this gateway"}, "extra_routes6": {"$ref": "#/components/schemas/gateway_extra_routes6", "description": "Additional IPv6 routes configured on this gateway"}, "for_site": {"description": "Whether the gateway configuration is scoped directly to a site", "readOnly": true, "type": "boolean"}, "gateway_mgmt": {"$ref": "#/components/schemas/gateway_mgmt", "description": "Management-plane settings for this gateway"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the gateway object"}, "idp_profiles": {"$ref": "#/components/schemas/gateway_idp_profiles", "description": "Intrusion detection and prevention profiles configured for this gateway"}, "image1_url": {"description": "First custom image URL associated with the gateway", "type": ["string", "null"]}, "image2_url": {"description": "Second custom image URL associated with the gateway", "type": ["string", "null"]}, "image3_url": {"description": "Third custom image URL associated with the gateway", "type": ["string", "null"]}, "ip_configs": {"$ref": "#/components/schemas/gateway_ip_configs", "description": "Gateway interface IP configurations by network name"}, "mac": {"description": "Gateway MAC address used to identify the device", "readOnly": true, "type": "string"}, "managed": {"deprecated": true, "description": "Whether the device is managed by Mist. Deprecated in favour of mist_configured.", "type": "boolean"}, "map_id": {"description": "Map where the device belongs to", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "type": "string"}, "mist_configured": {"description": "whether the device can be configured by Mist or not. This deprecates `managed` for adopted devices.", "type": "boolean"}, "model": {"description": "Gateway model reported for the device", "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the gateway object was last modified"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "MSP that manages this gateway, when applicable"}, "name": {"description": "Friendly display name assigned to the gateway", "type": "string"}, "networks": {"$ref": "#/components/schemas/networks", "description": "Layer 3 networks configured for use by this gateway"}, "notes": {"description": "Free-form administrative notes for this gateway", "type": "string"}, "ntp_servers": {"$ref": "#/components/schemas/strings", "description": "NTP servers used by this gateway"}, "oob_ip_config": {"$ref": "#/components/schemas/gateway_oob_ip_config", "description": "Out-of-band management IP configuration for this gateway"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this gateway"}, "path_preferences": {"additionalProperties": {"$ref": "#/components/schemas/gateway_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 name or range (e.g. \"ge-0/0/0-10\")", "type": "object"}, "port_mirroring": {"$ref": "#/components/schemas/gateway_port_mirroring", "description": "Port mirroring configuration for this gateway"}, "router_id": {"description": "Auto assigned if not set", "examples": ["10.2.1.10"], "type": "string"}, "routing_policies": {"$ref": "#/components/schemas/gw_routing_policies", "description": "Routing policies applied by this gateway"}, "serial": {"description": "Manufacturer serial number for the gateway", "readOnly": true, "type": "string"}, "service_policies": {"$ref": "#/components/schemas/service_policies", "description": "Traffic service policies enforced by this gateway"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where this gateway is assigned"}, "tunnel_configs": {"additionalProperties": {"$ref": "#/components/schemas/tunnel_config"}, "description": "Property key is the tunnel name", "type": "object"}, "tunnel_provider_options": {"$ref": "#/components/schemas/tunnel_provider_options", "description": "Provider-specific options for tunnels terminated by this gateway"}, "type": {"$ref": "#/components/schemas/const_device_type_gateway", "description": "Device type discriminator for gateway records"}, "url_filtering_deny_msg": {"default": "Access to this URL Category has been blocked", "description": "When a service policy denies a app_category, what message to show in user's browser", "examples": ["Access to this URL Category has been blocked"], "type": "string"}, "vars": {"$ref": "#/components/schemas/vars", "description": "Variable values that override site variables for this gateway"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF configuration applied to this gateway"}, "vrf_instances": {"$ref": "#/components/schemas/gateway_vrf_instances", "description": "VRF instances configured on this gateway"}, "x": {"description": "Horizontal map position of the gateway, in pixels", "examples": [53.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map position of the gateway, in pixels", "examples": [173.1], "format": "double", "type": "number"}}, "required": ["type"], "type": "object"}, "device_id": {"description": "Read-only UUID identifier for a device", "examples": ["00000000-0000-0000-1000-d8695a0f9e61"], "format": "uuid", "readOnly": true, "type": "string"}, "device_id_string": {"description": "Request body containing a device identifier", "properties": {"device_id": {"description": "Device identifier supplied by the request", "format": "uuid", "type": "string"}}, "required": ["device_id"], "type": "object"}, "device_iot_config": {"additionalProperties": {"type": "integer"}, "description": "Property key is the IoT port name (e.g. \"A1\"), value is the output state (0 or 1).", "examples": [{"A1": 1, "DO": 0}], "type": "object"}, "device_other": {"additionalProperties": false, "description": "Third-party device discovered or managed through an external vendor integration", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the third-party device record was created"}, "device_mac": {"description": "MAC address of the Mist device this third-party device is attached to", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the third-party device record"}, "mac": {"description": "Third-party device MAC address", "type": "string"}, "model": {"description": "Third-party device model reported by the vendor integration", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the third-party device record was last modified"}, "name": {"description": "Display name reported or configured for the third-party device", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this third-party device record"}, "serial": {"description": "Manufacturer serial number reported for the third-party device", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where the third-party device is assigned"}, "state": {"description": "Operational state reported for the third-party device", "type": "string"}, "vendor": {"description": "External vendor integration that reported the third-party device", "type": "string"}, "vendor_api_id": {"description": "Identifier assigned by the vendor API for this third-party device", "type": "string"}}, "type": "object"}, "device_others": {"description": "List of third-party devices reported by external integrations", "items": {"$ref": "#/components/schemas/device_other"}, "type": "array"}, "device_search_radius_filter_status": {"description": "Status of the device search RADIUS filter. enum: `up`, `down`, `unreachable`", "enum": ["up", "down", "unreachable"], "type": "string"}, "device_search_radius_stat": {"additionalProperties": false, "description": "RADIUS authentication counters and server status for a device search result", "properties": {"auth_accepts": {"description": "Number of accepted authentication requests", "type": "integer"}, "auth_rejects": {"description": "Number of rejected authentication requests", "type": "integer"}, "auth_server_status": {"$ref": "#/components/schemas/device_search_radius_filter_status", "description": "RADIUS authentication server status for this server in device search results"}, "auth_timeouts": {"description": "Number of authentication timeouts", "type": "integer"}}, "type": "object"}, "device_search_radius_stats": {"additionalProperties": {"$ref": "#/components/schemas/device_search_radius_stat"}, "description": "Property key is the RADIUS server IP address", "type": "object"}, "device_status": {"default": "all", "description": "enum: `all`, `connected`, `disconnected`", "enum": ["all", "connected", "disconnected"], "type": "string"}, "device_status_filter": {"description": "Filter devices based on their status. enum: `connected`, `disconnected`", "enum": ["connected", "disconnected"], "type": "string"}, "device_switch": {"additionalProperties": false, "description": "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\nIn addition it is possible to use the `port_config_overwrite` to overwrite some attributes of the port_usage without having to create a new port_usage.", "properties": {"acl_policies": {"$ref": "#/components/schemas/acl_policies", "description": "ACL policies applied to traffic handled by this switch"}, "acl_tags": {"$ref": "#/components/schemas/acl_tags", "description": "ACL tags used by switch access policies"}, "additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands to apply to this switch"}, "aggregate_routes": {"$ref": "#/components/schemas/aggregate_routes", "description": "Additional IPv4 aggregate routes configured on this switch"}, "aggregate_routes6": {"$ref": "#/components/schemas/aggregate_routes6", "description": "Additional IPv6 aggregate routes configured on this switch"}, "bgp_config": {"additionalProperties": {"$ref": "#/components/schemas/switch_bgp_config"}, "description": "BGP routing configuration for this switch. Property key is the BGP session name", "type": "object"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the switch object was created"}, "default_port_usage": {"default": "default", "description": "Port usage to assign to switch ports without any port usage assigned. Default: `default` to preserve default behavior", "type": "string"}, "deviceprofile_id": {"description": "Device profile associated with this switch", "format": "uuid", "readOnly": true, "type": "string"}, "dhcp_snooping": {"$ref": "#/components/schemas/dhcp_snooping", "description": "DHCP snooping configuration for this switch"}, "dhcpd_config": {"$ref": "#/components/schemas/switch_dhcpd_config", "description": "DHCP server configuration served by this switch"}, "disable_auto_config": {"default": false, "description": "This disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.", "type": "boolean"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers configured for this switch"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes configured for this switch"}, "evpn_config": {"$ref": "#/components/schemas/evpn_config", "description": "EVPN configuration applied to this switch"}, "extra_routes": {"$ref": "#/components/schemas/extra_routes", "description": "Additional IPv4 routes configured on this switch"}, "extra_routes6": {"$ref": "#/components/schemas/extra_routes6", "description": "Additional IPv6 routes configured on this switch"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the switch object"}, "image1_url": {"description": "First custom image URL associated with the switch", "type": ["string", "null"]}, "image2_url": {"description": "Second custom image URL associated with the switch", "type": ["string", "null"]}, "image3_url": {"description": "Third custom image URL associated with the switch", "type": ["string", "null"]}, "iot_config": {"$ref": "#/components/schemas/switch_iot_config", "description": "IoT port settings for this switch"}, "ip_config": {"$ref": "#/components/schemas/junos_ip_config", "description": "Management IP addressing settings for this switch"}, "local_port_config": {"$ref": "#/components/schemas/local_port_config", "description": "Local port configuration settings for this switch"}, "mac": {"description": "Switch MAC address used to identify the device", "readOnly": true, "type": "string"}, "managed": {"default": false, "deprecated": true, "description": "An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist. Deprecated in favour of mist_configured, which is more intuitive and can be used for both adopted and claimed devices.", "type": "boolean"}, "map_id": {"description": "Map where the device belongs to", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "type": "string"}, "mist_configured": {"description": "whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disable_auto_config` for claimed device)", "type": "boolean"}, "mist_nac": {"$ref": "#/components/schemas/switch_mist_nac", "description": "Mist NAC settings applied to this switch"}, "model": {"description": "Switch model reported for the device", "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the switch object was last modified"}, "name": {"description": "Friendly display name assigned to the switch", "type": "string"}, "networks": {"$ref": "#/components/schemas/switch_networks", "description": "Layer 3 networks configured for use by this switch"}, "notes": {"description": "Free-form administrative notes for this switch", "type": "string"}, "ntp_servers": {"$ref": "#/components/schemas/ntp_servers", "description": "NTP servers used by this switch"}, "oob_ip_config": {"$ref": "#/components/schemas/switch_oob_ip_config", "description": "Out-of-band management IP configuration for this switch"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this switch"}, "ospf_areas": {"$ref": "#/components/schemas/ospf_areas", "description": "OSPF area configuration for this switch"}, "ospf_config": {"$ref": "#/components/schemas/switch_ospf_config", "description": "OSPF routing configuration for this switch"}, "other_ip_configs": {"additionalProperties": {"$ref": "#/components/schemas/junos_other_ip_config"}, "description": "Property key is the network name. Defines the additional IP Addresses configured on the device.", "type": "object"}, "port_config": {"$ref": "#/components/schemas/wired_port_config", "description": "Per-port wired configuration for this switch"}, "port_config_overwrite": {"$ref": "#/components/schemas/switch_port_config_overwrites", "description": "Per-port overrides for switch port usage attributes"}, "port_mirroring": {"$ref": "#/components/schemas/switch_port_mirroring", "description": "Port mirroring configuration for this switch"}, "port_usages": {"$ref": "#/components/schemas/switch_port_usages", "description": "Reusable switch port usage profiles available on this switch"}, "radius_config": {"$ref": "#/components/schemas/switch_radius_config", "description": "RADIUS authentication and accounting settings for this switch"}, "remote_syslog": {"$ref": "#/components/schemas/remote_syslog", "description": "Remote syslog settings for this switch"}, "role": {"description": "Deployment role label for this switch", "type": "string"}, "router_id": {"description": "Used for OSPF / BGP / EVPN", "examples": ["10.2.1.10"], "type": "string"}, "routing_policies": {"$ref": "#/components/schemas/sw_routing_policies", "description": "Routing policies applied by this switch"}, "serial": {"description": "Manufacturer serial number for the switch", "readOnly": true, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where this switch is assigned"}, "snmp_config": {"$ref": "#/components/schemas/snmp_config", "description": "SNMP configuration for this switch"}, "stp_config": {"$ref": "#/components/schemas/switch_stp_config", "description": "Spanning Tree Protocol configuration for this switch"}, "switch_mgmt": {"$ref": "#/components/schemas/switch_mgmt", "description": "Management-plane settings for this switch"}, "type": {"$ref": "#/components/schemas/const_device_type_switch", "description": "Device type discriminator for switch records"}, "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", "description": "Variable values that override site variables for this switch"}, "virtual_chassis": {"$ref": "#/components/schemas/switch_virtual_chassis", "description": "Virtual Chassis membership and provisioning settings for this switch"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF configuration applied to this switch"}, "vrf_instances": {"$ref": "#/components/schemas/switch_vrf_instances", "description": "VRF instances configured on this switch"}, "vrrp_config": {"$ref": "#/components/schemas/vrrp_config", "description": "VRRP configuration applied to this switch"}, "x": {"description": "Horizontal map position of the switch, in pixels", "examples": [53.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map position of the switch, in pixels", "examples": [173.1], "format": "double", "type": "number"}}, "required": ["type"], "type": "object"}, "device_type": {"description": "enum: `ap`, `gateway`, `switch`", "enum": ["ap", "gateway", "switch"], "type": "string"}, "device_type_ap": {"description": "Device Type. enum: `ap`", "enum": ["ap"], "type": "string"}, "device_type_default_ap": {"default": "ap", "description": "enum: `ap`, `gateway`, `switch`", "enum": ["ap", "gateway", "switch"], "type": "string"}, "device_type_gateway": {"description": "Device Type. enum: `gateway`", "enum": ["gateway"], "type": "string"}, "device_type_switch": {"description": "Device Type. enum: `switch`", "enum": ["switch"], "type": "string"}, "device_type_with_all": {"default": "ap", "description": "ap, switch, gateway, router, all, default is ap. Supports comma-separated values for multiple types (e.g., type=switch,gateway)", "type": "string"}, "device_upgrade": {"description": "Device firmware upgrade request options", "properties": {"reboot": {"default": false, "description": "For Switches and Gateways only (APs are automatically rebooted). Reboot device immediately after upgrade is completed", "type": "boolean"}, "reboot_at": {"description": "For Switches and Gateways only and if `reboot`==`true`. Reboot start time in epoch seconds, default is `start_time`", "type": "integer"}, "snapshot": {"default": false, "description": "For Junos devices only. Perform recovery snapshot after device is rebooted", "type": "boolean"}, "start_time": {"description": "Firmware download start time in epoch", "type": "integer"}, "version": {"default": "stable", "description": "Specific version / `stable`, default is to use the latest", "type": "string"}}, "required": ["version"], "type": "object"}, "device_version": {"description": "Available firmware versions for device models", "items": {"$ref": "#/components/schemas/device_version_item"}, "type": "array", "uniqueItems": true}, "device_version_item": {"additionalProperties": false, "description": "Available firmware version for a specific device model and release tag", "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": "Available firmware version for this device model", "type": "string"}}, "required": ["model", "version"], "type": "object"}, "deviceprofile": {"description": "Device profile configuration for an AP, switch, or gateway", "discriminator": {"mapping": {"ap": "#/components/schemas/deviceprofile_ap", "gateway": "#/components/schemas/deviceprofile_gateway", "switch": "#/components/schemas/deviceprofile_switch"}, "propertyName": "type"}, "oneOf": [{"$ref": "#/components/schemas/deviceprofile_ap"}, {"$ref": "#/components/schemas/deviceprofile_gateway"}, {"$ref": "#/components/schemas/deviceprofile_switch"}]}, "deviceprofile_ap": {"additionalProperties": false, "description": "AP device profile configuration applied to APs at a site or organization", "properties": {"aeroscout": {"$ref": "#/components/schemas/ap_aeroscout", "description": "Location integration defaults for AeroScout in this AP profile"}, "airista": {"$ref": "#/components/schemas/ap_airista", "description": "Location integration defaults for Airista in this AP profile"}, "ble_config": {"$ref": "#/components/schemas/ble_config", "description": "Bluetooth Low Energy beacon and asset defaults in this AP profile"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the AP device profile was created"}, "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", "description": "Electronic shelf label integration defaults in this AP profile"}, "for_site": {"description": "Whether this AP profile is scoped directly to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the AP device profile"}, "iot_config": {"$ref": "#/components/schemas/ap_iot", "description": "Digital and analog IoT pin defaults in this AP profile"}, "ip_config": {"$ref": "#/components/schemas/ap_ip_config", "description": "Management IP addressing defaults in this AP profile"}, "lacp_config": {"$ref": "#/components/schemas/device_ap_lacp_config", "description": "Link aggregation defaults for supported AP Ethernet uplinks"}, "led": {"$ref": "#/components/schemas/ap_led", "description": "Indicator light behavior defaults in this AP profile"}, "mesh": {"$ref": "#/components/schemas/ap_mesh", "description": "Wireless mesh role and band defaults in this AP profile"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the AP device profile was last modified"}, "mqtt_config": {"$ref": "#/components/schemas/ap_mqtt", "description": "MQTT broker publishing settings for this AP profile"}, "name": {"description": "Display name of the AP device profile", "type": ["string", "null"]}, "ntp_servers": {"$ref": "#/components/schemas/strings", "description": "NTP servers configured by this AP profile"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this AP device profile"}, "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 not allowed here. Property key is the interface(s) name (e.g. `eth1` or `eth1,eth2`). If specified, this takes precedence over switch_config (deprecated)", "type": "object"}, "pwr_config": {"$ref": "#/components/schemas/ap_pwr_config", "description": "Power negotiation and peripheral power defaults in this AP profile"}, "radio_config": {"$ref": "#/components/schemas/ap_radio", "description": "Radio configuration defaults in this AP profile"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where this AP device profile is defined, when scoped to a site"}, "switch_config": {"$ref": "#/components/schemas/ap_switch", "description": "Deprecated AP switch configuration defaults in this profile"}, "type": {"$ref": "#/components/schemas/device_type_ap", "description": "Device type discriminator for AP device profiles"}, "uplink_port_config": {"$ref": "#/components/schemas/ap_uplink_port_config", "description": "Authentication and failover defaults for AP uplink ports"}, "usb_config": {"$ref": "#/components/schemas/ap_usb", "description": "Legacy USB integration defaults in this AP profile"}, "vars": {"$ref": "#/components/schemas/vars", "description": "Variable values provided by this AP device profile"}, "zigbee_config": {"$ref": "#/components/schemas/ap_zigbee", "description": "Zigbee radio and network defaults in this AP profile"}}, "required": ["type"], "type": "object"}, "deviceprofile_gateway": {"additionalProperties": false, "description": "Gateway Template is applied to a site for gateway(s) in a site.", "properties": {"additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands provided by this gateway profile"}, "bgp_config": {"additionalProperties": {"$ref": "#/components/schemas/bgp_config"}, "description": "BGP routing defaults for this gateway profile. Property key is the BGP session name", "type": "object"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the gateway profile was created"}, "dhcpd_config": {"$ref": "#/components/schemas/dhcpd_config", "description": "DHCP server defaults provided by this gateway profile"}, "dnsOverride": {"default": false, "description": "Whether DNS server and suffix settings in this profile override inherited values", "type": "boolean"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers provided by this gateway profile"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes provided by this gateway profile"}, "extra_routes": {"$ref": "#/components/schemas/gateway_extra_routes", "description": "Additional IPv4 route defaults in this gateway profile"}, "extra_routes6": {"$ref": "#/components/schemas/gateway_extra_routes6", "description": "Additional IPv6 route defaults in this gateway profile"}, "gateway_matching": {"$ref": "#/components/schemas/gateway_matching", "description": "Matching rules that select gateways for this profile"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the gateway profile"}, "idp_profiles": {"$ref": "#/components/schemas/gateway_idp_profiles", "description": "Intrusion detection and prevention profile defaults in this gateway profile"}, "ip_configs": {"$ref": "#/components/schemas/gateway_ip_configs", "description": "Gateway interface IP configuration defaults by network name"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the gateway profile was last modified"}, "name": {"description": "Display name of the gateway profile", "examples": ["gw_template"], "type": "string"}, "networks": {"$ref": "#/components/schemas/networks", "description": "Layer 3 networks configured by this gateway profile"}, "ntpOverride": {"default": false, "description": "Whether NTP servers in this profile override inherited values", "type": "boolean"}, "ntp_servers": {"$ref": "#/components/schemas/ntp_servers", "description": "NTP servers provided by this gateway profile"}, "oob_ip_config": {"$ref": "#/components/schemas/gateway_oob_ip_config", "description": "Out-of-band management IP defaults in this gateway profile"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this gateway profile"}, "path_preferences": {"additionalProperties": {"$ref": "#/components/schemas/gateway_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", "examples": ["10.2.1.10"], "type": "string"}, "routing_policies": {"$ref": "#/components/schemas/gw_routing_policies", "description": "Routing policy defaults applied by this gateway profile"}, "service_policies": {"$ref": "#/components/schemas/service_policies", "description": "Traffic service policy defaults enforced by this gateway profile"}, "tunnel_configs": {"additionalProperties": {"$ref": "#/components/schemas/tunnel_config"}, "description": "Property key is the tunnel name", "type": "object"}, "tunnel_provider_options": {"$ref": "#/components/schemas/tunnel_provider_options", "description": "Provider-specific tunnel options defined by this gateway profile"}, "type": {"$ref": "#/components/schemas/device_type_gateway", "description": "Device type discriminator for gateway profiles"}, "url_filtering_deny_msg": {"default": "Access to this URL Category has been blocked", "description": "When a service policy denies a app_category, what message to show in user's browser", "examples": ["Access to this URL Category has been blocked"], "type": "string"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF defaults applied by this gateway profile"}, "vrf_instances": {"$ref": "#/components/schemas/gateway_vrf_instances", "description": "VRF instances configured by this gateway profile"}}, "required": ["name", "type"], "type": "object"}, "deviceprofile_switch": {"additionalProperties": false, "description": "Switch Device Profiles can be applied to one or multiple switches. The settings from the Device Profile will override the settings from the Switch Template and the Site Settings.", "properties": {"acl_policies": {"$ref": "#/components/schemas/acl_policies", "description": "ACL policy defaults provided by this switch profile"}, "acl_tags": {"$ref": "#/components/schemas/acl_tags", "description": "ACL tags available to switch access policies in this profile"}, "additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands provided by this switch profile"}, "aggregate_routes": {"$ref": "#/components/schemas/aggregate_routes", "description": "Additional IPv4 aggregate route defaults in this switch profile"}, "aggregate_routes6": {"$ref": "#/components/schemas/aggregate_routes6", "description": "Additional IPv6 aggregate route defaults in this switch profile"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the switch profile was created"}, "dhcp_snooping": {"$ref": "#/components/schemas/dhcp_snooping", "description": "DHCP snooping defaults provided by this switch profile"}, "dhcpd_config": {"$ref": "#/components/schemas/switch_dhcpd_config", "description": "DHCP server defaults provided by this switch profile"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers provided by this switch profile"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes provided by this switch profile"}, "evpn_config": {"$ref": "#/components/schemas/evpn_config", "description": "EVPN defaults applied by this switch profile"}, "extra_routes": {"$ref": "#/components/schemas/extra_routes", "description": "Additional IPv4 route defaults in this switch profile"}, "extra_routes6": {"$ref": "#/components/schemas/extra_routes6", "description": "Additional IPv6 route defaults in this switch profile"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the switch profile"}, "iot_config": {"$ref": "#/components/schemas/switch_iot_config", "description": "IoT port defaults provided by this switch profile"}, "ip_config": {"$ref": "#/components/schemas/junos_ip_config", "description": "Management IP addressing defaults in this switch profile"}, "mist_nac": {"$ref": "#/components/schemas/switch_mist_nac", "description": "Mist NAC defaults applied by this switch profile"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the switch profile was last modified"}, "name": {"description": "Display name of the switch profile", "type": "string"}, "networks": {"$ref": "#/components/schemas/switch_networks", "description": "Layer 3 networks configured by this switch profile"}, "ntp_servers": {"$ref": "#/components/schemas/ntp_servers", "description": "NTP servers provided by this switch profile"}, "oob_ip_config": {"$ref": "#/components/schemas/switch_oob_ip_config", "description": "Out-of-band management IP defaults in this switch profile"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this switch profile"}, "ospf_areas": {"$ref": "#/components/schemas/ospf_areas", "description": "OSPF area defaults provided by this switch profile"}, "other_ip_configs": {"additionalProperties": {"$ref": "#/components/schemas/junos_other_ip_config"}, "description": "Property key is the network name. Defines the additional IP Addresses configured on the device.", "type": "object"}, "port_config": {"$ref": "#/components/schemas/wired_port_config", "description": "Per-port wired defaults provided by this switch profile"}, "port_mirroring": {"$ref": "#/components/schemas/switch_port_mirroring", "description": "Port mirroring defaults provided by this switch profile"}, "port_usages": {"$ref": "#/components/schemas/switch_port_usages", "description": "Reusable switch port usage profiles provided by this switch profile"}, "radius_config": {"$ref": "#/components/schemas/switch_radius_config", "description": "RADIUS authentication and accounting defaults in this switch profile"}, "remote_syslog": {"$ref": "#/components/schemas/remote_syslog", "description": "Remote syslog defaults provided by this switch profile"}, "routing_policies": {"$ref": "#/components/schemas/sw_routing_policies", "description": "Routing policy defaults applied by this switch profile"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where this switch profile is defined, when scoped to a site"}, "snmp_config": {"$ref": "#/components/schemas/snmp_config", "description": "SNMP defaults provided by this switch profile"}, "stp_config": {"$ref": "#/components/schemas/switch_stp_config", "description": "Spanning Tree Protocol defaults provided by this switch profile"}, "switch_mgmt": {"$ref": "#/components/schemas/switch_mgmt", "description": "Management-plane defaults provided by this switch profile"}, "type": {"$ref": "#/components/schemas/const_device_type_switch", "description": "Device type discriminator for switch profiles"}, "use_router_id_as_source_ip": {"default": false, "description": "Whether to use it for snmp / syslog / tacplus / radius", "type": "boolean"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF defaults applied by this switch profile"}, "vrf_instances": {"$ref": "#/components/schemas/switch_vrf_instances", "description": "VRF instances configured by this switch profile"}, "vrrp_config": {"$ref": "#/components/schemas/vrrp_config", "description": "VRRP defaults applied by this switch profile"}}, "required": ["name", "type"], "type": "object"}, "deviceprofiles": {"description": "List of device profile configurations", "items": {"$ref": "#/components/schemas/deviceprofile"}, "type": "array"}, "devices_gbp_tag": {"description": "Request body for assigning a GBP tag to multiple devices", "properties": {"gbp_tag": {"description": "Group-Based Policy tag value to apply to the devices", "type": "integer"}, "macs": {"$ref": "#/components/schemas/mac_addresses_macs", "description": "Device MAC addresses that receive the GBP tag"}}, "required": ["macs", "gbp_tag"], "type": "object"}, "devices_ids": {"description": "Request body containing device identifiers", "properties": {"device_ids": {"description": "Device identifiers to operate on in the request", "items": {"format": "uuid", "type": "string"}, "type": "array"}}, "required": ["device_ids"], "type": "object"}, "dhcp_client_option": {"additionalProperties": false, "description": "DHCP client option observed in a DHCP packet", "properties": {"code": {"description": "DHCP option code and option name", "examples": ["DHO_DHCP_MESSAGE_TYPE(53)"], "type": "string"}, "data": {"description": "Decoded value carried by the DHCP option", "examples": ["DHCPREQUEST"], "type": "string"}}, "type": "object"}, "dhcp_snooping": {"additionalProperties": false, "description": "DHCP snooping security settings", "properties": {"all_networks": {"description": "Whether DHCP snooping applies to all configured 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": {"description": "Whether DHCP snooping is enabled", "type": "boolean"}, "networks": {"$ref": "#/components/schemas/dhcp_snooping_networks", "description": "Network names with DHCP snooping enabled when `all_networks`==`false`"}}, "type": "object"}, "dhcp_snooping_networks": {"description": "If `all_networks`==`false`, list of network with DHCP snooping enabled", "items": {"type": "string"}, "type": "array"}, "dhcpd_config": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_property"}, "description": "DHCP server configuration map with a global enable flag", "properties": {"enabled": {"default": true, "description": "If set to `false`, disable the DHCP server", "type": "boolean"}}, "type": "object"}, "dhcpd_config_dns_servers": {"description": "If `type`==`local` or `type6`==`local` - optional, if not defined, system one will be used", "examples": [["8.8.8.8", "4.4.4.4", "2001:4860:4860::8888"]], "items": {"type": "string"}, "type": "array"}, "dhcpd_config_dns_suffix": {"description": "If `type`==`local` or `type6`==`local` - optional, if not defined, system one will be used", "examples": [[".mist.local", ".mist.com"]], "items": {"type": "string"}, "type": "array"}, "dhcpd_config_fixed_binding": {"additionalProperties": false, "description": "Static DHCP binding for a client MAC address", "properties": {"ip": {"description": "Reserved IPv4 address for this fixed DHCP binding", "examples": ["192.168.70.35"], "type": "string"}, "ip6": {"description": "Reserved IPv6 address for this fixed DHCP binding", "examples": ["2607:f8b0:4005:808::2"], "type": "string"}, "name": {"description": "Friendly name for this fixed DHCP binding", "type": "string"}}, "type": "object"}, "dhcpd_config_fixed_bindings": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_fixed_binding"}, "description": "If `type`==`local` or `type6`==`local`. Property key is the client MAC address. Format is `[0-9a-f]{12}` (e.g. \"5684dae9ac8b\")", "examples": [{"5684dae9ac8b": {"ip": "192.168.70.35", "name": "John"}}], "type": "object"}, "dhcpd_config_option": {"additionalProperties": false, "description": "Custom DHCP option value", "properties": {"type": {"$ref": "#/components/schemas/dhcpd_config_option_type", "description": "Data type used to encode this DHCP option value"}, "value": {"description": "Option value to send for this DHCP option", "type": "string"}}, "type": "object"}, "dhcpd_config_option_type": {"description": "enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`", "enum": ["boolean", "hex", "int16", "int32", "ip", "string", "uint16", "uint32"], "type": "string"}, "dhcpd_config_options": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_option"}, "description": "If `type`==`local` or `type6`==`local`. Property key is the DHCP option number", "type": "object"}, "dhcpd_config_property": {"additionalProperties": false, "description": "DHCP server or relay configuration for one network", "properties": {"dns_servers": {"$ref": "#/components/schemas/dhcpd_config_dns_servers", "description": "If `type`==`local` or `type6`==`local`, DNS servers advertised to DHCP clients"}, "dns_suffix": {"$ref": "#/components/schemas/dhcpd_config_dns_suffix", "description": "If `type`==`local` or `type6`==`local`, DNS search suffixes advertised to DHCP clients"}, "fixed_bindings": {"$ref": "#/components/schemas/dhcpd_config_fixed_bindings", "description": "If `type`==`local` or `type6`==`local`, fixed client bindings for local DHCP service"}, "gateway": {"description": "If `type`==`local` - optional, `ip` will be used if not provided", "examples": ["192.168.70.1"], "type": "string"}, "ip6_end": {"description": "If `type6`==`local`, ending IPv6 address for the DHCP lease pool", "examples": ["2607:f8b0:4005:808::ff"], "type": "string"}, "ip6_start": {"description": "If `type6`==`local`, starting IPv6 address for the DHCP lease pool", "examples": ["2607:f8b0:4005:808::2"], "type": "string"}, "ip_end": {"description": "If `type`==`local`, ending IPv4 address for the DHCP lease pool", "examples": ["192.168.70.200"], "type": "string"}, "ip_start": {"description": "If `type`==`local`, starting IPv4 address for the DHCP lease pool", "examples": ["192.168.70.100"], "type": "string"}, "lease_time": {"default": 86400, "description": "In seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]", "maximum": 604800, "minimum": 3600, "type": "integer"}, "options": {"$ref": "#/components/schemas/dhcpd_config_options", "description": "If `type`==`local` or `type6`==`local`, custom DHCP options advertised to clients"}, "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": {"$ref": "#/components/schemas/dhcpd_config_servers", "description": "If `type`==`relay`, upstream IPv4 DHCP servers"}, "serversv6": {"$ref": "#/components/schemas/dhcpd_config_servers6", "description": "If `type6`==`relay`, upstream IPv6 DHCP servers"}, "type": {"$ref": "#/components/schemas/dhcpd_config_type", "description": "IPv4 DHCP mode for this network"}, "type6": {"$ref": "#/components/schemas/dhcpd_config_type6", "description": "IPv6 DHCP mode for this network"}, "vendor_encapsulated": {"$ref": "#/components/schemas/dhcpd_config_vendor_options", "description": "If `type`==`local` or `type6`==`local`, vendor-encapsulated DHCP options advertised to clients"}}, "type": "object"}, "dhcpd_config_servers": {"description": "If `type`==`relay`, upstream IPv4 DHCP servers", "examples": [["11.2.3.4"]], "items": {"type": "string"}, "type": "array"}, "dhcpd_config_servers6": {"description": "If `type6`==`relay`, upstream IPv6 DHCP servers", "examples": [["2607:f8b0:4005:808::64"]], "items": {"type": "string"}, "type": "array"}, "dhcpd_config_type": {"default": "local", "description": "enum: `local` (DHCP Server), `none`, `relay` (DHCP Relay)", "enum": ["local", "none", "relay"], "type": "string"}, "dhcpd_config_type6": {"default": "none", "description": "enum: `local` (DHCP Server), `none`, `relay` (DHCP Relay)", "enum": ["local", "none", "relay"], "type": "string"}, "dhcpd_config_vendor_option": {"additionalProperties": false, "description": "Vendor-encapsulated DHCP option value", "properties": {"type": {"$ref": "#/components/schemas/dhcpd_config_vendor_option_type", "description": "Data type used to encode this vendor option value"}, "value": {"description": "Option value to send for this vendor option", "type": "string"}}, "type": "object"}, "dhcpd_config_vendor_option_type": {"description": "enum: `boolean`, `hex`, `int16`, `int32`, `ip`, `string`, `uint16`, `uint32`", "enum": ["boolean", "hex", "int16", "int32", "ip", "string", "uint16", "uint32"], "type": "string"}, "dhcpd_config_vendor_options": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_vendor_option"}, "description": "If `type`==`local` or `type6`==`local`. Property key is :, with\n * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)\n * sub option code: 1-255, sub-option code", "type": "object"}, "dhcpd_stat": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_stat_lan"}, "description": "Property key is the network name", "type": "object"}, "dhcpd_stat_lan": {"additionalProperties": false, "description": "DHCP lease statistics for one network", "properties": {"num_ips": {"description": "Total number of IP addresses in the DHCP pool", "examples": [100], "type": "integer"}, "num_leased": {"description": "Number of DHCP pool addresses currently leased", "examples": [20], "type": "integer"}}, "type": "object"}, "discovered_switch": {"additionalProperties": false, "description": "Switch discovered from AP uplink LLDP data and site switch discovery", "properties": {"adopted": {"description": "Whether the discovered switch has been adopted into Mist management", "type": "boolean"}, "ap_redundancy": {"$ref": "#/components/schemas/ap_redundancy", "description": "AP switch redundancy summary for APs connected through the discovered switch"}, "aps": {"$ref": "#/components/schemas/discovered_switch_aps", "description": "Connected APs observed on ports of the discovered switch"}, "chassis_id": {"$ref": "#/components/schemas/strings", "description": "LLDP chassis identifier reported by the discovered switch"}, "for_site": {"description": "Whether the discovered switch is associated with the requested site", "readOnly": true, "type": "boolean"}, "mgmt_addr": {"description": "Management IP address advertised by the discovered switch", "type": "string"}, "model": {"description": "Switch model reported for the discovered switch", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the discovered switch record"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where the switch was discovered"}, "system_desc": {"description": "LLDP system description advertised by the discovered switch", "type": "string"}, "system_name": {"description": "LLDP system name advertised by the discovered switch", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the discovered switch data was observed"}, "vendor": {"description": "Switch vendor reported for the discovered switch", "type": "string"}, "version": {"description": "Software version reported for the discovered switch", "type": "string"}}, "type": "object"}, "discovered_switch_ap": {"additionalProperties": false, "description": "AP attachment details observed on a discovered switch", "properties": {"hostname": {"description": "AP hostname observed on the discovered switch", "type": "string"}, "inactive_wired_vlans": {"$ref": "#/components/schemas/integers", "description": "Inactive wired VLAN IDs reported for the AP attachment"}, "mac": {"description": "AP MAC address observed on the discovered switch", "type": "string"}, "poe_status": {"description": "Whether the upstream switch port provides PoE for the AP", "type": "boolean"}, "port": {"description": "Switch port name connected to the AP", "type": "string"}, "port_id": {"description": "LLDP port identifier for the AP uplink", "type": "string"}, "power_draw": {"description": "Power draw reported for the AP connection", "type": "number"}, "when": {"description": "Timestamp when this AP attachment was last observed", "type": "string"}}, "type": "object"}, "discovered_switch_aps": {"description": "AP attachments observed on a discovered switch", "items": {"$ref": "#/components/schemas/discovered_switch_ap"}, "type": "array", "uniqueItems": true}, "discovered_switch_metric": {"additionalProperties": false, "description": "Time-series metric result for discovered switch health or compliance", "properties": {"adopted": {"description": "Whether the discovered switch in this metric has been adopted into Mist management", "type": "boolean"}, "aps": {"$ref": "#/components/schemas/discovered_switch_metric_aps", "description": "AP attachment details included with this discovered switch metric"}, "chassis_id": {"$ref": "#/components/schemas/discovered_switch_metric_chassis_id", "description": "LLDP chassis identifiers associated with this metric result"}, "hostname": {"description": "Switch hostname associated with this metric result", "examples": ["SW-HLAB-ea2e00"], "type": "string"}, "mgmt_addr": {"description": "Management IP address associated with this metric result", "examples": ["10.10.20.42"], "type": "string"}, "model": {"description": "Switch model associated with this metric result", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the discovered switch metric"}, "scope": {"description": "Aggregation scope for the discovered switch metric result", "examples": ["site"], "type": "string"}, "score": {"description": "Compliance or health score for the discovered switch metric", "examples": [100], "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the discovered switch metric"}, "system_desc": {"description": "LLDP system description associated with this metric result", "examples": ["Juniper Networks, Inc. ex4100-f-12p Ethernet Switch, kernel JUNOS 22.4R3.25, Build date: 2024-02-10 00:49:09 UTC Copyright (c) 1996-2024 Juniper Networks, Inc."], "type": "string"}, "system_name": {"description": "LLDP system name associated with this metric result", "examples": ["SW-HLAB-ea2e00"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time bucket for the discovered switch metric result"}, "type": {"description": "Metric category represented by this discovered switch metric", "examples": ["inactive_wired_vlans"], "type": "string"}, "vendor": {"description": "Switch vendor associated with this metric result", "type": "string"}, "version": {"description": "Software version associated with this metric result", "type": "string"}}, "type": "object"}, "discovered_switch_metric_ap": {"additionalProperties": false, "description": "AP attachment details included in a discovered switch metric", "properties": {"hostname": {"description": "AP hostname included in the discovered switch metric", "type": "string"}, "mac": {"description": "AP MAC address included in the discovered switch metric", "type": "string"}, "poe_status": {"description": "Whether the upstream switch port provides PoE for this AP", "type": "boolean"}, "port": {"description": "Switch port name connected to this AP", "type": "string"}, "port_id": {"description": "LLDP port identifier for this AP uplink", "type": "string"}, "power_draw": {"description": "Power draw reported for this AP connection", "type": "integer"}, "when": {"description": "Timestamp when this AP attachment metric was observed", "type": "string"}}, "type": "object"}, "discovered_switch_metric_aps": {"description": "AP attachment details included in discovered switch metrics", "items": {"$ref": "#/components/schemas/discovered_switch_metric_ap"}, "type": "array"}, "discovered_switch_metric_chassis_id": {"description": "LLDP chassis identifiers associated with a discovered switch metric", "items": {"type": "string"}, "type": "array"}, "discovered_switch_metric_type": {"description": "enum: `inactive_wired_vlans`, `poe_compliance`, `switch_ap_affinity`, `version_compliance`", "enum": ["inactive_wired_vlans", "poe_compliance", "switch_ap_affinity", "version_compliance"], "type": "string"}, "discovered_switches_metric_scope": {"default": "site", "description": "Scope level used when querying discovered switch metrics. enum: `site`, `switch`", "enum": ["site", "switch"], "type": "string"}, "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"}, "dot11_band": {"description": "enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`", "enum": ["24", "5", "5-dedicated", "5-selectable", "6", "6-dedicated", "6-selectable"], "type": "string"}, "dot11_bandwidth": {"description": "channel width for the band.enum: `0`(disabled, response only), `20`, `40`, `80` (only applicable for band_5 and band_6), `160` (only for band_6)", "enum": [0, 20, 40, 80, 160], "examples": [20], "type": "integer"}, "dot11_bandwidth24": {"default": 20, "description": "channel width for the 2.4GHz band. enum: `0`(disabled, response only), `20`, `40`", "enum": [0, 20, 40], "examples": [20], "type": "integer"}, "dot11_bandwidth5": {"default": 40, "description": "channel width for the 5GHz band. enum: `0`(disabled, response only), `20`, `40`, `80`", "enum": [0, 20, 40, 80], "examples": [40], "type": "integer"}, "dot11_bandwidth6": {"default": 80, "description": "channel width for the 6GHz band. enum: `0`(disabled, response only), `20`, `40`, `80`, `160`", "enum": [0, 20, 40, 80, 160], "examples": [80], "type": "integer"}, "dot11_proto": {"description": "enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`", "enum": ["a", "ac", "ax", "b", "be", "g", "n"], "type": "string"}, "dscp": {"anyOf": [{"type": "string"}, {"maximum": 63, "minimum": 0, "type": "integer"}], "description": "DSCP value range between 0 and 63"}, "dswitches_compliance_major_version": {"additionalProperties": false, "description": "Version-compliance grouping for one discovered switch model", "properties": {"major_count": {"description": "Number of major software versions observed for this switch model", "type": "number"}, "model": {"description": "Switch model represented by this version-compliance grouping", "type": "string"}, "system_names": {"$ref": "#/components/schemas/strings", "description": "Discovered switch system names included in this version-compliance grouping"}}, "required": ["model", "major_count"], "type": "object"}, "dswitches_compliance_major_versions": {"description": "Version-compliance groupings by discovered switch model", "items": {"$ref": "#/components/schemas/dswitches_compliance_major_version"}, "type": "array", "uniqueItems": true}, "dswitches_metrics_inactive_wired_vlans": {"additionalProperties": false, "description": "Inactive wired VLAN metric for APs connected to discovered switches", "properties": {"details": {"additionalProperties": true, "description": "Metric-specific details for inactive wired VLAN findings", "type": "object"}, "score": {"description": "Compliance score for the inactive wired VLAN metric", "type": "number"}}, "required": ["score", "details"], "type": "object"}, "dswitches_metrics_poe_compliance": {"additionalProperties": false, "description": "PoE compliance metric for APs connected to discovered switches", "properties": {"details": {"$ref": "#/components/schemas/dswitches_metrics_poe_compliance_details", "description": "Counts and power totals used to calculate the PoE compliance score"}, "score": {"description": "Compliance score for the PoE compliance metric", "type": "number"}}, "required": ["score", "details"], "type": "object"}, "dswitches_metrics_poe_compliance_details": {"additionalProperties": false, "description": "Detail values used by the discovered-switch PoE compliance metric", "properties": {"total_aps": {"description": "Number of APs evaluated for PoE compliance", "type": "integer"}, "total_power": {"description": "Aggregate AP PoE power demand across evaluated APs, in mW", "type": "number"}}, "required": ["total_power", "total_aps"], "type": "object"}, "dswitches_metrics_switch_ap_affinity": {"additionalProperties": false, "description": "Switch/AP affinity metric for discovered switches", "properties": {"details": {"$ref": "#/components/schemas/dswitches_metrics_switch_ap_affinity_details", "description": "Switch names and threshold used to calculate the affinity score"}, "score": {"description": "Compliance score for the switch/AP affinity metric", "type": "number"}}, "required": ["score", "details"], "type": "object"}, "dswitches_metrics_switch_ap_affinity_details": {"additionalProperties": false, "description": "Detail values used by the switch/AP affinity metric", "properties": {"system_name": {"$ref": "#/components/schemas/strings", "description": "Discovered switch system names reported for the affinity metric"}, "threshold": {"description": "APs-per-switch threshold used for the affinity metric", "type": "number"}}, "required": ["threshold", "system_name"], "type": "object"}, "dswitches_metrics_version_compliance": {"additionalProperties": false, "description": "Version compliance metric for discovered switches", "properties": {"details": {"$ref": "#/components/schemas/dswitches_metrics_version_compliance_details", "description": "Version grouping details used to calculate the compliance score"}, "score": {"description": "Compliance score for the discovered-switch version metric", "type": "number"}}, "required": ["score", "details"], "type": "object"}, "dswitches_metrics_version_compliance_details": {"additionalProperties": false, "description": "Detail values used by the discovered-switch version compliance metric", "properties": {"major_versions": {"$ref": "#/components/schemas/dswitches_compliance_major_versions", "description": "Per-model major version groupings used for version compliance"}, "total_switch_count": {"description": "Number of discovered switches evaluated for version compliance", "type": "integer"}}, "required": ["major_versions", "total_switch_count"], "type": "object"}, "dynamic_psk_source": {"default": "radius", "description": "Origin used to retrieve per-user PSKs. enum: `cloud_psks`, `radius`", "enum": ["cloud_psks", "radius"], "examples": ["cloud_psks"], "type": "string"}, "edr_provider": {"description": "EDR provider associated with the NAC client. enum: `crowdstrike`, `sentinelone`", "enum": ["crowdstrike", "sentinelone"], "type": "string"}, "edr_status": {"description": "EDR Status of the NAC client. enum: `sentinelone_healthy`, `sentinelone_infected`, `crowdstrike_low`, `crowdstrike_medium`, `crowdstrike_high`, `crowdstrike_critical`, `crowdstrike_informational`", "enum": ["sentinelone_healthy", "sentinelone_infected", "crowdstrike_low", "crowdstrike_medium", "crowdstrike_high", "crowdstrike_critical", "crowdstrike_informational"], "type": "string"}, "email_string": {"description": "Request body containing an email address", "properties": {"email": {"description": "Request email address provided in the payload", "format": "email", "type": "string"}}, "required": ["email"], "type": "object"}, "error_delete_failed": {"additionalProperties": false, "description": "Error response returned when an organization delete request is blocked", "properties": {"detail": {"description": "Reason the delete request failed", "examples": ["inventory not empty"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that could not be deleted and caused the delete request to fail"}}, "required": ["detail", "org_id"], "type": "object"}, "event_fastroam": {"additionalProperties": false, "description": "Fast-roaming event observed for a wireless client", "properties": {"ap_mac": {"description": "Destination AP MAC address for the roam", "type": "string"}, "client_mac": {"description": "Roaming client MAC address for the event", "type": "string"}, "fromap": {"description": "Source AP MAC address reported for the roam", "type": "string"}, "latency": {"description": "Roaming latency measured for the client event, in seconds", "type": "number"}, "ssid": {"description": "Wireless network SSID involved in the roam", "type": "string"}, "subtype": {"description": "Detailed roaming event subtype", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the roaming event occurred"}, "type": {"$ref": "#/components/schemas/event_fastroam_type", "description": "Fast-roam result category for the event"}}, "required": ["latency", "ssid", "timestamp", "ap_mac", "fromap", "client_mac"], "type": "object"}, "event_fastroam_type": {"description": "enum: `fail`, `none`, `pingpong`, `poor`, `slow`, `success`", "enum": ["fail", "none", "pingpong", "poor", "slow", "success"], "type": "string"}, "event_otherdevice": {"additionalProperties": false, "description": "Event generated by an other-device integration or attached device", "properties": {"device_mac": {"description": "Attached device MAC address associated with the other-device event", "type": "string"}, "mac": {"description": "Other-device MAC address associated with the event", "examples": ["5c5b351e13b5"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the other-device event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where the other-device event occurred"}, "text": {"description": "Human-readable message for the other-device event", "examples": ["Plugged: The Internal 5GB (SIM1) has been inserted into Internal 1."], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the other-device event occurred"}, "type": {"description": "Event type for the other-device event", "examples": ["CELLULAR_EDGE_MODEM_WAN_PLUGGED"], "type": "string"}, "vendor": {"description": "Manufacturer or vendor name reported for the other device", "examples": ["cradlepoint"], "type": "string"}}, "type": "object"}, "event_severity": {"description": "Severity level for an event. enum: `normal`, `critical`, `high`, `warning`", "enum": ["normal", "critical", "high", "warning"], "type": "string"}, "events_client": {"additionalProperties": false, "description": "Wireless client event returned by client event search APIs", "properties": {"ap": {"description": "Access point MAC address associated with the wireless client event", "type": "string"}, "band": {"$ref": "#/components/schemas/dot11_band", "description": "Radio band used for the wireless client event"}, "bssid": {"description": "Wireless BSSID involved in the client event", "type": "string"}, "channel": {"description": "Radio channel used for the wireless client event", "type": "integer"}, "key_mgmt": {"$ref": "#/components/schemas/client_key_mgmt", "description": "Key management protocol used by the client session"}, "proto": {"$ref": "#/components/schemas/dot11_proto", "description": "802.11 protocol used by the client session"}, "ssid": {"description": "Wireless network SSID involved in the client event", "type": "string"}, "text": {"description": "Human-readable message for the client event", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client event occurred"}, "type": {"description": "Event type, e.g. MARVIS_EVENT_CLIENT_FBT_FAILURE", "type": "string"}, "type_code": {"description": "Reason code for association or disassociation client events", "type": "integer"}, "wlan_id": {"description": "Wireless LAN identifier associated with the client event", "format": "uuid", "type": "string"}}, "required": ["timestamp", "band"], "type": "object"}, "events_client_wan": {"additionalProperties": false, "description": "WAN client event returned by WAN client event search APIs", "properties": {"When": {"description": "Event timestamp string reported by the WAN client event source", "examples": ["2022-12-31 23:59:59.293000+00:00"], "type": "string"}, "ev_type": {"description": "WAN client event type identifier", "examples": ["CLIENT_IP_ASSIGNED"], "type": "string"}, "metadata": {"additionalProperties": true, "description": "Additional attributes provided with the WAN client event", "type": "object"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the WAN client event"}, "random_mac": {"description": "Whether the WAN client used a randomized MAC address", "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where the WAN client event occurred"}, "text": {"description": "Human-readable message for the WAN client event", "examples": ["DHCP Ack IP 192.168.88.216"], "type": "string"}, "wcid": {"description": "WAN client identifier associated with the event", "examples": ["62bbfb75-10d8-49d1-dec7-d2df91624287"], "format": "uuid", "type": "string"}}, "type": "object"}, "events_rogue": {"additionalProperties": false, "description": "Rogue wireless network event detected by a site AP", "properties": {"ap": {"description": "Access point MAC address that detected the rogue BSSID", "type": "string"}, "bssid": {"description": "Rogue BSSID observed by the AP", "type": "string"}, "channel": {"description": "Radio channel where the rogue BSSID was observed", "type": "integer"}, "rssi": {"description": "Received signal strength of the rogue BSSID, in dBm", "type": "integer"}, "ssid": {"description": "Wireless network SSID advertised by the rogue BSSID", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the rogue event was observed"}}, "required": ["ssid", "bssid", "timestamp", "ap", "rssi", "channel"], "type": "object"}, "events_skyatp": {"additionalProperties": false, "description": "SkyATP threat event returned by SkyATP event search APIs", "properties": {"device_mac": {"description": "Network device MAC address that reported the SkyATP event", "readOnly": true, "type": "string"}, "for_site": {"description": "Whether the SkyATP event is scoped to a site rather than only the organization", "readOnly": true, "type": "boolean"}, "ip": {"description": "Client IP address associated with the SkyATP event", "readOnly": true, "type": "string"}, "mac": {"description": "Client MAC address associated with the SkyATP event", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the SkyATP event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site where the SkyATP event occurred"}, "threat_level": {"description": "Numeric SkyATP threat level reported for the event", "readOnly": true, "type": "integer"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the SkyATP event occurred"}, "type": {"description": "SkyATP event type, such as `cc`, `fs`, or `mw`", "readOnly": true, "type": "string"}}, "required": ["mac", "threat_level", "device_mac", "timestamp", "org_id", "site_id", "type", "ip"], "type": "object"}, "evpn_config": {"additionalProperties": false, "description": "EVPN configuration settings applied to a Junos switch", "properties": {"enabled": {"description": "Whether EVPN configuration is enabled on the switch", "readOnly": true, "type": "boolean"}, "role": {"$ref": "#/components/schemas/evpn_config_role", "description": "EVPN topology role for the switch"}}, "readOnly": true, "type": "object"}, "evpn_config_role": {"description": "enum: `access`, `border`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`", "enum": ["access", "border", "collapsed-core", "core", "distribution", "esilag-access", "none"], "readOnly": true, "type": "string"}, "evpn_options": {"additionalProperties": false, "description": "EVPN topology generation options for campus fabric configuration", "properties": {"auto_loopback_subnet": {"default": "172.16.192.0/24", "description": "Optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides", "type": "string"}, "auto_loopback_subnet6": {"default": "fd33:ab00:2::/64", "description": "Optional, for dhcp_relay, unique loopback IPs are required for ERB or IPClos where we can set option-82 server_id-overrides", "type": "string"}, "auto_router_id_subnet": {"default": "172.16.254.0/23", "description": "Optional, this generates router_id automatically, if specified, `router_id_prefix` is ignored", "type": "string"}, "auto_router_id_subnet6": {"description": "Optional, this generates router_id automatically, if specified, `router_id_prefix` is ignored", "examples": ["fd31:5700:1::/64"], "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"}, "enable_inband_mgmt": {"default": false, "description": "Whether to route management traffic inband; routes will be propagated to downstream switches", "type": "boolean"}, "enable_inband_ztp": {"default": false, "description": "if the mangement traffic goes inbnd, during installation, only the border/core switches are connected to the Internet to allow initial configuration to be pushed down and leave the downstream access switches stay in the Factory Default state enabling inband-ztp allows upstream switches to use LLDP to assign IP and gives Internet to downstream switches in that state", "type": "boolean"}, "overlay": {"$ref": "#/components/schemas/evpn_options_overlay", "description": "EVPN overlay BGP settings for the topology"}, "per_vlan_vga_v4_mac": {"default": false, "description": "Only for by Core-Distribution architecture when `evpn_options.routed_at`==`core`. By default, JUNOS uses 00-00-5e-00-01-01 as the virtual-gateway-address's v4_mac. If enabled, 00-00-5e-00-0X-YY will be used (where XX=vlan_id/256, YY=vlan_id%256)", "type": "boolean"}, "per_vlan_vga_v6_mac": {"default": false, "description": "Only for by Core-Distribution architecture when `evpn_options.routed_at`==`core`. By default, JUNOS uses 00-00-5e-00-02-01 as the virtual-gateway-address's v6_mac. If enabled, 00-00-5e-00-1X-YY will be used (where XX=vlan_id/256, YY=vlan_id%256)", "type": "boolean"}, "routed_at": {"$ref": "#/components/schemas/evpn_options_routed_at", "description": "Topology tier where EVPN virtual gateway routing is placed"}, "underlay": {"$ref": "#/components/schemas/evpn_options_underlay", "description": "EVPN underlay BGP and subnet settings for the topology"}, "vs_instances": {"$ref": "#/components/schemas/evpn_options_vs_instances", "description": "Virtual-switch instance mappings used to segregate EVPN networks"}}, "type": "object"}, "evpn_options_overlay": {"additionalProperties": false, "description": "EVPN overlay BGP settings", "properties": {"as": {"default": 65000, "description": "Overlay BGP Local AS Number", "examples": [65000], "maximum": 65535, "minimum": 1, "type": "integer"}}, "type": "object"}, "evpn_options_routed_at": {"default": "edge", "description": "optional, where virtual-gateway should reside. enum: `core`, `distribution`, `edge`", "enum": ["core", "distribution", "edge"], "type": "string"}, "evpn_options_underlay": {"additionalProperties": false, "description": "EVPN underlay BGP and subnet settings", "properties": {"as_base": {"default": 65001, "description": "Underlay BGP Base AS Number", "examples": [65001], "maximum": 65535, "minimum": 1, "type": "integer"}, "routed_id_prefix": {"description": "Prefix length used for automatically derived underlay router identifiers", "examples": ["/24"], "type": "string"}, "subnet": {"description": "Underlay subnet, by default, `10.255.240.0/20`, or `fd31:5700::/64` for ipv6", "examples": ["10.255.240.0/20"], "type": "string"}, "use_ipv6": {"default": false, "description": "If v6 is desired for underlay", "type": "boolean"}}, "type": "object"}, "evpn_options_vs_instance": {"additionalProperties": false, "description": "EVPN virtual-switch instance network mapping", "properties": {"networks": {"$ref": "#/components/schemas/strings", "description": "List of network names included in this virtual-switch instance"}}, "type": "object"}, "evpn_options_vs_instances": {"additionalProperties": {"$ref": "#/components/schemas/evpn_options_vs_instance"}, "description": "Optional, for EX9200 only to segregate virtual-switches", "examples": [{"guest": {"networks": ["guest"]}, "iot": {"networks": ["iot-wifi", "iot-lan"]}}], "type": "object"}, "evpn_topologies_response": {"description": "EVPN topology records returned by list APIs", "items": {"$ref": "#/components/schemas/evpn_topology_response"}, "type": "array"}, "evpn_topology": {"description": "EVPN topology create or update payload", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the EVPN topology was created"}, "evpn_options": {"$ref": "#/components/schemas/evpn_options", "description": "Generation options applied to the EVPN topology"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the EVPN topology"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the EVPN topology was last modified"}, "name": {"description": "Display name for the EVPN topology", "examples": ["CC"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the EVPN topology"}, "overwrite": {"description": "Whether to apply generated EVPN configuration changes automatically", "type": "boolean"}, "pod_names": {"additionalProperties": {"type": "string"}, "description": "Property key is the pod number", "type": "object"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the EVPN topology"}, "switch_configs": {"$ref": "#/components/schemas/evpn_topology_switch_configs", "description": "Per-switch configuration overrides included in the EVPN topology"}, "switches": {"$ref": "#/components/schemas/evpn_topology_switches", "description": "Topology member switches, roles, and links"}}, "required": ["switches"], "type": "object"}, "evpn_topology_response": {"additionalProperties": false, "description": "EVPN topology metadata returned by EVPN topology APIs", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the EVPN topology was created"}, "evpn_options": {"$ref": "#/components/schemas/evpn_options", "description": "Generation options applied to the EVPN topology"}, "for_site": {"description": "Whether the EVPN topology is scoped to a site rather than the organization", "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the EVPN topology"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the EVPN topology was last modified"}, "name": {"description": "Display name for the EVPN topology", "examples": ["CC"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the EVPN topology"}, "overwrite": {"description": "Whether generated EVPN configuration changes are applied automatically", "type": "boolean"}, "pod_names": {"additionalProperties": {"type": "string"}, "description": "Property key is the pod number", "type": "object"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the EVPN topology"}}, "type": "object"}, "evpn_topology_switch": {"additionalProperties": false, "description": "Switch member of an EVPN topology, including role and link relationships", "properties": {"config": {"$ref": "#/components/schemas/evpn_topology_switch_config", "description": "Per-switch configuration supplied for this topology member. Use the [Update Site Device](/#operations/updateSiteDevice) endpoint to update the switch configuration."}, "deviceprofile_id": {"description": "Associated device profile identifier for the switch. Use the [Assign Org Device Profile](/#operations/assignOrgDeviceProfile) endpoint to assign a Device Profile to the switch.", "examples": ["6a1deab1-96df-4fa2-8455-d5253f943d06"], "format": "uuid", "readOnly": true, "type": "string"}, "downlink_ips": {"$ref": "#/components/schemas/evpn_topology_switch_downlink_ips", "description": "IP addresses used by this switch for EVPN downlinks"}, "downlinks": {"$ref": "#/components/schemas/evpn_topology_switch_downlinks", "description": "Switch MAC addresses connected as downlinks from this topology member"}, "esilaglinks": {"$ref": "#/components/schemas/evpn_topology_switch_esilaglinks", "description": "Switch MAC addresses connected through ESI-LAG from this topology member"}, "evpn_id": {"description": "Topology identifier number for this EVPN switch member", "minimum": 1, "readOnly": true, "type": "integer"}, "mac": {"description": "Switch MAC address used to identify the topology member", "examples": ["5c5b35000003"], "minLength": 1, "type": "string"}, "model": {"description": "Switch model for this topology member", "examples": ["QFX10002-36Q"], "readOnly": true, "type": "string"}, "pod": {"default": 1, "description": "Optionally, for distribution / access / esilag-access, they can be placed into different pods. e.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": {"$ref": "#/components/schemas/evpn_topology_switch_pods", "description": "List of pod numbers this switch participates in"}, "role": {"$ref": "#/components/schemas/evpn_topology_switch_role", "description": "EVPN topology role for this switch"}, "router_id": {"description": "Routing identifier used by this switch for EVPN routing", "examples": ["172.16.254.4"], "readOnly": true, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site for this EVPN topology switch"}, "suggested_downlinks": {"$ref": "#/components/schemas/evpn_topology_switch_suggested_downlinks", "description": "Builder-suggested downlink switch MAC addresses"}, "suggested_esilaglinks": {"$ref": "#/components/schemas/evpn_topology_switch_suggested_esilaglinks", "description": "Builder-suggested ESI-LAG switch MAC addresses"}, "suggested_uplinks": {"$ref": "#/components/schemas/evpn_topology_switch_suggested_uplinks", "description": "Builder-suggested uplink switch MAC addresses"}, "uplinks": {"$ref": "#/components/schemas/evpn_topology_switch_uplinks", "description": "Switch MAC addresses connected as uplinks from this topology member"}}, "required": ["mac", "role"], "type": "object"}, "evpn_topology_switch_config": {"additionalProperties": false, "description": "Per-switch configuration used by an EVPN topology member", "properties": {"dhcpd_config": {"$ref": "#/components/schemas/evpn_topology_switch_config_dhcpd_config", "description": "Switch DHCP server configuration for the topology member"}, "networks": {"$ref": "#/components/schemas/switch_networks", "description": "EVPN network definitions for the topology member"}, "other_ip_configs": {"$ref": "#/components/schemas/evpn_topology_switch_config_other_ip_configs", "description": "Additional interface IP configurations for the topology member"}, "port_config": {"$ref": "#/components/schemas/wired_port_config", "description": "Switch port configuration for the topology member"}, "port_usages": {"$ref": "#/components/schemas/switch_port_usages", "description": "Switch port usage definitions for the topology member"}, "router_id": {"description": "Used for OSPF / BGP / EVPN", "examples": ["10.2.1.10"], "type": "string"}, "vrf_config": {"$ref": "#/components/schemas/evpn_topology_switch_config_vrf_config", "description": "Routing instance and VRF settings for the topology member"}}, "type": "object"}, "evpn_topology_switch_config_dhcpd_config": {"additionalProperties": false, "description": "DHCP server enablement for an EVPN topology switch override", "properties": {"enabled": {"description": "If DHCPD is enabled on the switch", "type": "boolean"}}, "type": "object"}, "evpn_topology_switch_config_other_ip_configs": {"additionalProperties": {"$ref": "#/components/schemas/junos_other_ip_config"}, "description": "Additional IP addresses configured on the switch. Property key is the port network name", "type": "object"}, "evpn_topology_switch_config_vrf_config": {"additionalProperties": false, "description": "VRF enablement for an EVPN topology switch override", "properties": {"enabled": {"description": "Whether to enable VRF (when supported on the device)", "type": "boolean"}}, "type": "object"}, "evpn_topology_switch_configs": {"additionalProperties": {"$ref": "#/components/schemas/evpn_topology_switch_config"}, "description": "Property key is the switch MAC address", "type": "object"}, "evpn_topology_switch_downlink_ips": {"description": "Downlink IP addresses used by an EVPN topology switch", "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "evpn_topology_switch_downlinks": {"description": "Downlink switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"type": "string"}, "type": "array"}, "evpn_topology_switch_esilaglinks": {"description": "ESI-LAG switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"type": "string"}, "type": "array"}, "evpn_topology_switch_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"}, "evpn_topology_switch_role": {"description": "use `role`==`none` to remove a switch from the topology. enum: `access`, `border`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`", "enum": ["access", "border", "collapsed-core", "core", "distribution", "esilag-access", "none"], "minLength": 1, "type": "string"}, "evpn_topology_switch_suggested_downlinks": {"description": "Builder-suggested downlink switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "evpn_topology_switch_suggested_esilaglinks": {"description": "Builder-suggested ESI-LAG switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "evpn_topology_switch_suggested_uplinks": {"description": "Builder-suggested uplink switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "evpn_topology_switch_uplinks": {"description": "Uplink switch MAC addresses for an EVPN topology switch", "examples": [["5c5b35000005", "5c5b35000006"]], "items": {"type": "string"}, "type": "array"}, "evpn_topology_switches": {"description": "Switch members included in an EVPN topology", "items": {"$ref": "#/components/schemas/evpn_topology_switch"}, "type": "array", "uniqueItems": true}, "extra_route": {"additionalProperties": false, "description": "IPv4 static route settings for a destination prefix", "properties": {"discard": {"default": false, "description": "Whether to install a discard route; this takes precedence over next-hop settings", "type": "boolean"}, "metric": {"description": "Route metric for the IPv4 static route", "examples": [null], "maximum": 2147483647, "minimum": 0, "type": ["integer", "null"]}, "next_qualified": {"additionalProperties": {"$ref": "#/components/schemas/extra_route_next_qualified_properties"}, "description": "Qualified next-hop settings keyed by IPv4 next-hop address", "examples": [{"10.3.1.1": {"metric": null, "preference": 40}}], "type": "object"}, "no_resolve": {"default": false, "description": "Whether to prevent recursive next-hop resolution for the IPv4 static route", "type": "boolean"}, "preference": {"description": "Route preference for the IPv4 static route", "examples": [30], "maximum": 2147483647, "minimum": 0, "type": ["integer", "null"]}, "via": {"$ref": "#/components/schemas/next_hop_via", "description": "Next-hop IPv4 address or ECMP next-hop IPv4 addresses for the route"}}, "type": "object"}, "extra_route6": {"additionalProperties": false, "description": "IPv6 static route settings for a destination prefix", "properties": {"discard": {"default": false, "description": "Whether to install a discard route; this takes precedence over next-hop settings", "type": "boolean"}, "metric": {"description": "Route metric for the IPv6 static route", "examples": [null], "maximum": 2147483647, "minimum": 0, "type": ["integer", "null"]}, "next_qualified": {"additionalProperties": {"$ref": "#/components/schemas/extra_route6_next_qualified_properties"}, "description": "Qualified next-hop settings keyed by IPv6 next-hop address", "examples": [{"2a02:1234:200a::100": {"metric": null, "preference": 40}}], "type": "object"}, "no_resolve": {"default": false, "description": "Whether to prevent recursive next-hop resolution for the IPv6 static route", "type": "boolean"}, "preference": {"description": "Route preference for the IPv6 static route", "examples": [30], "maximum": 2147483647, "minimum": 0, "type": ["integer", "null"]}, "via": {"$ref": "#/components/schemas/next_hop_via", "description": "Next-hop IPv6 address or ECMP next-hop IPv6 addresses for the route"}}, "type": "object"}, "extra_route6_next_qualified_properties": {"additionalProperties": false, "description": "Qualified next-hop attributes for an IPv6 static route", "properties": {"metric": {"description": "Route metric for this qualified IPv6 next hop", "type": ["integer", "null"]}, "preference": {"description": "Route preference for this qualified IPv6 next hop", "type": ["integer", "null"]}}, "type": "object"}, "extra_route_next_qualified_properties": {"additionalProperties": false, "description": "Qualified next-hop attributes for an IPv4 static route", "properties": {"metric": {"description": "Route metric for this qualified IPv4 next hop", "type": ["integer", "null"]}, "preference": {"description": "Route preference for this qualified IPv4 next hop", "type": ["integer", "null"]}}, "type": "object"}, "extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/extra_route"}, "description": "Property key is the destination CIDR (e.g. \"10.0.0.0/8\")", "examples": [{"0.0.0.0/0": {"via": "192.168.1.10"}}], "type": "object"}, "extra_routes6": {"additionalProperties": {"$ref": "#/components/schemas/extra_route6"}, "description": "Property key is the destination CIDR (e.g. \"2a02:1234:420a:10c9::/64\")", "examples": [{"2a02:1234:420a:10c9::/64": {"via": "2a02:1234:200a::100"}}], "type": "object"}, "fast_roam_result": {"description": "enum: `fail`, `none`, `success`", "enum": ["fail", "none", "success"], "type": "string"}, "fingerprint": {"additionalProperties": false, "description": "Client device fingerprint record returned by NAC fingerprint insights", "properties": {"family": {"description": "Device family or category inferred from client fingerprinting", "readOnly": true, "type": "string"}, "mac": {"description": "Client device MAC address for the fingerprint record", "readOnly": true, "type": "string"}, "mfg": {"description": "Manufacturer name inferred from client fingerprinting", "readOnly": true, "type": "string"}, "model": {"description": "Device model inferred from client fingerprinting", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that contains the fingerprint record"}, "os": {"description": "Operating system name and version inferred from client fingerprinting", "readOnly": true, "type": "string"}, "os_type": {"description": "Operating system family inferred from client fingerprinting", "readOnly": true, "type": "string"}, "random_mac": {"description": "Whether the client device uses a randomized MAC address", "readOnly": true, "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the fingerprint record"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the fingerprint record was observed"}}, "type": "object"}, "fingerprint_search_result": {"additionalProperties": false, "description": "Search response for client device fingerprint records", "properties": {"end": {"description": "Upper bound of the time range for the fingerprint search", "examples": [1711035686], "type": "integer"}, "limit": {"description": "Maximum number of fingerprint records returned in the response", "examples": [10], "type": "integer"}, "next": {"description": "Pagination URL for the next page of fingerprint search results", "type": "string"}, "results": {"$ref": "#/components/schemas/fingerprints", "description": "Fingerprint records returned for the search"}, "start": {"description": "Lower bound of the time range for the fingerprint search", "examples": [1710949286], "type": "integer"}, "total": {"description": "Number of fingerprint records matching the search", "examples": [232], "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "fingerprints": {"description": "Client device fingerprint records", "items": {"$ref": "#/components/schemas/fingerprint"}, "type": "array"}, "fingerprints_count_distinct": {"default": "family", "description": "enum: `family`, `model`, `os`, `os_type`", "enum": ["family", "model", "os", "os_type"], "type": "string"}, "for_site": {"description": "enum: `any`, `true`, `false`", "enum": ["any", "true", "false"], "type": "string"}, "fwupdate_stat": {"additionalProperties": false, "description": "Firmware update status for a device", "properties": {"progress": {"description": "Firmware update progress percentage, or null when unavailable", "examples": [10], "maximum": 100, "minimum": 0, "readOnly": true, "type": ["integer", "null"]}, "status": {"$ref": "#/components/schemas/fwupdate_stat_status", "description": "Current firmware update status"}, "status_id": {"description": "Numeric firmware update status identifier", "examples": [5], "readOnly": true, "type": ["integer", "null"]}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the firmware update status was last updated"}, "will_retry": {"description": "Whether the firmware update process will retry after the current status", "examples": [false], "readOnly": true, "type": ["boolean", "null"]}}, "type": "object"}, "fwupdate_stat_status": {"description": "enum: `inprogress`, `failed`, `upgraded`, `success`, `scheduled`, `error`", "enum": ["inprogress", "failed", "upgraded", "success", "scheduled", "error"], "readOnly": true, "type": ["string", "null"]}, "gateway_cluster": {"description": "Gateway HA cluster request or response body", "properties": {"nodes": {"$ref": "#/components/schemas/gateway_cluster_nodes", "description": "Gateway nodes that form the HA cluster"}}, "required": ["nodes"], "type": "object"}, "gateway_cluster_node": {"additionalProperties": false, "description": "Gateway cluster node identified by MAC address", "properties": {"mac": {"description": "Gateway device MAC address. Format is `[0-9a-f]{12}` (e.g. \"5684dae9ac8b\")", "type": "string"}}, "required": ["mac"], "type": "object"}, "gateway_cluster_nodes": {"description": "Gateway cluster nodes. When replacing a node, one node MAC address must remain the same as the existing cluster", "items": {"$ref": "#/components/schemas/gateway_cluster_node"}, "maxItems": 2, "minItems": 1, "type": "array", "uniqueItems": true}, "gateway_compliance_major_version": {"additionalProperties": {"$ref": "#/components/schemas/gateway_compliance_major_version_properties"}, "description": "Gateway version-compliance entries keyed by gateway model", "type": "object"}, "gateway_compliance_major_version_properties": {"additionalProperties": false, "description": "Version-compliance details for one gateway model", "properties": {"major_count": {"description": "Number of gateways counted in this major-version compliance entry", "type": "integer"}, "major_version": {"description": "Gateway software major version represented by this compliance entry", "examples": ["19.4R2-S1.2"], "type": "string"}}, "type": "object"}, "gateway_compliance_version": {"additionalProperties": false, "description": "Version compliance metric for gateway devices", "properties": {"major_version": {"$ref": "#/components/schemas/gateway_compliance_major_version", "description": "Per-model gateway major-version compliance details"}, "score": {"description": "Gateway software version compliance score", "examples": [99.9], "type": "number"}, "type": {"description": "Device type represented by the gateway compliance metric", "examples": ["gateway"], "type": "string"}}, "type": "object"}, "gateway_extra_route": {"additionalProperties": false, "description": "Gateway IPv4 extra route next-hop settings", "properties": {"via": {"description": "Next-hop IPv4 address for the gateway extra route", "format": "ipv4", "type": "string"}}, "type": "object"}, "gateway_extra_route6": {"additionalProperties": false, "description": "Gateway IPv6 extra route next-hop settings", "properties": {"via": {"description": "Next-hop IPv6 address for the gateway extra route", "format": "ipv6", "type": "string"}}, "type": "object"}, "gateway_extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/gateway_extra_route"}, "description": "Property key is the destination CIDR (e.g. \"10.0.0.0/8\"), the destination Network name or a variable (e.g. \"{{myvar}}\")", "type": "object"}, "gateway_extra_routes6": {"additionalProperties": {"$ref": "#/components/schemas/gateway_extra_route6"}, "description": "Property key is the destination CIDR (e.g. \"2a02:1234:420a:10c9::/64\"), the destination Network name or a variable (e.g. \"{{myvar}}\")", "examples": [{"2a02:1234:420a:10c9::/64": {"via": "2a02:1234:200a::100"}}], "type": "object"}, "gateway_idp_profiles": {"additionalProperties": {"$ref": "#/components/schemas/idp_profile"}, "description": "Property key is the profile name", "type": "object"}, "gateway_ip_config_dns_servers": {"description": "Except for out-of_band interface (vme/em0/fxp0)", "items": {"type": "string"}, "type": "array"}, "gateway_ip_config_dns_suffix": {"description": "Except for out-of_band interface (vme/em0/fxp0)", "items": {"type": "string"}, "type": "array"}, "gateway_ip_config_property": {"additionalProperties": false, "description": "Gateway network interface IP configuration", "properties": {"ip": {"description": "Static IPv4 address for the gateway network interface when `type`==`static`", "format": "ipv4", "type": "string"}, "ip6": {"description": "Static IPv6 address for the gateway network interface when `type6`==`static`", "format": "ipv6", "type": "string"}, "netmask": {"description": "IPv4 netmask or prefix length for the gateway network interface when `type`==`static`", "examples": ["/24"], "type": "string"}, "netmask6": {"description": "IPv6 netmask or prefix length for the gateway network interface when `type6`==`static`", "examples": ["2001:db8:abcd:12::1"], "type": "string"}, "secondary_ips": {"$ref": "#/components/schemas/gateway_ip_config_property_second_ips", "description": "Additional IPv4 addresses in CIDR notation for this gateway network interface"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IPv4 address assignment mode for this gateway network interface"}, "type6": {"$ref": "#/components/schemas/ip_type6", "description": "IPv6 address assignment mode for this gateway network interface"}}, "type": "object"}, "gateway_ip_config_property_second_ips": {"description": "Optional list of secondary IPs in CIDR format", "examples": [["192.168.50.1/24", "192.168.60.1/26"]], "items": {"type": "string"}, "type": "array"}, "gateway_ip_configs": {"additionalProperties": {"$ref": "#/components/schemas/gateway_ip_config_property"}, "description": "Property key is the network name", "type": "object"}, "gateway_matching": {"additionalProperties": false, "description": "Gateway matching configuration used to apply gateway-specific settings", "properties": {"enable": {"description": "Whether gateway matching is enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/gateway_matching_rules", "description": "Gateway matching rules evaluated for this configuration"}}, "type": "object"}, "gateway_matching_rule": {"additionalProperties": {"description": "Property key defines the type of matching. e.g: `match_name[0:3]`, `match_model[0-6]` or `match_role`", "type": "string"}, "description": "Gateway matching rule that applies settings when its match keys select a gateway", "properties": {"additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "For SRX only, additional Junos CLI commands appended when this gateway matching rule applies"}, "name": {"description": "Display name for the gateway matching rule", "type": "string"}, "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"}}, "type": "object"}, "gateway_matching_rules": {"description": "Gateway matching rules used by a gateway matching configuration", "items": {"$ref": "#/components/schemas/gateway_matching_rule"}, "type": "array", "uniqueItems": true}, "gateway_metrics": {"additionalProperties": false, "description": "Gateway metric scores returned by the site gateway metrics API", "properties": {"config_success": {"description": "Gateway configuration success score", "examples": [99.9], "type": "number"}, "version_compliance": {"$ref": "#/components/schemas/gateway_compliance_version", "description": "Gateway software version compliance metric"}}, "type": "object"}, "gateway_mgmt": {"additionalProperties": false, "description": "Gateway management-plane and access settings", "properties": {"admin_sshkeys": {"$ref": "#/components/schemas/gateway_mgmt_admin_sshkeys", "description": "SSR-only SSH public keys for administrative access"}, "app_probing": {"$ref": "#/components/schemas/app_probing", "description": "Application probing configuration for gateway monitoring"}, "app_usage": {"description": "Consumes uplink bandwidth, requires WA license", "type": "boolean"}, "auto_signature_update": {"$ref": "#/components/schemas/gateway_mgmt_auto_signature_update", "description": "Schedule for automatic security signature updates"}, "config_revert_timer": {"default": 10, "description": "Rollback timer for commit confirmed", "maximum": 30, "minimum": 1, "type": "integer"}, "disable_console": {"default": false, "description": "For SSR and SRX, disable console port", "type": "boolean"}, "disable_oob": {"default": false, "description": "For SSR and SRX, disable management interface", "type": "boolean"}, "disable_usb": {"default": false, "description": "For SSR and SRX, disable usb interface", "type": "boolean"}, "fips_enabled": {"default": false, "description": "Whether FIPS mode is enabled on the gateway", "type": "boolean"}, "probe_hosts": {"$ref": "#/components/schemas/gateway_mgmt_probe_hosts", "description": "IPv4 probe targets used for gateway connectivity checks"}, "probe_hostsv6": {"$ref": "#/components/schemas/gateway_mgmt_probe_hostsv6", "description": "IPv6 probe targets used for gateway connectivity checks"}, "protect_re": {"$ref": "#/components/schemas/protect_re", "description": "Control-plane protection settings for the gateway"}, "root_password": {"description": "SRX only. Root password for local gateway access", "format": "password", "type": "string"}, "security_log_source_address": {"description": "IPv4 source address used for gateway security log traffic", "examples": ["192.168.1.1"], "format": "ipv4", "type": "string"}, "security_log_source_interface": {"description": "Source interface used for gateway security log traffic", "examples": ["ge-0/0/1.0"], "type": "string"}}, "type": "object"}, "gateway_mgmt_admin_sshkeys": {"description": "For SSR only, as direct root access is not allowed", "examples": [["ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host"]], "items": {"type": "string"}, "type": "array"}, "gateway_mgmt_auto_signature_update": {"additionalProperties": false, "description": "Automatic security signature update schedule", "properties": {"day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Scheduled weekday for automatic signature updates"}, "enable": {"default": true, "description": "Whether automatic security signature updates are enabled", "type": "boolean"}, "time_of_day": {"description": "Optional, Mist will decide the timing", "type": "string"}}, "type": "object"}, "gateway_mgmt_host_out_policy": {"additionalProperties": false, "description": "Host-out path policy for gateway-originated management traffic", "properties": {"path_preference": {"description": "Preferred path name for this gateway-originated service traffic", "type": "string"}}, "type": "object"}, "gateway_mgmt_host_out_policy_syslog": {"additionalProperties": false, "description": "Host-out path policy for gateway syslog traffic", "properties": {"path_preference": {"description": "Preferred path name used by default for gateway syslog traffic", "examples": ["broadband_wans"], "type": "string"}, "servers": {"$ref": "#/components/schemas/gateway_mgmt_host_out_policy_syslog_servers", "description": "Per-server host-out path policies for gateway syslog traffic"}}, "type": "object"}, "gateway_mgmt_host_out_policy_syslog_server": {"additionalProperties": false, "description": "Per-syslog-server host-out path policy override", "properties": {"host": {"description": "Syslog server hostname or IP address", "examples": ["103.35.3.5"], "type": "string"}, "path_preference": {"description": "Preferred path name used for this syslog server", "examples": ["dc_only"], "type": "string"}, "server_name": {"description": "Remote syslog server name referenced by the policy", "examples": ["dc_syslog_server"], "type": "string"}}, "type": "object"}, "gateway_mgmt_host_out_policy_syslog_servers": {"description": "Per-server host-out path policies for gateway syslog traffic", "items": {"$ref": "#/components/schemas/gateway_mgmt_host_out_policy_syslog_server"}, "type": "array"}, "gateway_mgmt_probe_hosts": {"description": "IPv4 probe hosts used for gateway connectivity checks", "examples": [["8.8.8.8"]], "format": "ipv4", "items": {"type": "string"}, "type": "array"}, "gateway_mgmt_probe_hostsv6": {"description": "IPv6 probe hosts used for gateway connectivity checks", "examples": [["2001:4860:4860::8888"]], "format": "ipv6", "items": {"type": "string"}, "type": "array"}, "gateway_oob_ip_config": {"additionalProperties": false, "description": "Out-of-band management IP configuration for gateway interfaces such as vme, em0, or fxp0", "properties": {"gateway": {"description": "Default gateway for the out-of-band management interface when `type`==`static`", "type": "string"}, "ip": {"description": "Static IPv4 address for the out-of-band management interface when `type`==`static`", "type": "string"}, "netmask": {"description": "IPv4 netmask or prefix length for the out-of-band management interface when `type`==`static`", "type": "string"}, "node1": {"$ref": "#/components/schemas/gateway_oob_ip_config_node1", "description": "Out-of-band management IP configuration override for node1 in an HA cluster"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IP assignment mode for the out-of-band management interface"}, "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": "For host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired", "type": "boolean"}, "vlan_id": {"$ref": "#/components/schemas/gateway_port_vlan_id_with_variable", "description": "VLAN ID used for out-of-band management traffic"}}, "type": "object"}, "gateway_oob_ip_config_node1": {"additionalProperties": false, "description": "Node1-specific out-of-band management IP configuration for HA clusters", "properties": {"gateway": {"description": "Default gateway for the node1 out-of-band management interface when `type`==`static`", "type": "string"}, "ip": {"description": "Static IPv4 address for the node1 out-of-band management interface when `type`==`static`", "type": "string"}, "netmask": {"description": "IPv4 netmask or prefix length for the node1 out-of-band management interface when `type`==`static`; used only if `subnet` is not specified in `networks`", "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IP assignment mode for the node1 out-of-band management interface"}, "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": {"$ref": "#/components/schemas/gateway_port_vlan_id_with_variable", "description": "VLAN ID used for node1 out-of-band management traffic"}}, "type": "object"}, "gateway_path_preferences": {"additionalProperties": false, "description": "Gateway path preference that selects among one or more local, WAN, VPN, or tunnel paths", "properties": {"paths": {"$ref": "#/components/schemas/gateway_path_preferences_paths", "description": "Candidate paths evaluated for this gateway path preference"}, "strategy": {"$ref": "#/components/schemas/gateway_path_strategy", "description": "Selection strategy used to evaluate the candidate paths"}}, "type": "object"}, "gateway_path_preferences_path": {"additionalProperties": false, "description": "Candidate path within a gateway path preference", "properties": {"cost": {"description": "Relative cost assigned to this path for gateway path selection", "type": "integer"}, "disabled": {"description": "For SSR Only. `true`, if this specific path is undesired", "type": "boolean"}, "gateway_ip": {"description": "Only if `type`==`local`, if a different gateway is desired", "type": "string"}, "internet_access": {"description": "Only if `type`==`vpn`, if this vpn path can be used for internet", "type": "boolean"}, "name": {"description": "Required when \n * `type`==`vpn`: the name of the VPN Path to use \n * `type`==`wan`: the name of the WAN interface to use", "type": "string"}, "networks": {"$ref": "#/components/schemas/gateway_path_preferences_path_networks", "description": "List of network names used when `type`==`local`"}, "target_ips": {"$ref": "#/components/schemas/gateway_path_preferences_path_target_ips", "description": "List of destination IP addresses to replace when `type`==`local`"}, "type": {"$ref": "#/components/schemas/gateway_path_type", "description": "Gateway path source type, such as local network, WAN interface, VPN path, or tunnel"}, "wan_name": {"description": "Optional if `type`==`vpn`; WAN interface name associated with the VPN path", "examples": ["wan0"], "type": "string"}}, "required": ["type"], "type": "object"}, "gateway_path_preferences_path_networks": {"description": "Network names used by a local path; required when `type`==`local`", "items": {"type": "string"}, "type": "array"}, "gateway_path_preferences_path_target_ips": {"description": "Destination IP addresses to replace when `type`==`local`", "items": {"type": "string"}, "type": "array"}, "gateway_path_preferences_paths": {"description": "Candidate paths evaluated by a gateway path preference", "items": {"$ref": "#/components/schemas/gateway_path_preferences_path"}, "type": "array"}, "gateway_path_strategy": {"default": "ordered", "description": "enum: `ecmp`, `ordered`, `weighted`", "enum": ["ecmp", "ordered", "weighted"], "type": "string"}, "gateway_path_type": {"description": "enum: `local`, `tunnel`, `vpn`, `wan`", "enum": ["local", "tunnel", "vpn", "wan"], "type": "string"}, "gateway_port_config": {"additionalProperties": false, "description": "Gateway port configuration for LAN, WAN, tunnel, and HA interfaces", "properties": {"ae_disable_lacp": {"default": false, "description": "If `aggregated`==`true`. To disable LCP support for the AE interface", "type": "boolean"}, "ae_idx": {"description": "If `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127)", "type": ["string", "null"]}, "ae_lacp_force_up": {"default": false, "description": "For SRX only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only", "type": "boolean"}, "aggregated": {"default": false, "description": "Whether the port participates in an aggregated Ethernet interface", "type": "boolean"}, "critical": {"default": false, "description": "To generate port up/down alarm, set it to true", "type": "boolean"}, "description": {"description": "Interface Description. Can be a variable (i.e. \"{{myvar}}\")", "type": "string"}, "disable_autoneg": {"default": false, "description": "Whether Ethernet autonegotiation is disabled on the port", "type": "boolean"}, "disabled": {"default": false, "description": "Port admin up (true) / down (false)", "type": "boolean"}, "dsl_type": {"$ref": "#/components/schemas/gateway_port_dsl_type", "description": "If `wan_type`==`dsl`. DSL technology used by the WAN port"}, "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": {"$ref": "#/components/schemas/gateway_port_duplex", "description": "Ethernet duplex mode configured on the port"}, "ip_config": {"$ref": "#/components/schemas/gateway_port_config_ip_config", "description": "Layer 3 IP configuration for the port"}, "lte_apn": {"description": "If `wan_type`==`lte`. APN used by the LTE uplink", "type": "string"}, "lte_auth": {"$ref": "#/components/schemas/gateway_port_lte_auth", "description": "If `wan_type`==`lte`. Authentication method used by the LTE uplink"}, "lte_backup": {"description": "Whether the LTE uplink is used as a backup WAN connection", "type": "boolean"}, "lte_password": {"description": "If `wan_type`==`lte`. Password used for LTE uplink authentication", "format": "password", "type": "string"}, "lte_username": {"description": "If `wan_type`==`lte`. Username used for LTE uplink authentication", "type": "string"}, "mtu": {"description": "Layer 3 MTU configured on the port", "type": "integer"}, "name": {"description": "Interface name used to derive device configuration", "type": "string"}, "networks": {"$ref": "#/components/schemas/gateway_port_networks", "description": "If `usage`==`lan`. Networks attached to the interface"}, "outer_vlan_id": {"description": "For Q-in-Q. Outer VLAN ID used for QinQ encapsulation", "type": "integer"}, "poe_disabled": {"default": false, "description": "Whether PoE output is disabled on the port", "type": "boolean"}, "poe_keep_state_when_reboot": {"default": false, "description": "Whether Perpetual PoE capabilities are enabled for a port", "type": "boolean"}, "port_network": {"description": "Only for SRX and if `usage`==`lan`, the name of the Network to be used as the Untagged VLAN", "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. Whether the port participates in the redundant Ethernet configuration", "type": "boolean"}, "redundant_group": {"description": "If HA mode, SRX Only - support redundancy-group. 1-128 for physical SRX, 1-64 for virtual SRX", "maximum": 128, "minimum": 1, "type": "integer"}, "reth_idx": {"$ref": "#/components/schemas/gateway_port_config_reth_idx", "description": "If HA mode and for SRX only. Redundant Ethernet interface index assigned to the port"}, "reth_node": {"description": "If HA mode. Node associated with the redundant Ethernet interface", "type": "string"}, "reth_nodes": {"$ref": "#/components/schemas/gateway_port_reth_nodes", "description": "If HA mode and for SSR only. Per-network node assignment used for VLAN-based redundancy"}, "speed": {"default": "auto", "description": "Link speed configured on the port", "examples": ["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. Port range configured on the interface", "examples": ["60000-60005"], "type": "string"}, "traffic_shaping": {"$ref": "#/components/schemas/gateway_traffic_shaping", "description": "Traffic shaping settings applied to the port"}, "usage": {"$ref": "#/components/schemas/gateway_port_usage", "description": "Logical usage assigned to the port"}, "vlan_id": {"$ref": "#/components/schemas/gateway_port_vlan_id_with_variable", "description": "VLAN ID or variable used when the WAN interface is carried on a VLAN"}, "vpn_paths": {"$ref": "#/components/schemas/gateway_port_vpn_paths", "description": "Per-VPN path settings for traffic that uses this port"}, "wan_arp_policer": {"$ref": "#/components/schemas/gateway_port_wan_arp_policer", "description": "Only when `wan_type`==`broadband`. ARP policer profile applied to the WAN port"}, "wan_ext_ip": {"description": "Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP", "examples": ["64.2.4.3"], "type": "string"}, "wan_ext_ip6": {"description": "Only if `usage`==`wan`, optional. If spoke should reach this port by a different IPv6", "examples": ["2601:1700:43c0:dc0::10"], "type": "string"}, "wan_extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/wan_extra_routes"}, "description": "Only if `usage`==`wan`. Property Key is the destination CIDR (e.g. \"100.100.100.0/24\")", "type": "object"}, "wan_extra_routes6": {"additionalProperties": {"$ref": "#/components/schemas/wan_extra_routes6"}, "description": "Only if `usage`==`wan`. Property Key is the destination CIDR (e.g. \"2a02:1234:420a:10c9::/64\")", "type": "object"}, "wan_networks": {"$ref": "#/components/schemas/gateway_port_config_wan_networks", "description": "Only if `usage`==`wan`. Networks reachable through this WAN port for policy definition"}, "wan_probe_override": {"$ref": "#/components/schemas/gateway_wan_probe_override", "description": "Optional WAN health probe override settings for this port"}, "wan_source_nat": {"$ref": "#/components/schemas/gateway_port_wan_source_nat", "description": "Source NAT settings applied to traffic leaving this WAN port"}, "wan_speedtest_mode": {"$ref": "#/components/schemas/gateway_port_config_wan_speedtest_mode", "description": "Controls whether Marvis or the scheduler can run speed tests on this WAN port"}, "wan_type": {"$ref": "#/components/schemas/gateway_port_wan_type", "description": "Only if `usage`==`wan`. WAN uplink type configured on the port"}}, "required": ["usage"], "type": "object"}, "gateway_port_config_ip_config": {"additionalProperties": false, "description": "Junos IP configuration for a gateway port interface", "properties": {"dns": {"$ref": "#/components/schemas/gateway_ip_config_dns_servers", "description": "Resolver server IP addresses used by this interface, except on out-of-band interfaces such as vme, em0, or fxp0"}, "dns_suffix": {"$ref": "#/components/schemas/gateway_ip_config_dns_suffix", "description": "DNS search suffixes used by this interface, except on out-of-band interfaces such as vme, em0, or fxp0"}, "gateway": {"description": "Except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP address (i.e. \"192.168.1.1\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.1.1"], "type": "string"}, "gateway6": {"description": "Except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IPv6 Address (i.e. \"2001:db8::1\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["2001:db8::1"], "type": "string"}, "ip": {"description": "Interface IP address (i.e. \"192.168.1.8\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.1.8"], "format": "ipv4", "type": "string"}, "ip6": {"description": "Interface IPv6 Address (i.e. \"2001:db8::123\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["2001:db8::123"], "format": "ipv6", "type": "string"}, "netmask": {"description": "Used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. \"/24\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["/24"], "type": "string"}, "netmask6": {"description": "Used only if `subnet` is not specified in `networks`. Interface IPv6 Netmask (i.e. \"/64\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["/64"], "type": "string"}, "network": {"description": "Optional, the network to be used for mgmt", "type": "string"}, "poser_password": {"description": "Password used for PPPoE when `type`==`pppoe`", "format": "password", "type": "string"}, "pppoe_auth": {"$ref": "#/components/schemas/gateway_wan_ppoe_auth", "description": "Authentication protocol used for PPPoE when `type`==`pppoe`"}, "pppoe_username": {"description": "Username used for PPPoE when `type`==`pppoe`", "type": "string"}, "type": {"$ref": "#/components/schemas/gateway_wan_type", "description": "IPv4 assignment mode for this gateway port interface"}, "type6": {"$ref": "#/components/schemas/gateway_wan_type6", "description": "IPv6 assignment mode for this gateway port interface"}}, "type": "object"}, "gateway_port_config_reth_idx": {"anyOf": [{"type": "integer"}, {"type": "string"}], "description": "For SRX only and if HA Mode. `-1` means it will be managed by the device. Use `>= 0` values to manage it manually. Ensure no conflicting values are assigned across all ports."}, "gateway_port_config_wan_networks": {"description": "Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined", "items": {"type": "string"}, "type": "array"}, "gateway_port_config_wan_speedtest_mode": {"default": "auto", "description": "Controls whether Marvis/scheduler can run speedtest on this port. enum: `auto`, `enabled`, `disabled`", "enum": ["auto", "enabled", "disabled"], "examples": ["auto"], "type": "string"}, "gateway_port_dsl_type": {"default": "vdsl", "description": "if `wan_type`==`dsl`. enum: `adsl`, `vdsl`", "enum": ["adsl", "vdsl"], "type": "string"}, "gateway_port_duplex": {"default": "auto", "description": "enum: `auto`, `full`, `half`", "enum": ["auto", "full", "half"], "examples": ["full"], "type": "string"}, "gateway_port_lte_auth": {"default": "none", "description": "if `wan_type`==`lte`. enum: `chap`, `none`, `pap`", "enum": ["chap", "none", "pap"], "type": "string"}, "gateway_port_mirroring": {"additionalProperties": false, "description": "Port mirroring settings for a gateway interface", "properties": {"port_mirror": {"$ref": "#/components/schemas/gateway_port_mirroring_port_mirror", "description": "Mirroring rule that copies ingress traffic from source ports to an output port"}}, "type": "object"}, "gateway_port_mirroring_ingress_port_ids": {"description": "Gateway port IDs used as ingress sources for mirrored traffic", "items": {"examples": ["ge-0/0/3"], "type": "string"}, "type": "array"}, "gateway_port_mirroring_port_mirror": {"additionalProperties": false, "description": "Gateway port mirroring rule", "properties": {"family_type": {"description": "Packet family used for this port mirroring rule", "type": "string"}, "ingress_port_ids": {"$ref": "#/components/schemas/gateway_port_mirroring_ingress_port_ids", "description": "Source gateway port IDs whose ingress traffic is mirrored"}, "output_port_id": {"description": "Destination gateway port ID that receives mirrored traffic", "examples": ["ge-0/0/5"], "type": "string"}, "rate": {"description": "Sampling rate applied to mirrored traffic", "type": "integer"}, "run_length": {"description": "Number of bytes copied from each mirrored packet", "minimum": 0, "type": "integer"}}, "type": "object"}, "gateway_port_networks": {"description": "If `usage`==`lan`, name of the [networks]($h/Orgs%20Networks/_overview) to attach to the interface", "items": {"type": "string"}, "type": "array"}, "gateway_port_reth_nodes": {"description": "SSR only - supporting vlan-based redundancy (matching the size of `networks`)", "examples": [["node0", "node1"]], "items": {"type": "string"}, "type": "array"}, "gateway_port_usage": {"description": "port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan`", "enum": ["ha_control", "ha_data", "lan", "wan"], "type": "string"}, "gateway_port_vlan_id_with_variable": {"description": "If WAN interface is on a VLAN. Can be the VLAN ID (i.e. \"10\") or a Variable (i.e. \"{{myvar}}\")", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "gateway_port_vpn_path": {"additionalProperties": false, "description": "VPN path settings for traffic that uses a gateway port", "properties": {"bfd_profile": {"$ref": "#/components/schemas/gateway_port_vpn_path_bfd_profile", "description": "BFD profile used for this VPN path when the VPN `type`==`hub_spoke`"}, "bfd_use_tunnel_mode": {"default": false, "description": "Only if the VPN `type`==`hub_spoke`. Whether to use tunnel mode. SSR only", "type": "boolean"}, "preference": {"description": "Only if the VPN `type`==`hub_spoke`. For a given VPN, when `path_selection.strategy`==`simple`, the preference for a path (lower is preferred)", "type": "integer"}, "role": {"$ref": "#/components/schemas/gateway_port_vpn_path_role", "description": "Gateway role for this VPN path; valid values depend on the VPN `type`"}, "traffic_shaping": {"$ref": "#/components/schemas/gateway_traffic_shaping", "description": "Traffic shaping settings applied to this VPN path"}}, "type": "object"}, "gateway_port_vpn_path_bfd_profile": {"default": "broadband", "description": "Only if the VPN `type`==`hub_spoke`. enum: `broadband`, `lte`", "enum": ["broadband", "lte"], "type": "string"}, "gateway_port_vpn_path_role": {"default": "spoke", "description": "If the VPN `type`==`hub_spoke`, enum: `hub`, `spoke`. If the VPN `type`==`mesh`, enum: `mesh`", "enum": ["hub", "mesh", "spoke"], "type": "string"}, "gateway_port_vpn_paths": {"additionalProperties": {"$ref": "#/components/schemas/gateway_port_vpn_path"}, "description": "Property key is the VPN name", "type": "object"}, "gateway_port_wan_arp_policer": {"default": "default", "description": "Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`", "enum": ["default", "max", "recommended"], "type": "string"}, "gateway_port_wan_source_nat": {"additionalProperties": false, "description": "Only if `usage`==`wan`, 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"}, "nat6_pool": {"description": "If alternative nat_pool is desired", "examples": ["2601:1700:43c0:dc0:20c:29ff:fea7:93bc/126"], "type": "string"}, "nat_pool": {"description": "If alternative nat_pool is desired", "examples": ["64.2.4.0/30"], "type": "string"}}, "type": "object"}, "gateway_port_wan_type": {"default": "broadband", "description": "Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`", "enum": ["broadband", "dsl", "lte"], "type": "string"}, "gateway_search": {"additionalProperties": false, "description": "Gateway record returned by device search endpoints", "properties": {"clustered": {"description": "Whether the gateway is part of a gateway cluster", "type": "boolean"}, "evpn_missing_links": {"description": "Whether EVPN topology links are missing for this gateway", "type": "boolean"}, "evpntopo_id": {"description": "EVPN topology ID associated with this gateway", "type": "string"}, "ext_ip": {"description": "External IP address observed for gateway management traffic", "type": "string"}, "hostname": {"$ref": "#/components/schemas/strings", "description": "Observed hostnames detected for the gateway in search results"}, "ip": {"description": "Management IP address currently reported for the gateway", "type": "string"}, "last_config_status": {"description": "Most recent configuration status reported for the gateway", "type": "string"}, "last_hostname": {"description": "Most recent hostname detected for the gateway", "type": "string"}, "last_trouble_code": {"description": "Most recent trouble code reported for the gateway", "type": "string"}, "last_trouble_timestamp": {"description": "Timestamp when the most recent gateway trouble code was reported", "type": "integer"}, "mac": {"description": "Gateway MAC address reported in search results", "type": "string"}, "managed": {"deprecated": true, "description": "Whether the gateway is managed by Mist. Deprecated in favor of `mist_configured`", "type": "boolean"}, "mist_configured": {"description": "Whether the gateway can be configured by Mist. Replaces `managed` for adopted devices and `disable_auto_config` for claimed devices", "type": "boolean"}, "model": {"description": "Gateway model reported for this search result", "type": "string"}, "node": {"description": "Gateway cluster node associated with this search result", "type": "string"}, "node0_mac": {"description": "Cluster node0 MAC address reported for an HA gateway", "type": "string"}, "node1_mac": {"description": "Cluster node1 MAC address reported for an HA gateway", "type": "string"}, "num_members": {"description": "Number of members in the gateway cluster", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this gateway search result"}, "role": {"description": "Gateway cluster role reported for this search result", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site that contains this gateway search result"}, "t128agent_version": {"description": "Session Smart Router agent version reported by the gateway", "type": "string"}, "time_drifted": {"description": "Whether the gateway clock has drifted from the expected time", "type": "boolean"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time associated with this gateway search result"}, "type": {"$ref": "#/components/schemas/device_type_gateway", "description": "Device type for this gateway search result"}, "uptime": {"description": "Device uptime for the gateway, in seconds", "type": "integer"}, "version": {"description": "Software version currently running on the gateway", "type": "string"}}, "required": ["type"], "type": "object"}, "gateway_template": {"description": "Gateway Template is applied to a site for gateway(s) in a site.", "properties": {"additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands provided by this gateway template"}, "bgp_config": {"additionalProperties": {"$ref": "#/components/schemas/bgp_config"}, "description": "BGP routing defaults for this gateway template. Property key is the BGP session name", "type": "object"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the gateway template was created"}, "dhcpd_config": {"$ref": "#/components/schemas/dhcpd_config", "description": "DHCP server defaults provided by this gateway template"}, "dnsOverride": {"default": false, "description": "Whether DNS server and suffix settings in this template override inherited values", "type": "boolean"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers provided by this gateway template"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes provided by this gateway template"}, "extra_routes": {"$ref": "#/components/schemas/gateway_extra_routes", "description": "Additional IPv4 route defaults in this gateway template"}, "extra_routes6": {"$ref": "#/components/schemas/gateway_extra_routes6", "description": "Additional IPv6 route defaults in this gateway template"}, "gateway_matching": {"$ref": "#/components/schemas/gateway_matching", "description": "Matching rules that select gateways for this template"}, "gateway_mgmt": {"$ref": "#/components/schemas/gateway_mgmt", "description": "Management-plane defaults provided by this gateway template"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the gateway template"}, "idp_profiles": {"$ref": "#/components/schemas/gateway_idp_profiles", "description": "Intrusion detection and prevention profile defaults in this gateway template"}, "ip_configs": {"$ref": "#/components/schemas/gateway_ip_configs", "description": "Gateway interface IP configuration defaults by network name"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the gateway template was last modified"}, "name": {"description": "Display name of the gateway template", "examples": ["gw_template"], "type": "string"}, "networks": {"$ref": "#/components/schemas/networks", "description": "Layer 3 networks configured by this gateway template"}, "ntpOverride": {"default": false, "description": "Whether NTP servers in this template override inherited values", "type": "boolean"}, "ntp_servers": {"$ref": "#/components/schemas/ntp_servers", "description": "NTP servers provided by this gateway template"}, "oob_ip_config": {"$ref": "#/components/schemas/gateway_oob_ip_config", "description": "Out-of-band management IP defaults in this gateway template"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this gateway template"}, "path_preferences": {"additionalProperties": {"$ref": "#/components/schemas/gateway_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 Name (i.e. \"ge-0/0/0\"), the Ports Range (i.e. \"ge-0/0/0-10\"), the List of Ports (i.e. \"ge-0/0/0,ge-1/0/0\", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. \"{{myvar}}\").", "type": "object"}, "router_id": {"description": "Auto assigned if not set", "examples": ["10.2.1.10"], "type": "string"}, "routing_policies": {"$ref": "#/components/schemas/gw_routing_policies", "description": "Routing policy defaults applied by this gateway template"}, "service_policies": {"$ref": "#/components/schemas/service_policies", "description": "Traffic service policy defaults enforced by this gateway template"}, "tunnel_configs": {"additionalProperties": {"$ref": "#/components/schemas/tunnel_config"}, "description": "Property key is the tunnel name", "type": "object"}, "tunnel_provider_options": {"$ref": "#/components/schemas/tunnel_provider_options", "description": "Provider-specific tunnel options defined by this gateway template"}, "type": {"$ref": "#/components/schemas/gateway_template_type", "description": "Gateway template deployment type"}, "url_filtering_deny_msg": {"default": "Access to this URL Category has been blocked", "description": "When a service policy denies a app_category, what message to show in user's browser", "examples": ["Access to this URL Category has been blocked"], "type": "string"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF defaults applied by this gateway template"}, "vrf_instances": {"$ref": "#/components/schemas/gateway_vrf_instances", "description": "VRF instances configured by this gateway template"}}, "required": ["name"], "type": "object"}, "gateway_template_type": {"default": "standalone", "description": "Gateway template deployment type. enum: `spoke`, `standalone`", "enum": ["spoke", "standalone"], "examples": ["standalone"], "type": "string"}, "gateway_templates": {"description": "List of gateway device profiles", "items": {"$ref": "#/components/schemas/gateway_template"}, "type": "array"}, "gateway_traffic_shaping": {"additionalProperties": false, "description": "Traffic shaping settings for a gateway interface or VPN path", "properties": {"class_percentages": {"$ref": "#/components/schemas/gateway_traffic_shaping_class_percentages", "description": "Traffic class bandwidth percentages for high, medium, low, and best-effort queues"}, "enabled": {"default": false, "description": "Whether traffic shaping is enabled", "type": "boolean"}, "max_tx_kbps": {"description": "Maximum transmit bandwidth for the interface, in Kbps", "type": "integer"}}, "type": "object"}, "gateway_traffic_shaping_class_percentages": {"description": "percentages for different class of traffic: high / medium / low / best-effort. Sum must be equal to 100", "items": {"type": "integer"}, "type": "array"}, "gateway_vrf_instance": {"additionalProperties": false, "description": "Gateway VRF instance and its member networks", "examples": [{"networks": ["CORP_NET", "MGMT_NET"]}], "properties": {"networks": {"$ref": "#/components/schemas/strings", "description": "Network names included in this gateway VRF instance"}}, "type": "object"}, "gateway_vrf_instances": {"additionalProperties": {"$ref": "#/components/schemas/gateway_vrf_instance"}, "description": "Property key is the VRF instance name", "examples": [{"CORP_VRF": {"networks": ["CORP_NET", "MGMT_NET"]}}], "type": "object"}, "gateway_wan_ppoe_auth": {"default": "none", "description": "if `type`==`pppoe`. enum: `chap`, `none`, `pap`", "enum": ["chap", "none", "pap"], "type": "string"}, "gateway_wan_probe_override": {"additionalProperties": false, "description": "Only if `usage`==`wan`. WAN health probe override for this gateway port", "properties": {"ip6s": {"$ref": "#/components/schemas/strings", "description": "List of IPv6 probe host addresses used by this WAN override"}, "ips": {"$ref": "#/components/schemas/strings", "description": "List of IPv4 probe host addresses used by this WAN override"}, "probe_profile": {"$ref": "#/components/schemas/gateway_wan_probe_override_probe_profile", "description": "WAN probe profile used for health checks on this port"}}, "type": "object"}, "gateway_wan_probe_override_probe_profile": {"default": "broadband", "description": "WAN probe profile used for health checks on this port. enum: `broadband`, `lte`", "enum": ["broadband", "lte"], "type": "string"}, "gateway_wan_type": {"default": "dhcp", "description": "enum: `dhcp`, `pppoe`, `static`", "enum": ["dhcp", "pppoe", "static"], "type": "string"}, "gateway_wan_type6": {"default": "autoconf", "description": "enum: `autoconf`, `dhcp`, `static`", "enum": ["autoconf", "dhcp", "static"], "type": "string"}, "get_org_mxedge_upgrade_info_channel": {"default": "stable", "description": "enum: `alpha`, `beta`, `stable`", "enum": ["alpha", "beta", "stable"], "type": "string"}, "guest": {"description": "Guest authorization record at site scope", "properties": {"access_code_email": {"description": "If `auth_method`==`email`, the email address where the authorization code has been sent to", "readOnly": true, "type": "string"}, "ap_mac": {"description": "MAC address of the AP used during guest registration", "readOnly": true, "type": "string"}, "auth_method": {"description": "Guest authentication method used for the authorization", "readOnly": true, "type": "string"}, "authorized": {"default": true, "description": "Whether the guest is currently authorized", "type": "boolean"}, "authorized_expiring_time": {"description": "Unix timestamp when the guest authorization expires", "examples": [1480704955], "readOnly": true, "type": "number"}, "authorized_time": {"description": "Unix timestamp when the guest was authorized", "examples": [1480704355], "readOnly": true, "type": "number"}, "company": {"description": "Optional company name provided by the guest during registration", "examples": ["abc"], "type": "string"}, "email": {"description": "Optional email address provided by the guest during registration", "examples": ["john@abc.com"], "format": "email", "type": "string"}, "field1": {"description": "Optional custom field 1 value provided by the guest during registration", "type": "string"}, "field2": {"description": "Optional custom field 2 value provided by the guest during registration", "type": "string"}, "field3": {"description": "Optional custom field 3 value provided by the guest during registration", "type": "string"}, "field4": {"description": "Optional custom field 4 value provided by the guest during registration", "type": "string"}, "mac": {"description": "Device MAC address captured during guest registration", "readOnly": true, "type": "string"}, "minutes": {"default": 1440, "description": "Authorization duration, in minutes. Default is 1440 minutes (1 day), maximum is 259200 (180 days)", "maximum": 259200, "minimum": 0, "type": "integer"}, "name": {"description": "Optional name provided by the guest during registration", "examples": ["John Smith"], "readOnly": true, "type": "string"}, "random_mac": {"description": "Whether the guest device used a randomized MAC address to connect to the SSID", "readOnly": true, "type": "boolean"}, "ssid": {"description": "Name of the SSID", "examples": ["Guest-SSID"], "readOnly": true, "type": "string"}, "wlan_id": {"description": "Identifier of the WLAN used for the guest authorization", "examples": ["6748cfa6-4e12-11e6-9188-0242ac110007"], "format": "uuid", "readOnly": true, "type": "string"}}, "type": "object"}, "guest_org": {"description": "Guest authorization record at organization scope", "properties": {"access_code_email": {"description": "If `auth_method`==`email`, the email address where the authorization code has been sent to", "readOnly": true, "type": "string"}, "allow_wlan_id_roam": {"description": "Based on the WLAN portal configuration (field `allow_wlan_id_roam`), if the user is also authorized on other Guest WLANs of the same Org without reauthentication", "readOnly": true, "type": "boolean"}, "ap_mac": {"description": "MAC address of the AP used during guest registration", "readOnly": true, "type": "string"}, "auth_method": {"description": "Guest authentication method used for the authorization", "readOnly": true, "type": "string"}, "authorized": {"default": true, "description": "Whether the guest is currently authorized", "type": "boolean"}, "authorized_expiring_time": {"description": "Unix timestamp when the guest authorization expires", "examples": [1480704955], "readOnly": true, "type": "number"}, "authorized_time": {"description": "Unix timestamp when the guest was authorized", "examples": [1480704355], "readOnly": true, "type": "number"}, "company": {"description": "Optional company name provided by the guest during registration", "examples": ["abc"], "type": "string"}, "cross_site": {"description": "Based on the WLAN portal configuration (field `cross_site`), if the user is also authorized on other sites (same `wlan.ssid`) of the same Org without reauthentication", "readOnly": true, "type": "boolean"}, "email": {"description": "Optional email address provided by the guest during registration", "examples": ["john@abc.com"], "format": "email", "type": "string"}, "field1": {"description": "Optional custom field 1 value provided by the user during registration", "type": "string"}, "field2": {"description": "Optional custom field 2 value provided by the user during registration", "type": "string"}, "field3": {"description": "Optional custom field 3 value provided by the user during registration", "type": "string"}, "field4": {"description": "Optional custom field 4 value provided by the user during registration", "type": "string"}, "mac": {"description": "Device MAC address captured during guest registration", "type": "string"}, "minutes": {"default": 1440, "description": "Authorization duration, in minutes. Default is 1440 minutes (1 day), maximum is 259200 (180 days)", "maximum": 259200, "minimum": 0, "type": "integer"}, "name": {"description": "Optional name provided by the guest during registration", "examples": ["John Smith"], "type": "string"}, "random_mac": {"description": "Whether the guest device used a randomized MAC address to connect to the SSID", "readOnly": true, "type": "boolean"}, "ssid": {"description": "Name of the SSID", "examples": ["Guest-SSID"], "readOnly": true, "type": "string"}, "wlan_id": {"description": "Identifier of the WLAN used for the guest authorization", "examples": ["6748cfa6-4e12-11e6-9188-0242ac110007"], "format": "uuid", "type": "string"}}, "required": ["wlan_id"], "type": "object"}, "guests": {"description": "List of guest authorization records", "items": {"$ref": "#/components/schemas/guest"}, "type": "array"}, "gw_routing_policies": {"additionalProperties": {"$ref": "#/components/schemas/gw_routing_policy"}, "description": "Property key is the routing policy name", "type": "object"}, "gw_routing_policy": {"additionalProperties": false, "description": "Gateway routing policy made of ordered match-action terms", "properties": {"terms": {"$ref": "#/components/schemas/gw_routing_policy_terms", "description": "Ordered terms evaluated by this gateway routing policy"}}, "type": "object"}, "gw_routing_policy_term": {"additionalProperties": false, "description": "Gateway routing policy term with match criteria and actions", "properties": {"actions": {"$ref": "#/components/schemas/gw_routing_policy_term_action", "description": "Policy actions applied when this routing policy term matches"}, "matching": {"$ref": "#/components/schemas/gw_routing_policy_term_matching", "description": "Route match criteria that must be satisfied before actions are applied"}}, "type": "object"}, "gw_routing_policy_term_action": {"additionalProperties": false, "description": "Actions applied to routes matched by a gateway routing policy term", "properties": {"accept": {"description": "Whether to accept routes that match this term", "type": "boolean"}, "add_community": {"$ref": "#/components/schemas/gw_routing_policy_term_action_add_community", "description": "BGP communities to add to routes that match this term"}, "add_target_vrfs": {"$ref": "#/components/schemas/gw_routing_policy_term_action_add_target_vrfs", "description": "SSR target VRFs to add when leaking routes from hub to spoke"}, "community": {"$ref": "#/components/schemas/routing_policy_term_action_community", "description": "BGP communities to set when this term is used as an export policy"}, "exclude_as_path": {"$ref": "#/components/schemas/gw_routing_policy_term_action_exclude_as_path", "description": "AS path values to exclude when this term is used as an export policy"}, "exclude_community": {"$ref": "#/components/schemas/gw_routing_policy_term_action_exclude_community", "description": "BGP communities to exclude from routes that match this term"}, "export_communities": {"$ref": "#/components/schemas/gw_routing_policy_term_action_export_communities", "description": "BGP communities allowed for export when this term is used as an export policy"}, "local_preference": {"$ref": "#/components/schemas/routing_policy_local_preference", "description": "Preference value to set when this term is used as an import policy"}, "prepend_as_path": {"$ref": "#/components/schemas/routing_policy_term_action_prepend_as_path", "description": "AS path values to prepend when this term is used as an export policy"}}, "type": "object"}, "gw_routing_policy_term_action_add_community": {"description": "BGP communities added to routes matched by a gateway routing policy term", "items": {"examples": ["3900190"], "type": "string"}, "type": "array"}, "gw_routing_policy_term_action_add_target_vrfs": {"description": "For SSR, target VRFs used by a hub when leaking VRF routes to spokes", "items": {"type": "string"}, "type": "array"}, "gw_routing_policy_term_action_exclude_as_path": {"description": "Optional when used as an export policy. AS path values to exclude", "items": {"examples": ["65002"], "type": "string"}, "type": "array"}, "gw_routing_policy_term_action_exclude_community": {"description": "BGP communities excluded by a gateway routing policy term", "items": {"examples": ["3900190"], "type": "string"}, "type": "array"}, "gw_routing_policy_term_action_export_communities": {"description": "Optional when used as an export policy. BGP communities that may be exported", "items": {"type": "string"}, "type": "array"}, "gw_routing_policy_term_matching": {"additionalProperties": false, "description": "Route match criteria for a gateway routing policy term; all specified criteria must match", "properties": {"as_path": {"$ref": "#/components/schemas/routing_policy_term_matching_as_path", "description": "AS path values that routes must match"}, "community": {"$ref": "#/components/schemas/routing_policy_term_matching_community", "description": "BGP communities that routes must match"}, "network": {"$ref": "#/components/schemas/strings", "description": "Configured network names that routes must match"}, "prefix": {"$ref": "#/components/schemas/routing_policy_term_matching_prefix", "description": "Route prefixes that routes must match"}, "protocol": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_protocol", "description": "Routing protocols that routes must match"}, "route_exists": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_route_exists", "description": "Existing route condition that must be satisfied before this term matches"}, "vpn_neighbor_mac": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_vpn_neighbor_mac", "description": "Overlay neighbor MAC addresses used as match criteria for BGP sessions with `via`==`vpn`"}, "vpn_path": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_vpn_path", "description": "Overlay path names used as match criteria for BGP sessions with `via`==`vpn`"}, "vpn_path_sla": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_vpn_path_sla", "description": "SLA thresholds used when matching a VPN path"}}, "type": "object"}, "gw_routing_policy_term_matching_protocol": {"description": "Routing protocols that can match a gateway routing policy term", "items": {"$ref": "#/components/schemas/gw_routing_policy_term_matching_protocol_enum"}, "type": "array"}, "gw_routing_policy_term_matching_protocol_enum": {"description": "enum: `aggregate`, `bgp`, `direct`, `ospf`, `static` (SRX Only)", "enum": ["aggregate", "bgp", "direct", "ospf", "static"], "type": "string"}, "gw_routing_policy_term_matching_route_exists": {"additionalProperties": false, "description": "Route-existence match condition for a gateway routing policy term", "properties": {"route": {"description": "Prefix that must exist for this condition to match", "examples": ["192.168.0.0/24"], "type": "string"}, "vrf_name": {"default": "default", "description": "Name of the VRF instance where the route is checked; can also be a VPN or WAN name when applicable", "type": "string"}}, "type": "object"}, "gw_routing_policy_term_matching_vpn_neighbor_mac": {"description": "Overlay neighbor MAC addresses used for bgp_config where `via`==`vpn`", "items": {"type": "string"}, "type": "array"}, "gw_routing_policy_term_matching_vpn_path": {"description": "Overlay path names used for bgp_config where `via`==`vpn`; order is significant", "items": {"type": "string"}, "type": "array"}, "gw_routing_policy_term_matching_vpn_path_sla": {"additionalProperties": false, "description": "SLA thresholds used when matching VPN paths", "properties": {"max_jitter": {"description": "Maximum jitter threshold allowed for the VPN path", "type": ["integer", "null"]}, "max_latency": {"description": "Maximum latency threshold allowed for the VPN path", "examples": [1500], "type": ["integer", "null"]}, "max_loss": {"description": "Maximum packet-loss threshold allowed for the VPN path", "examples": [30], "type": ["integer", "null"]}}, "type": "object"}, "gw_routing_policy_terms": {"description": "zero or more criteria/filter can be specified to match the term, all criteria have to be met", "items": {"$ref": "#/components/schemas/gw_routing_policy_term"}, "type": "array", "uniqueItems": true}, "ha_cluster_config": {"description": "Request to create an HA cluster from unassigned gateway inventory nodes", "properties": {"disable_auto_config": {"deprecated": true, "description": "This disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.", "type": "boolean"}, "managed": {"deprecated": true, "description": "An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist.", "type": "boolean"}, "mist_configured": {"description": "whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disable_auto_config` for claimed device)", "type": "boolean"}, "nodes": {"$ref": "#/components/schemas/ha_cluster_config_nodes", "description": "Gateway nodes to include in the HA cluster; each node must be currently unassigned in inventory"}, "site_id": {"description": "Site where the HA cluster should be created", "examples": ["43e9c864-a7e4-4310-8031-d9817d2c5a43"], "format": "uuid", "type": "string"}}, "type": "object"}, "ha_cluster_config_node": {"additionalProperties": false, "description": "HA cluster inventory node identified by MAC address", "maxProperties": 2, "properties": {"mac": {"description": "Gateway node MAC address for an inventory node that is currently unassigned", "examples": ["aff827549235"], "type": "string"}}, "type": "object"}, "ha_cluster_config_nodes": {"description": "Gateway inventory nodes used to create an HA cluster", "items": {"$ref": "#/components/schemas/ha_cluster_config_node"}, "type": "array"}, "ha_cluster_delete": {"description": "Request body identifying the HA cluster node to remove", "properties": {"mac": {"description": "Node0 MAC address identifying the HA cluster to delete", "examples": ["aff827549235"], "type": "string"}}, "type": "object"}, "ha_cluster_node": {"description": "HA cluster node selector for device operations", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to run the device operation"}}, "type": "object"}, "ha_cluster_node_enum": {"description": "HA cluster node selector. enum: `node0`, `node1`", "enum": ["node0", "node1"], "type": "string"}, "hour": {"default": "", "description": "Hour range of the day (e.g. `09:00-17:00`). If the hour is not defined then it's treated as 00:00-23:59.", "examples": ["09:00-17:00"], "type": "string"}, "hours": {"additionalProperties": false, "description": "Day-of-week operating hour filters using hour ranges such as 09:00-17:00", "properties": {"fri": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Friday"}, "mon": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Monday"}, "sat": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Saturday"}, "sun": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Sunday"}, "thu": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Thursday"}, "tue": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Tuesday"}, "wed": {"$ref": "#/components/schemas/hour", "description": "Operating hour range for Wednesday"}}, "type": "object"}, "ibeacon_major": {"description": "Major number for iBeacon", "examples": [1234], "maximum": 65535, "minimum": 1, "type": ["integer", "null"]}, "ibeacon_minor": {"description": "Minor number for iBeacon", "examples": [1234], "maximum": 65535, "minimum": 1, "type": ["integer", "null"]}, "ibeacon_uuid": {"description": "iBeacon UUID value, or null when no iBeacon UUID is configured", "examples": ["f3f17139-704a-f03a-2786-0400279e37c3"], "format": "uuid", "type": ["string", "null"]}, "id": {"description": "Unique ID of the object instance in the Mist Organization", "examples": ["53f10664-3ce8-4c27-b382-0ef66432349f"], "format": "uuid", "readOnly": true, "type": "string"}, "idp_config": {"additionalProperties": false, "description": "Intrusion detection and prevention settings for a service policy", "properties": {"alert_only": {"description": "Whether to alert without enforcing IDP prevention actions", "type": "boolean"}, "enabled": {"default": false, "description": "Whether IDP inspection is enabled for the policy", "type": "boolean"}, "idpprofile_id": {"description": "org_level IDP Profile can be used, this takes precedence over `profile`", "examples": ["89b9d208-84a4-fa8f-af57-78f92c639cf2"], "format": "uuid", "type": "string"}, "profile": {"default": "strict", "description": "enum: `Custom`, `strict` (default), `standard` or keys from idp_profiles", "type": "string"}}, "type": "object"}, "idp_machine_cert_lookup_field": {"default": "automatic", "description": "allow customer to choose the EAP-TLS client certificate's field to use for IDP Machine Groups lookup. enum: `automatic`, `cn`, `dns`", "enum": ["automatic", "cn", "dns"], "type": "string"}, "idp_profile": {"description": "Organization IDP profile with a base profile and targeted overwrite rules", "properties": {"base_profile": {"$ref": "#/components/schemas/idp_profile_base_profile", "description": "Built-in IDP baseline profile inherited before applying overwrites"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the IDP profile was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the IDP profile"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the IDP profile was last modified"}, "name": {"description": "Display name of the IDP profile", "examples": ["relaxed"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization for the IDP profile"}, "overwrites": {"$ref": "#/components/schemas/idp_profile_overwrites", "description": "IDP signature override rules applied on top of the base profile"}}, "type": "object"}, "idp_profile_action": {"default": "alert", "description": "IDP profile action. enum: `alert`, `close`, `drop`. `alert` is the default, `drop` silently drops packets, and `close` asks the client/server to close the connection", "enum": ["alert", "close", "drop"], "examples": ["alert"], "type": "string"}, "idp_profile_base_profile": {"description": "enum: `critical`, `standard`, `strict`", "enum": ["critical", "standard", "strict"], "examples": ["strict"], "type": "string"}, "idp_profile_matching": {"additionalProperties": false, "description": "Criteria that select IDP signatures for an overwrite rule", "properties": {"attack_name": {"$ref": "#/components/schemas/idp_profile_matching_attack_name", "description": "Signature names matched by the IDP profile overwrite"}, "dst_subnet": {"$ref": "#/components/schemas/idp_profile_matching_dst_subnet", "description": "Destination subnets matched by the IDP profile overwrite"}, "severity": {"$ref": "#/components/schemas/idp_profile_matching_severity", "description": "Threat levels matched by the IDP profile overwrite"}}, "type": "object"}, "idp_profile_matching_attack_name": {"description": "IDP attack signature names matched by an overwrite rule", "items": {"examples": ["HTTP:INVALID:HDR-FIELD"], "type": "string"}, "type": "array"}, "idp_profile_matching_dst_subnet": {"description": "Destination CIDR subnets matched by an IDP profile overwrite", "items": {"examples": ["63.1.2.0/24"], "type": "string"}, "type": "array"}, "idp_profile_matching_severity": {"description": "Severity levels matched by an IDP profile overwrite", "items": {"$ref": "#/components/schemas/idp_profile_matching_severity_value"}, "type": "array"}, "idp_profile_matching_severity_value": {"description": "enum: `critical`, `info`, `major`, `minor`", "enum": ["critical", "info", "major", "minor"], "examples": ["major"], "type": "string"}, "idp_profile_overwrite": {"additionalProperties": false, "description": "Override rule that changes the IDP action for matching signatures", "properties": {"action": {"$ref": "#/components/schemas/idp_profile_action", "description": "Enforcement action applied when this overwrite rule matches"}, "matching": {"$ref": "#/components/schemas/idp_profile_matching", "description": "Criteria that select signatures for this overwrite rule"}, "name": {"description": "Display name for this IDP profile overwrite rule", "type": "string"}}, "type": "object"}, "idp_profile_overwrites": {"description": "IDP profile overwrite rules applied to the base profile", "items": {"$ref": "#/components/schemas/idp_profile_overwrite"}, "type": "array"}, "idp_profiles": {"description": "IDP profile records returned for an organization", "items": {"$ref": "#/components/schemas/idp_profile"}, "type": "array"}, "idp_user_cert_lookup_field": {"default": "automatic", "description": "allow customer to choose the EAP-TLS client certificate's field. To use for IDP User Groups lookup. enum: `automatic`, `cn`, `email`, `upn`", "enum": ["automatic", "cn", "email", "upn"], "type": "string"}, "if_stat": {"additionalProperties": {"$ref": "#/components/schemas/if_stat_property"}, "description": "Property key is the interface name", "type": "object"}, "if_stat_property": {"additionalProperties": false, "description": "Interface statistics and metadata reported by a device", "properties": {"address_mode": {"description": "Address assignment mode reported for the interface", "type": "string"}, "ips": {"$ref": "#/components/schemas/strings", "description": "Interface IP addresses reported with prefix information"}, "nat_addresses": {"$ref": "#/components/schemas/strings", "description": "NAT addresses associated with this interface"}, "network_name": {"description": "Mist network name associated with this interface", "type": "string"}, "port_id": {"description": "Physical or logical port identifier for this interface", "type": "string"}, "port_usage": {"description": "Configured usage for this interface, such as LAN or WAN", "type": "string"}, "redundancy_state": {"description": "Redundancy state reported for this interface", "type": "string"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Received byte counter for this interface"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Received packet counter for this interface"}, "servp_info": {"$ref": "#/components/schemas/if_stat_property_servp_info", "description": "Service-provider and geolocation details for this interface"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Transmitted byte counter for this interface"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Transmitted packet counter for this interface"}, "up": {"description": "Whether the interface is operationally up", "type": "boolean"}, "vlan": {"description": "Associated VLAN ID for this interface", "type": "integer"}, "wan_name": {"description": "Configured WAN name associated with this interface", "type": "string"}, "wan_type": {"description": "Configured WAN uplink type associated with this interface", "type": "string"}}, "type": "object"}, "if_stat_property_servp_info": {"additionalProperties": false, "description": "Service-provider and geolocation details associated with an interface address", "properties": {"asn": {"description": "Autonomous System Number associated with the service provider", "type": "string"}, "city": {"description": "Detected city for the service provider address", "type": "string"}, "country_code": {"description": "ISO country code for the service provider address", "type": "string"}, "latitude": {"description": "Geographic latitude for the service provider address", "type": "number"}, "longitude": {"description": "Geographic longitude for the service provider address", "type": "number"}, "org": {"description": "Service provider organization name", "type": "string"}, "region_code": {"description": "Administrative region code for the service provider address", "type": "string"}}, "type": "object"}, "image_import": {"additionalProperties": false, "description": "Multipart image upload payload", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Image file content uploaded as multipart form data", "type": "string"}, "json": {"description": "Optional JSON metadata submitted with the image upload", "type": "string"}}, "required": ["file"], "type": "object"}, "import_site_assets_upsert": {"default": "False", "description": "Whether site asset import should update matching existing assets. enum: `False`, `True`", "enum": ["False", "True"], "type": "string"}, "insight_metrics": {"additionalProperties": false, "description": "Insight metric response for a requested time range and aggregation interval", "properties": {"end": {"description": "Window end timestamp for the returned insight metrics", "type": "integer"}, "interval": {"description": "Aggregation interval used for the metric results", "type": "integer"}, "limit": {"description": "Maximum number of insight metric result items returned", "type": "integer"}, "results": {"$ref": "#/components/schemas/insight_metrics_results", "description": "Metric result values for the requested insight metric"}, "start": {"description": "Window start timestamp for the returned insight metrics", "type": "integer"}}, "required": ["end", "interval", "start"], "type": "object"}, "insight_metrics_results": {"description": "Results depends on the `metric` - some return numbers (e.g. bytes, ap-count), others return objects", "items": {"$ref": "#/components/schemas/insight_metrics_results_item"}, "type": "array", "uniqueItems": true}, "insight_metrics_results_item": {"anyOf": [{"type": "number"}, {"additionalProperties": true, "type": "object"}], "description": "Insight metric result item, returned either as a number or an object depending on the requested metric"}, "insight_rogue_ap": {"additionalProperties": false, "description": "Rogue or neighbor AP observation returned by site insights", "properties": {"ap_mac": {"description": "Reporting AP MAC address with the strongest signal for the SSID/BSSID pair", "type": "string"}, "avg_rssi": {"description": "Average RSSI for the SSID/BSSID pair as heard by the reporting AP", "type": "number"}, "bssid": {"description": "Rogue or neighbor BSSID detected as a threat", "type": "string"}, "channel": {"description": "Radio channel where the reporting AP heard the 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": "Number of APs that heard the SSID/BSSID pair", "type": "integer"}, "seen_on_lan": {"description": "Whether the reporting AP sees a LAN-side client associated with the BSSID", "type": "boolean"}, "ssid": {"description": "Wireless SSID detected for the rogue or neighbor BSSID", "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"], "type": "object"}, "insight_rogue_client": {"additionalProperties": false, "description": "Rogue client observation returned by site insights", "properties": {"annotation": {"description": "Rogue client annotation or classification", "type": "string"}, "ap_mac": {"description": "Reporting AP MAC address that observed the rogue client", "type": "string"}, "avg_rssi": {"description": "Average RSSI for the rogue client as heard by reporting APs", "type": "number"}, "band": {"description": "Radio band on which the rogue client was observed", "type": "string"}, "bssid": {"description": "Rogue BSSID associated with the client", "type": "string"}, "client_mac": {"description": "Observed client MAC address on the rogue BSSID", "type": "string"}, "num_aps": {"description": "Number of APs that observed the rogue client", "type": "integer"}}, "required": ["bssid", "ap_mac", "client_mac", "num_aps", "band", "avg_rssi", "annotation"], "type": "object"}, "installer_device": {"additionalProperties": false, "description": "Recently claimed device visible to installer workflows", "properties": {"ble_stat": {"$ref": "#/components/schemas/installer_device_ble_stat", "description": "BLE beacon statistics reported by the device"}, "connected": {"description": "Whether the device is currently connected to Mist", "examples": [true], "type": "boolean"}, "deviceprofile_name": {"description": "Device profile name associated with this installer device", "examples": ["SJ1"], "type": "string"}, "ext_ip": {"description": "External IP address observed for device management traffic", "examples": ["12.34.56.78"], "type": "string"}, "height": {"description": "Mounting height recorded for map placement", "examples": [2.7], "format": "double", "type": "number"}, "ip": {"description": "Management IP address currently reported for the device", "examples": ["192.168.1.111"], "type": "string"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Timestamp when the device was last seen by Mist"}, "mac": {"description": "Device MAC address shown to installers", "examples": ["5c5b35000018"], "type": "string"}, "map_id": {"description": "Map where the installer placed this device", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "model": {"description": "Device model reported for this installer device", "examples": ["AP41"], "type": "string"}, "name": {"description": "Device name configured through the installer workflow", "examples": ["hallway"], "type": "string"}, "orientation": {"description": "Device orientation in degrees from 0 to 359, where 0 is up and 90 is right", "examples": [90], "type": "integer"}, "serial": {"description": "Device serial number reported to installer workflows", "examples": ["FXLH2015150025"], "type": "string"}, "site_name": {"description": "Site name associated with this installer device", "examples": ["SJ1"], "type": "string"}, "uptime": {"description": "Device uptime, in seconds", "examples": [12345], "type": "integer"}, "vc_mac": {"description": "Virtual Chassis MAC address when this device is part of a VC", "examples": [null], "type": ["string", "null"]}, "version": {"description": "Software version currently running on the device", "examples": ["0.10.24362"], "type": "string"}, "x": {"description": "Horizontal map position of the device, in pixels", "examples": [150], "format": "double", "type": "number"}, "y": {"description": "Vertical map position of the device, in pixels", "examples": [300], "format": "double", "type": "number"}}, "type": "object"}, "installer_device_ble_stat": {"additionalProperties": false, "description": "BLE statistics for the device", "properties": {"major": {"description": "iBeacon major value reported by the device", "examples": [12345], "type": "integer"}, "minors": {"description": "iBeacon minor values reported by the device", "items": {"type": "integer"}, "type": "array"}, "uuid": {"description": "iBeacon UUID advertised by the device", "examples": ["ada72f8f-1643-e5c6-94db-f2a5636f1a64"], "format": "uuid", "type": "string"}}, "type": "object"}, "installer_devices": {"description": "Recently claimed devices available to installer workflows", "items": {"$ref": "#/components/schemas/installer_device"}, "type": "array"}, "installer_provision_device": {"description": "Installer payload for provisioning or replacing a device", "properties": {"deviceprofile_name": {"description": "Profile name applied to the device during installer provisioning", "examples": ["SJ1"], "type": "string"}, "for_site": {"description": "Whether this installer provisioning request is scoped to a site", "readOnly": true, "type": "boolean"}, "height": {"description": "Mounting height recorded for map placement", "examples": [2.7], "format": "double", "type": "number"}, "map_id": {"description": "Identifier of the map where the device should be placed", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "name": {"description": "Device name to set during installer provisioning", "examples": ["SJ1-AP1"], "type": "string"}, "orientation": {"description": "Device orientation in degrees from 0 to 359, where 0 is up and 90 is right", "examples": [90], "type": "integer"}, "replacing_mac": {"description": "Only if replacing an existing device; MAC address of the device being replaced", "examples": ["5c5b3500003"], "type": "string"}, "role": {"description": "Optional role for switch / gateway", "type": "string"}, "site_id": {"description": "Identifier of the destination site for installer provisioning", "examples": ["72771e6a-6f5e-4de4-a5b9-1266c4197811"], "format": "uuid", "type": "string"}, "site_name": {"description": "Destination site name for installer provisioning", "examples": ["SJ1"], "type": "string"}, "x": {"description": "Horizontal map position for the device, in pixels", "examples": [150], "format": "double", "type": "number"}, "y": {"description": "Vertical map position for the device, in pixels", "examples": [300], "format": "double", "type": "number"}}, "required": ["name"], "type": "object"}, "installer_site": {"description": "Site definition available to installer workflows", "properties": {"address": {"description": "Street or postal address for the installer site", "examples": ["1601 S. Deanza Blvd., Cupertino, CA, 95014"], "type": "string"}, "country_code": {"description": "ISO country code for the installer site", "examples": ["US"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the installer site"}, "latlng": {"$ref": "#/components/schemas/lat_lng", "description": "Geographic coordinates of the installer site"}, "name": {"description": "Display name of the installer site", "examples": ["Mist Office"], "type": "string"}, "rftemplate_name": {"description": "RF template name applied to the installer site", "examples": ["rftemplate1"], "type": "string"}, "sitegroup_names": {"$ref": "#/components/schemas/installer_site_sitegroup_names", "description": "Names of site groups associated with the installer site"}, "timezone": {"description": "Time zone configured for the installer site", "examples": ["America/Los_Angeles"], "type": "string"}}, "required": ["address", "country_code", "latlng", "name"], "type": "object"}, "installer_site_sitegroup_names": {"description": "Site group names associated with an installer site", "examples": [["sg1", "sg2"]], "items": {"type": "string"}, "type": "array"}, "installer_sites": {"description": "Sites available to installer workflows", "items": {"$ref": "#/components/schemas/installer_site"}, "type": "array"}, "installers": {"description": "Installer access entries returned by list responses", "items": {"$ref": "#/components/schemas/installers_item"}, "type": "array"}, "installers_item": {"additionalProperties": false, "description": "Installer access entry with scope and role details", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the installer access entry"}, "name": {"description": "Display name of the installer access entry", "examples": ["Entry #1"], "type": "string"}}, "type": "object"}, "integers": {"description": "List of integer values", "items": {"type": "integer"}, "type": "array"}, "inventory": {"additionalProperties": false, "description": "Organization inventory record for a claimed device", "properties": {"adopted": {"description": "Only if `type`==`switch` or `type`==`gateway`, whether the switch/gateway is adopted", "type": "boolean"}, "chassis_mac": {"description": "For Virtual Chassis only, MAC address of the FPC0 member", "type": "string"}, "chassis_serial": {"description": "For Virtual Chassis only, the Serial Number of the FPC0", "type": "string"}, "connected": {"description": "Whether the device is connected", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the inventory record was created"}, "deviceprofile_id": {"description": "Deviceprofile id if assigned, null if not assigned", "type": ["string", "null"]}, "hostname": {"description": "Inventory hostname value reported by the device", "type": "string"}, "hw_rev": {"description": "Device hardware revision number", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the inventory record"}, "jsi": {"description": "Whether the inventory device is in JSI mode", "type": "boolean"}, "last_disconnected": {"description": "Timestamp when the device last disconnected, in epoch seconds", "type": "integer"}, "mac": {"description": "Device MAC address for this inventory record", "type": "string"}, "magic": {"description": "Claim code used to add this device to inventory", "type": "string"}, "model": {"description": "Device model reported in inventory", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the inventory record was last modified"}, "name": {"description": "Device name if configured", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this inventory record"}, "serial": {"description": "Device serial number reported in inventory", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this inventory record, when assigned"}, "sku": {"description": "Device stock keeping unit", "type": "string"}, "type": {"$ref": "#/components/schemas/device_type_default_ap", "description": "Device type for this inventory record"}, "vc_mac": {"description": "If `type`==`switch` and the device is part of a Virtual Chassis, MAC address of the Virtual Chassis. If `type`==`gateway` and the device is part of a cluster, MAC address of the cluster", "type": "string"}}, "type": "object"}, "inventory_count_distinct": {"default": "model", "description": "enum: `model`, `status`, `site_id`, `sku`, `version`", "enum": ["model", "status", "site_id", "sku", "version"], "type": "string"}, "inventory_list": {"description": "Inventory records for claimed devices", "items": {"$ref": "#/components/schemas/inventory"}, "type": "array"}, "inventory_search": {"additionalProperties": false, "description": "Paginated inventory search response", "properties": {"end": {"description": "Page ending index for this inventory search response", "type": "integer"}, "limit": {"description": "Maximum number of inventory search results requested", "examples": [1000], "type": "integer"}, "next": {"description": "URL for the next page of inventory search results", "type": "string"}, "results": {"$ref": "#/components/schemas/inventory_search_results", "description": "Inventory records returned by the search"}, "start": {"description": "Page starting index for this inventory search response", "type": "integer"}, "total": {"description": "Number of inventory records matching the search", "examples": [1], "type": "integer"}}, "type": "object"}, "inventory_search_result": {"additionalProperties": false, "description": "Inventory record returned by inventory search", "properties": {"mac": {"description": "Device MAC address for this inventory search result", "examples": ["f01c2df166e0"], "type": "string"}, "master": {"description": "Whether this search result represents the master member of a Virtual Chassis", "examples": [true], "type": "boolean"}, "members": {"$ref": "#/components/schemas/inventory_search_result_members", "description": "Virtual Chassis members included in this inventory search result"}, "model": {"description": "Device model for this inventory search result", "examples": ["EX4300-48P"], "type": "string"}, "name": {"description": "Configured device name in this inventory search result", "examples": ["mist-wa-ex4300-VC"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this inventory search result"}, "serial": {"description": "Device serial number for this inventory search result", "examples": ["PD3714460200"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this inventory search result, when assigned"}, "sku": {"description": "Device SKU for this inventory search result", "examples": ["EX4300-48P"], "type": "string"}, "status": {"description": "Current inventory status for the device", "examples": ["disconnected"], "type": "string"}, "type": {"$ref": "#/components/schemas/device_type_default_ap", "description": "Device type for this inventory search result"}, "vc_mac": {"description": "Virtual Chassis MAC address for this inventory search result", "examples": ["f01c2df166e0"], "type": "string"}, "version": {"description": "Software version reported for this inventory search result", "examples": ["21.4R3.5"], "type": "string"}}, "type": "object"}, "inventory_search_result_member": {"additionalProperties": false, "description": "Virtual Chassis member in an inventory search result", "properties": {"mac": {"description": "Member device MAC address in this inventory search result", "examples": ["f01c2df166e0"], "type": "string"}, "model": {"description": "Member device model in this inventory search result", "examples": ["EX4300-48P"], "type": "string"}, "serial": {"description": "Member device serial number in this inventory search result", "examples": ["PD3714460200"], "type": "string"}}, "type": "object"}, "inventory_search_result_members": {"description": "Virtual Chassis members included in an inventory search result", "items": {"$ref": "#/components/schemas/inventory_search_result_member"}, "type": "array"}, "inventory_search_results": {"description": "Inventory records returned by an inventory search", "items": {"$ref": "#/components/schemas/inventory_search_result"}, "type": "array"}, "inventory_update": {"description": "Request to assign, unassign, delete, or change management mode for inventory devices", "properties": {"disable_auto_config": {"default": false, "deprecated": true, "description": "If `op`==`assign`, this disables the default behavior of a cloud-ready switch/gateway being managed/configured by Mist. Setting this to `true` means you want to disable the default behavior and do not want the device to be Mist-managed.", "type": "boolean"}, "macs": {"$ref": "#/components/schemas/inventory_update_macs", "description": "Device MAC addresses affected by this inventory operation"}, "managed": {"default": false, "deprecated": true, "description": "If `op`==`assign`. An adopted switch/gateway will not be managed/configured by Mist by default. Setting this parameter to `true` enables the adopted switch/gateway to be managed/configured by Mist.", "type": "boolean"}, "mist_configured": {"description": "Whether the device can be configured by Mist. Replaces `managed` for adopted devices and `disable_auto_config` for claimed devices", "type": "boolean"}, "no_reassign": {"default": false, "description": "If `op`==`assign`, if true, treat site assignment against an already assigned AP as error", "type": "boolean"}, "op": {"$ref": "#/components/schemas/inventory_update_operation", "description": "Inventory operation to apply to the listed devices"}, "serials": {"$ref": "#/components/schemas/inventory_update_serials", "description": "Device serial numbers affected by this inventory operation"}, "site_id": {"description": "If `op`==`assign`, target site ID for the inventory operation", "format": "uuid", "type": "string"}}, "required": ["op"], "type": "object"}, "inventory_update_macs": {"description": "If `op`==`assign`, `op`==`unassign`, `op`==`upgrade_to_mist`, or `op`==`downgrade_to_jsi`, device MAC addresses to update", "items": {"type": "string"}, "type": "array"}, "inventory_update_operation": {"description": "enum:\n * `upgrade_to_mist`: Upgrade to mist-managed\n * `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.\n * `assign`: Assign inventory to a site\n * `unassign`: Unassign inventory from a site\n * `delete`: Delete multiple inventory from org. If the device is already assigned to a site, it will be unassigned", "enum": ["assign", "delete", "downgrade_to_jsi", "unassign", "upgrade_to_mist"], "type": "string"}, "inventory_update_serials": {"description": "If `op`==`delete`, device serial numbers to delete from inventory", "items": {"type": "string"}, "type": "array"}, "iotendpoint_stats": {"additionalProperties": false, "description": "IoT endpoint statistics returned by a search response", "properties": {"ap_mac": {"description": "MAC address of the AP the endpoint was seen on", "examples": ["5c5b350e0001"], "type": "string"}, "id": {"description": "Unique identifier for the IoT endpoint", "examples": ["63f9e299182b63f9"], "type": "string"}, "lqi": {"description": "Link Quality Indicator (0\u2013255)", "maximum": 255, "minimum": 0, "type": "integer"}, "mac": {"description": "Endpoint MAC address reported in IoT statistics", "examples": ["63f9e299182b63f9"], "type": "string"}, "mfg": {"description": "Manufacturer name reported for the IoT endpoint", "examples": ["Assa Abloy"], "type": "string"}, "model": {"description": "Device model reported for the IoT endpoint", "examples": ["Assa Abloy"], "type": "string"}, "timestamp": {"description": "Epoch timestamp of the last observation, in seconds", "type": "number"}, "type": {"description": "IoT endpoint type. enum: `zigbee`", "examples": ["zigbee"], "type": "string"}}, "type": "object"}, "iotproxy": {"additionalProperties": false, "description": "IoT proxy configuration for the site", "properties": {"enabled": {"default": false, "description": "Whether the site IoT proxy is enabled", "type": "boolean"}, "visionline": {"$ref": "#/components/schemas/iotproxy_visionline", "description": "Site access-control integration settings for Visionline"}}, "type": "object"}, "iotproxy_visionline": {"additionalProperties": false, "description": "Visionline integration settings for IoT proxy", "properties": {"access_id": {"description": "Access ID for the Visionline service", "examples": ["790e6c1790e6c18541d"], "type": "string"}, "cacerts": {"description": "PEM-encoded CA certificates used to verify the Visionline collector's TLS certificate. Required when the collector uses a self-signed certificate", "items": {"type": "string"}, "type": "array"}, "enabled": {"default": false, "description": "Whether the Visionline integration is enabled", "type": "boolean"}, "host": {"description": "Collector hostname or IP address for Visionline", "examples": ["visionline_collector1.local"], "type": "string"}, "password": {"description": "Visionline service password used by the IoT proxy", "format": "password", "type": "string"}, "port": {"default": 443, "description": "TCP port of the Visionline collector", "type": "integer"}, "username": {"description": "Visionline service username used by the IoT proxy", "examples": ["card_administrator"], "type": "string"}}, "type": "object"}, "ip_stat": {"additionalProperties": false, "description": "Read-only IP addressing status reported by a device interface", "properties": {"dhcp_server": {"description": "Reported DHCP server IPv4 address for the interface, when available", "examples": ["192.168.95.1"], "readOnly": true, "type": ["string", "null"]}, "dns": {"$ref": "#/components/schemas/strings", "description": "Reported DNS server addresses for the interface"}, "dns_suffix": {"$ref": "#/components/schemas/strings", "description": "Reported DNS search suffixes for the interface"}, "gateway": {"description": "Current IPv4 default gateway for the interface, when available", "readOnly": true, "type": ["string", "null"]}, "gateway6": {"description": "Current IPv6 default gateway for the interface, when available", "examples": ["fdad:b0bc:f29e::1"], "readOnly": true, "type": ["string", "null"]}, "ip": {"description": "Current IPv4 address for the interface, when available", "examples": ["10.3.3.1"], "readOnly": true, "type": ["string", "null"]}, "ip6": {"description": "Current IPv6 address for the interface, when available", "examples": ["fdad:b0bc:f29e::3d16"], "readOnly": true, "type": ["string", "null"]}, "ips": {"additionalProperties": {"$ref": "#/components/schemas/ip_stat_ips"}, "description": "Per-VLAN IP address summaries keyed by VLAN name", "type": "object"}, "netmask": {"description": "Current IPv4 subnet mask for the interface, when available", "examples": ["255.255.255.0"], "readOnly": true, "type": ["string", "null"]}, "netmask6": {"description": "Current IPv6 prefix length for the interface, when available", "examples": ["/64"], "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "ip_stat_ips": {"description": "Property key is the VLAN name", "readOnly": true, "type": ["string", "null"]}, "ip_type": {"default": "dhcp", "description": "IP address assignment mode, either DHCP or static. enum: `dhcp`, `static`", "enum": ["dhcp", "static"], "examples": ["static"], "type": "string"}, "ip_type6": {"default": "disabled", "description": "enum: `autoconf`, `dhcp`, `disabled`, `static`", "enum": ["autoconf", "dhcp", "disabled", "static"], "examples": ["static"], "type": "string"}, "issued_client_certificate": {"additionalProperties": false, "description": "Issued Mist SCEP client certificate metadata", "properties": {"cert_provider": {"description": "Certificate provider that issued this client certificate", "examples": ["byod"], "type": "string"}, "common_name": {"description": "Subject common name encoded in the issued client certificate", "examples": ["john@corp.com"], "type": "string"}, "created_time": {"description": "Certificate issuance time, in epoch seconds", "type": "integer"}, "device_id": {"$ref": "#/components/schemas/device_id", "description": "Device associated with the issued client certificate"}, "expire_time": {"description": "Certificate expiry time, in epoch seconds", "type": "integer"}, "serial_number": {"description": "Certificate serial number used for lookup or revocation", "examples": ["91984382552102771A2B3C4E5F224719956718003374658"], "type": "string"}}, "type": "object"}, "issued_client_certificates": {"description": "Issued client certificates returned by a SCEP certificate query", "items": {"$ref": "#/components/schemas/issued_client_certificate"}, "type": "array"}, "issued_client_certificates_results": {"additionalProperties": false, "description": "Issued client certificate search results wrapper", "properties": {"limit": {"description": "Maximum number of results requested", "type": "integer"}, "page": {"description": "Current page number", "type": "integer"}, "results": {"$ref": "#/components/schemas/issued_client_certificates", "description": "List of issued client certificates returned by the query"}}, "type": "object"}, "js_inventory": {"description": "JSI inventory items returned for an organization", "items": {"$ref": "#/components/schemas/js_inventory_item"}, "type": "array"}, "js_inventory_item": {"additionalProperties": false, "description": "Juniper Support inventory item with entitlement, lifecycle, and software metadata", "properties": {"availability": {"description": "Current operational availability status of the device; only returned for onboarded (claimed) devices", "type": "string"}, "claimed": {"description": "Indicates if the device is claimed by any org", "type": "boolean"}, "contract_end_date": {"description": "Expiration date of the service contract; only returned for onboarded (claimed) devices", "type": "string"}, "contract_reseller": {"description": "Name of the reseller associated with the contract; only returned for onboarded (claimed) devices", "type": "string"}, "contract_start_date": {"description": "Official commencement date of the service contract; only returned for onboarded (claimed) devices", "type": "string"}, "contract_type": {"description": "General classification of the contract; only returned for onboarded (claimed) devices", "type": "string"}, "current_contract_flag": {"description": "Current status of the contract (e.g., 'Active', 'Expired'); only returned for onboarded (claimed) devices", "type": "string"}, "device_name": {"description": "Name of the device", "type": "string"}, "distributor": {"description": "Name of the distributor who provided the device; only returned for onboarded (claimed) devices", "type": "string"}, "end_of_sale_time": {"description": "End of sale epoch timestamp", "type": "integer"}, "eol_psn": {"description": "Product support notice associated with the device end-of-life milestone", "examples": ["TSB18097"], "type": "string"}, "eos_time": {"description": "End of support time", "type": "integer"}, "has_support": {"description": "Indicates if the device is covered under active support contract", "type": "boolean"}, "ia_address": {"description": "Physical installation street address of the asset; only returned for onboarded (claimed) devices", "type": "string"}, "ia_country": {"description": "Country of installation; only returned for onboarded (claimed) devices", "type": "string"}, "ia_region": {"description": "Geographic region where the device is installed; only returned for onboarded (claimed) devices", "type": "string"}, "ia_zip_postal": {"description": "ZIP or postal code of the installation site; only returned for onboarded (claimed) devices", "type": "string"}, "master": {"description": "Indicates whether it is Master", "type": "boolean"}, "model": {"description": "Hardware model recorded in the install base inventory", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier that has claimed the device, when applicable"}, "serial": {"description": "Device serial number recorded in the install base inventory", "type": "string"}, "service_contract_no": {"description": "Unique identifier for the service contract; only returned for onboarded (claimed) devices", "type": "string"}, "service_contract_type": {"description": "Specific service level or contract category for the device; only returned for onboarded (claimed) devices", "type": "string"}, "service_decline_flag": {"description": "Indicates if the service offer was declined (e.g., 'Y'/'N'); only returned for onboarded (claimed) devices", "type": "string"}, "service_eligible": {"description": "Indicator of whether the device is eligible for service coverage ('Yes', 'No'); only returned for onboarded (claimed) devices", "type": "string"}, "ship_date_calc": {"description": "Calculated or actual date the device was shipped; only returned for onboarded (claimed) devices", "type": "string"}, "sku": {"description": "Serviceable SKU associated with the device", "type": "string"}, "status": {"description": "Current inventory status reported for the device", "type": "string"}, "suggested_version": {"description": "Recommended software version for the device", "type": "string"}, "type": {"$ref": "#/components/schemas/device_type", "description": "Device category for the inventory item"}, "version": {"description": "Software version currently running on the device", "type": "string"}, "version_description": {"description": "Release description associated with the reported software version", "type": "string"}, "version_eos_time": {"description": "End of Service of version", "type": "integer"}, "version_time": {"description": "FRS date of the version", "type": "integer"}, "warranty": {"description": "Coverage details associated with the device warranty", "type": "string"}, "warranty_end": {"description": "Expiration date of the warranty period; only returned for onboarded (claimed) devices", "type": "string"}, "warranty_start": {"description": "Start date of the manufacturer or secondary warranty; only returned for onboarded (claimed) devices", "type": "string"}, "warranty_time": {"description": "Timestamp when warranty needs to be renewed", "type": "integer"}, "warranty_type": {"$ref": "#/components/schemas/jsi_warranty_type", "description": "Warranty category reported for the device"}}, "type": "object"}, "js_inventory_search": {"additionalProperties": false, "description": "Paginated JSI inventory search response", "properties": {"end": {"description": "Offset to end at", "type": "integer"}, "limit": {"description": "Number of results to return", "type": "integer"}, "next": {"description": "URL for the next page of JSI inventory results", "type": "string"}, "results": {"$ref": "#/components/schemas/js_inventory", "description": "JSI inventory records returned by the search"}, "start": {"description": "Offset to start from", "type": "integer"}, "total": {"description": "Number of JSI inventory records matching the search", "type": "integer"}}, "type": "object"}, "jse_device": {"additionalProperties": false, "description": "JSE device reported for an organization", "properties": {"ext_ip": {"description": "External IP address for the JSE device, when available", "type": "string"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Timestamp when the JSE device was last seen"}, "mac": {"description": "Device MAC address for the JSE device", "type": "string"}, "model": {"description": "Device model for the JSE device", "type": "string"}, "serial": {"description": "Device serial number for the JSE device", "type": "string"}}, "type": "object"}, "jse_devices": {"description": "JSE devices returned for an organization", "items": {"$ref": "#/components/schemas/jse_device"}, "type": "array"}, "jsi_inventory_count_distinct": {"description": "Distinct field used when counting Juniper Support Insight inventory records. enum: `account_id`, `claimed`, `has_support`, `end_of_sale_time`, `eos_time`, `version_time`, `model`, `sku`, `status`, `type`, `version`, `warranty_type`", "enum": ["account_id", "claimed", "has_support", "end_of_sale_time", "eos_time", "version_time", "model", "sku", "status", "type", "version", "warranty_type"], "type": "string"}, "jsi_pbn_item": {"additionalProperties": false, "description": "PBN (Problem Bug Notification) advisory item", "properties": {"bug_type": {"description": "Type of the bug (Day-1, Regression)", "type": "string"}, "customer_risk": {"description": "Customer impact risk level for the PBN advisory", "type": "string"}, "fixed_in": {"description": "Release in which the issue was fixed", "type": "string"}, "id": {"description": "Unique PBN advisory identifier from Juniper Support Insights", "examples": ["1403338"], "type": "string"}, "introduced_in": {"description": "Release where the PBN issue was introduced", "type": "string"}, "models": {"description": "Device models affected by the PBN issue", "items": {"type": "string"}, "type": "array"}, "product_family": {"description": "Product family affected by the PBN issue", "type": "string"}, "release_notes": {"description": "Release notes for this PBN", "type": "string"}, "restoration": {"description": "Steps recommended to restore service or recover from the PBN issue", "type": "string"}, "title": {"description": "Summary title for the PBN issue", "type": "string"}, "updated_date": {"description": "Time when the PBN advisory was last updated", "type": "integer"}, "versions": {"description": "Software versions affected by the PBN issue", "items": {"type": "string"}, "type": "array"}, "workaround": {"description": "Mitigation or workaround guidance for the PBN issue", "type": "string"}, "workaround_provided": {"description": "Indicator of whether workaround guidance is available", "type": "string"}}, "type": "object"}, "jsi_pbn_search": {"additionalProperties": false, "description": "Juniper Security Intelligence PBN search response with result metadata", "properties": {"end": {"description": "Upper bound timestamp for the PBN search window", "type": "integer"}, "limit": {"description": "Number of results to return", "type": "integer"}, "next": {"description": "Pagination URL for the next page of PBN advisories", "type": "string"}, "results": {"description": "List of PBN advisories", "items": {"$ref": "#/components/schemas/jsi_pbn_item"}, "type": "array"}, "start": {"description": "Lower bound timestamp for the PBN search window", "type": "integer"}, "total": {"description": "Count of PBN advisories matching the search", "type": "integer"}}, "type": "object"}, "jsi_sirt_item": {"additionalProperties": false, "description": "Juniper Security Intelligence SIRT advisory item", "properties": {"cvss_score": {"description": "Common Vulnerability Scoring System score for the SIRT advisory", "type": "number"}, "id": {"description": "Unique SIRT or JSA advisory identifier from Juniper Support Insights", "examples": ["JSA100053"], "type": "string"}, "models": {"description": "Device models affected by the SIRT advisory", "items": {"type": "string"}, "type": "array"}, "problem": {"description": "Issue details described by the SIRT advisory", "type": "string"}, "published_date": {"description": "Release date of the SIRT issue", "type": "integer"}, "release_notes": {"description": "Release notes if any", "type": "string"}, "severity": {"description": "Security severity assigned to the SIRT advisory", "type": "string"}, "solution": {"description": "Recommended fix or remediation for the security issue", "type": "string"}, "title": {"description": "Summary title for the SIRT advisory", "type": "string"}, "updated_date": {"description": "Time when the JSA advisory was last updated", "type": "integer"}, "versions": {"description": "Software versions affected by the SIRT advisory", "items": {"type": "string"}, "type": "array"}, "workaround": {"description": "Mitigation or workaround guidance for the SIRT advisory", "type": "string"}}, "type": "object"}, "jsi_sirt_search": {"additionalProperties": false, "description": "Juniper Security Intelligence SIRT search response with result metadata", "properties": {"end": {"description": "Upper bound timestamp for the SIRT search window", "type": "integer"}, "limit": {"description": "Number of results to return", "type": "integer"}, "next": {"description": "Pagination URL for the next page of SIRT advisories", "type": "string"}, "results": {"description": "List of SIRT advisories", "items": {"$ref": "#/components/schemas/jsi_sirt_item"}, "type": "array"}, "start": {"description": "Lower bound timestamp for the SIRT search window", "type": "integer"}, "total": {"description": "Count of SIRT advisories matching the search", "type": "integer"}}, "type": "object"}, "jsi_warranty_type": {"description": "Warranty type label for Juniper Support Insight (JSI) devices. enum: `Standard Hardware Warranty`, `Enhanced Hardware Warranty`, `Dead On Arrival Warranty`, `Limited Lifetime Warranty`, `Software Warranty`, `Limited Lifetime Warranty for WLA`, `Warranty-JCPO EOL (DOA Not Included)`, `MIST Enhanced Hardware Warranty`, `MIST Standard Warranty`, `Determine Lifetime warranty`", "enum": ["Standard Hardware Warranty", "Enhanced Hardware Warranty", "Dead On Arrival Warranty", "Limited Lifetime Warranty", "Software Warranty", "Limited Lifetime Warranty for WLA", "Warranty-JCPO EOL (DOA Not Included)", "MIST Enhanced Hardware Warranty", "MIST Standard Warranty", "Determine Lifetime warranty"], "type": "string"}, "juniper_account": {"additionalProperties": false, "description": "Linked Juniper account available to the organization", "properties": {"linked_by": {"description": "User who linked this Juniper account", "examples": ["John Smith (john@abccorp.com)"], "readOnly": true, "type": "string"}, "name": {"description": "Display name of the linked Juniper account", "examples": ["ABC Corp"], "readOnly": true, "type": "string"}}, "type": "object"}, "juniper_accounts": {"description": "Linked Juniper accounts available to the organization", "items": {"$ref": "#/components/schemas/juniper_account"}, "type": "array"}, "juniper_srx_auto_upgrade": {"additionalProperties": false, "description": "SRX firmware auto-upgrade settings applied when a device is first onboarded", "properties": {"custom_versions": {"$ref": "#/components/schemas/juniper_srx_auto_upgrade_custom_versions", "description": "Per-SRX-model firmware versions to deploy instead of the default version"}, "enabled": {"default": false, "description": "Whether SRX auto-upgrade is enabled for newly onboarded devices", "type": "boolean"}, "snapshot": {"default": false, "description": "Whether to take a snapshot during the SRX upgrade process", "type": "boolean"}, "version": {"description": "Firmware version to deploy (e.g. 23.4R2-S5.5). Optional, used when custom_versions not specified", "examples": ["23.4R2-S5.5"], "type": "string"}}, "type": "object"}, "juniper_srx_auto_upgrade_custom_versions": {"additionalProperties": {"description": "Firmware version to deploy on the specified SRX hardware", "examples": ["23.4R2-S2.1"], "type": "string"}, "description": "Property key is the SRX Hardware model (e.g. \"SRX4600\")", "type": "object"}, "junos_ip_config": {"additionalProperties": false, "description": "Junos management IP configuration", "properties": {"dns": {"$ref": "#/components/schemas/strings", "description": "Configured DNS server addresses for Junos management traffic"}, "dns_suffix": {"$ref": "#/components/schemas/strings", "description": "DNS search suffixes configured for Junos management traffic"}, "gateway": {"description": "Default gateway IPv4 address for this Junos IP configuration", "type": "string"}, "ip": {"description": "Configured IPv4 address for this Junos IP configuration", "type": "string"}, "netmask": {"description": "Used only if `subnet` is not specified in `networks`", "type": "string"}, "network": {"description": "Management network for this IP configuration; used as the default source network for outbound SSH, DNS, NTP, TACACS+, RADIUS, syslog, and SNMP", "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IP assignment mode for this Junos IP configuration"}}, "type": "object"}, "junos_local_port_config": {"additionalProperties": false, "description": "Per-port Switch Port Operator (SPO) override configuration used in `local_port_config` to customize settings inherited from `port_config`", "properties": {"all_networks": {"default": false, "description": "Only if `mode`==`trunk` whether to trunk all network/vlans", "type": "boolean"}, "allow_dhcpd": {"description": "Controls whether DHCP server traffic is allowed on ports using this configuration if DHCP snooping is enabled. This is a tri-state setting; `true`: ports become trusted ports allowing DHCP server traffic, `false`: ports become untrusted blocking DHCP server traffic, undefined: use system defaults (access ports default to untrusted, trunk ports default to trusted).", "type": "boolean"}, "allow_multiple_supplicants": {"default": false, "description": "Whether multiple supplicants may authenticate on the port", "type": "boolean"}, "bypass_auth_when_server_down": {"default": false, "description": "Only 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_unknown_client": {"default": false, "description": "Only if `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down", "type": "boolean"}, "description": {"description": "Human-readable description for this local port configuration", "type": "string"}, "disable_autoneg": {"default": false, "description": "Only if `mode`!=`dynamic` if speed and duplex are specified, whether to disable autonegotiation", "type": "boolean"}, "disabled": {"default": false, "description": "Whether the port is disabled", "type": "boolean"}, "duplex": {"$ref": "#/components/schemas/switch_port_local_usage_duplex", "description": "Link duplex mode for this local port configuration"}, "dynamic_vlan_networks": {"$ref": "#/components/schemas/switch_port_local_usage_dynamic_vlan_networks", "description": "Only if `port_auth`==`dot1x`, networks or VLANs that RADIUS can return for dynamic VLAN assignment"}, "enable_mac_auth": {"default": false, "description": "Only if `port_auth`==`dot1x` whether to enable MAC Auth", "type": "boolean"}, "enable_qos": {"default": false, "description": "Whether QoS is enabled on ports using this local configuration", "type": "boolean"}, "guest_network": {"description": "Only if `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed)", "type": ["string", "null"]}, "inter_switch_link": {"default": false, "description": "Used together with \"isolation\" under networks for links between Juniper devices; must be applied to both connected ports", "type": "boolean"}, "mac_auth_only": {"description": "Only if `enable_mac_auth`==`true`, whether to use MAC authentication without 802.1X", "type": "boolean"}, "mac_auth_preferred": {"description": "Only if `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x.", "type": "boolean"}, "mac_auth_protocol": {"$ref": "#/components/schemas/switch_port_local_usage_mac_auth_protocol", "description": "Only if `enable_mac_auth`==`true`, MAC authentication protocol to use"}, "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": {"$ref": "#/components/schemas/switch_port_local_usage_mode", "description": "Switching mode for this local port configuration"}, "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": {"$ref": "#/components/schemas/switch_port_usage_networks", "description": "Only if `mode`==`trunk`, network or VLAN names to trunk"}, "note": {"description": "Additional note for the port config override", "examples": ["force 100M for camera"], "type": "string"}, "persist_mac": {"default": false, "description": "Only 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": {"$ref": "#/components/schemas/switch_port_local_usage_dot1x", "description": "802.1X authentication mode for this local port configuration"}, "port_network": {"description": "Native network/vlan for untagged traffic", "type": "string"}, "reauth_interval": {"$ref": "#/components/schemas/switch_port_usage_reauth_interval", "description": "Only if `port_auth`==`dot1x`, RADIUS reauthentication interval for clients on the port"}, "server_fail_network": {"description": "Only if `port_auth`==`dot1x` sets server fail fallback vlan", "type": ["string", "null"]}, "server_reject_network": {"description": "Only if `port_auth`==`dot1x` when RADIUS server reject / fails", "type": ["string", "null"]}, "speed": {"$ref": "#/components/schemas/junos_port_config_speed", "description": "Link speed for this local port configuration"}, "storm_control": {"$ref": "#/components/schemas/switch_port_local_usage_storm_control", "description": "Storm-control settings for this local port configuration"}, "stp_edge": {"default": false, "description": "When enabled, the port is not expected to receive BPDU frames", "type": "boolean"}, "stp_no_root_port": {"default": false, "description": "Whether STP should prevent this port from becoming a root port", "type": "boolean"}, "stp_p2p": {"default": false, "description": "Whether STP treats this port as a point-to-point link", "type": "boolean"}, "usage": {"description": "Port usage profile name for this local port configuration", "type": "string"}, "use_vstp": {"default": false, "description": "If this is connected to a vstp network", "type": "boolean"}, "voip_network": {"description": "Network/vlan for voip traffic, must also set port_network. to authenticate device, set port_auth", "type": "string"}}, "required": ["usage"], "type": "object"}, "junos_other_ip_config": {"additionalProperties": false, "description": "Optional switch L3 presence on an additional network or VLAN", "properties": {"evpn_anycast": {"default": false, "description": "For EVPN, whether anycast is desired", "type": "boolean"}, "ip": {"description": "Required if `type`==`static`; IPv4 address for the additional Junos L3 presence", "examples": ["10.3.3.1"], "type": "string"}, "ip6": {"description": "Required if `type6`==`static`; IPv6 address for the additional Junos L3 presence", "examples": ["fdad:b0bc:f29e::3d16"], "type": "string"}, "netmask": {"description": "Optional IPv4 netmask; `subnet` from `network` definition will be used if defined", "examples": ["255.255.255.0"], "type": "string"}, "netmask6": {"description": "Optional IPv6 prefix length; `subnet` from `network` definition will be used if defined", "examples": ["/64"], "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IPv4 assignment mode for the additional Junos L3 presence"}, "type6": {"$ref": "#/components/schemas/ip_type6", "description": "IPv6 assignment mode for the additional Junos L3 presence"}}, "type": "object"}, "junos_port_config": {"additionalProperties": false, "description": "Junos switch port configuration", "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_force_up": {"default": false, "description": "If `aggregated`==`true`, sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only", "type": "boolean"}, "ae_lacp_passive": {"default": false, "description": "If `aggregated`==`true`, sets LACP to passive mode on this AE interface; by default, active (fast) mode is used", "type": "boolean"}, "ae_lacp_slow": {"description": "To use slow timeout", "type": "boolean"}, "aggregated": {"default": false, "description": "Whether this port is configured as an aggregated Ethernet member", "type": "boolean"}, "critical": {"default": false, "description": "To generate port up/down alarm", "type": "boolean"}, "description": {"description": "Human-readable description for this Junos port", "type": "string"}, "disable_autoneg": {"default": false, "description": "If `speed` and `duplex` are specified, whether to disable autonegotiation", "type": "boolean"}, "duplex": {"$ref": "#/components/schemas/junos_port_config_duplex", "description": "Link duplex mode for this Junos port"}, "dynamic_usage": {"description": "Enable dynamic usage for this port. Set to `dynamic` to enable.", "type": ["string", "null"]}, "esilag": {"description": "Whether this Junos port participates in an ESI-LAG", "type": "boolean"}, "mtu": {"default": 1514, "description": "Media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation", "type": "integer"}, "networks": {"description": "List of network names. Required if `usage`==`inet`", "items": {"type": "string"}, "type": "array"}, "no_local_overwrite": {"default": true, "description": "Prevent helpdesk to override the port config", "type": "boolean"}, "poe_disabled": {"default": false, "description": "Whether PoE capabilities are disabled for this Junos port", "type": "boolean"}, "port_network": {"description": "Required if `usage`==`vlan_tunnel`. Q-in-Q tunneling using All-in-one bundling. This also enables standard L2PT for interfaces that are not encapsulation tunnel interfaces and uses MAC rewrite operation. [View more information](https://www.juniper.net/documentation/us/en/software/junos/multicast-l2/topics/topic-map/q-in-q.html#id-understanding-qinq-tunneling-and-vlan-translation)", "type": "string"}, "speed": {"$ref": "#/components/schemas/junos_port_config_speed", "description": "Link speed for this Junos port"}, "usage": {"description": "Port usage name. For Q-in-Q, use `vlan_tunnel`. If EVPN is used, use `evpn_uplink`or `evpn_downlink`", "type": "string"}}, "required": ["usage"], "type": "object"}, "junos_port_config_duplex": {"default": "auto", "description": "enum: `auto`, `full`, `half`", "enum": ["auto", "full", "half"], "type": "string"}, "junos_port_config_speed": {"default": "auto", "description": "enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`", "enum": ["10m", "100m", "1g", "2.5g", "5g", "10g", "25g", "40g", "100g", "auto"], "type": "string"}, "l2tp_state": {"description": "enum: `established`, `established_with_session`, `idle`, `wait-ctrl-conn`, `wait-ctrl-reply`", "enum": ["established", "established_with_session", "idle", "wait-ctrl-conn", "wait-ctrl-reply"], "examples": ["established"], "type": "string"}, "last_ap": {"description": "Latest AP where the client is/was connected to", "examples": ["a83a79a947ee"], "type": "string"}, "last_cert_cn": {"description": "When certificate based authentication is used, the CN from the latest certificate used", "examples": ["john@mycorp.net"], "type": "string"}, "last_cert_expiry": {"description": "When certificate based authentication is used, the expiration date from the latest certificate used", "examples": [1746711240], "type": "number"}, "last_cert_issuer": {"description": "When certificate based authentication is used, the Issuer from the latest certificate used", "examples": ["/C=US/ST=CA/CN=MyCorp"], "type": "string"}, "last_cert_serial": {"description": "When certificate based authentication is used, the Serial from the latest certificate used", "examples": ["2c63510123456789"], "type": "string"}, "last_cert_subject": {"description": "When certificate based authentication is used, the Subject from the latest certificate used", "examples": ["/C=US/O=MyCorp/CN=john@mycorp.net/emailAddress=john@mycorp.net"], "type": "string"}, "last_client_ip": {"description": "The last known IP address for the client", "examples": ["10.100.0.157"], "type": "string"}, "last_config_device_type": {"default": "ap", "description": "enum: `ap`, `gateway`, `mxedge`, `switch`", "enum": ["ap", "gateway", "switch", "mxedge"], "type": "string"}, "last_device": {"description": "Latest type of device we identified (e.g. iPhone, Mac, ...)", "examples": ["Zebra"], "type": "string"}, "last_nacrule_id": {"description": "ID of the latest NAC Rule used to authenticate the client", "examples": ["603b62db-d839-4152-9f7f-f2578443de8d"], "type": "string"}, "last_nacrule_name": {"description": "Name of the latest NAC Rule used to authenticate the client", "examples": ["Wireless Cert Auth"], "type": "string"}, "last_nas_vendor": {"description": "Vendor name of the NAS for the latest authentication", "examples": ["juniper-mist"], "type": "string"}, "last_port_id": {"description": "If Wired authentication, the latest Port-id the client was connected to", "examples": ["ge-0/0/17.0"], "type": "string"}, "last_seen": {"description": "Timestamp indicating when the entity was last seen", "examples": [1470417522], "format": "double", "readOnly": true, "type": ["number", "null"]}, "last_ssid": {"description": "If Wireless authentication, the latest SSID the client was connected to", "examples": ["MyCorp-NAC"], "type": "string"}, "last_trouble": {"additionalProperties": false, "description": "Last trouble indicator reported by a switch", "properties": {"code": {"description": "Trouble code; definitions are listed at [List Ap Led Definition](/#operations/listApLedDefinition)", "examples": ["03"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the last trouble code was reported"}}, "type": "object"}, "last_username": {"description": "If dot1x authentication, the username used during the latest authentication. Otherwise, the MAC address of the client", "examples": ["john@mycorp.net"], "type": "string"}, "last_vlan": {"description": "Latest VLAN ID assigned to the client", "examples": [10], "type": "integer"}, "lat_lng": {"additionalProperties": false, "description": "Geographic latitude and longitude coordinate pair", "properties": {"lat": {"description": "Geographic latitude in decimal degrees", "examples": [37.295833], "format": "double", "type": "number"}, "lng": {"description": "Geographic longitude in decimal degrees", "examples": [-122.032946], "format": "double", "type": "number"}}, "required": ["lat", "lng"], "type": "object"}, "latlng_br": {"additionalProperties": false, "description": "When `type`==`google`, latitude and longitude of the bottom-right corner", "properties": {"lat": {"description": "Bottom-right latitude for the Google map bounds", "type": "string"}, "lng": {"description": "Bottom-right longitude for the Google map bounds", "type": "string"}}, "type": "object"}, "latlng_tl": {"additionalProperties": false, "description": "When `type`==`google`, latitude and longitude of the top-left corner", "properties": {"lat": {"description": "Top-left latitude for the Google map bounds", "type": "string"}, "lng": {"description": "Top-left longitude for the Google map bounds", "type": "string"}}, "type": "object"}, "license": {"additionalProperties": false, "description": "Organization license entitlement, subscription, and usage summary", "properties": {"amendments": {"$ref": "#/components/schemas/license_amendments", "description": "Read-only license amendments associated with the organization"}, "entitled": {"additionalProperties": {"type": "integer"}, "description": "Property key is license type (e.g. SUB-MAN) and Property value is the number of licenses entitled.", "readOnly": true, "type": "object"}, "fully_loaded": {"$ref": "#/components/schemas/license_fully_loaded", "description": "Maximum license demand by service if all organization devices use each service"}, "licenses": {"$ref": "#/components/schemas/licenses", "description": "Read-only license subscriptions for the organization"}, "summary": {"$ref": "#/components/schemas/license_summary", "description": "Current license consumption by license type"}, "usages": {"$ref": "#/components/schemas/license_usages", "description": "Available license counts by service"}}, "type": "object"}, "license_amendment": {"additionalProperties": false, "description": "Read-only change applied to a license subscription", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the license amendment was created"}, "end_time": {"description": "End time of the license amendment", "readOnly": true, "type": "integer"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the license amendment"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the license amendment was last modified"}, "quantity": {"description": "License quantity associated with this amendment", "readOnly": true, "type": "integer"}, "start_time": {"description": "Start time of the license amendment", "readOnly": true, "type": "integer"}, "subscription_id": {"description": "Subscription identifier associated with this amendment", "readOnly": true, "type": "string"}, "type": {"$ref": "#/components/schemas/license_type", "description": "License type affected by this amendment"}}, "readOnly": true, "type": "object"}, "license_amendments": {"description": "Read-only list of license amendments", "items": {"$ref": "#/components/schemas/license_amendment"}, "readOnly": true, "type": "array", "uniqueItems": true}, "license_fully_loaded": {"additionalProperties": {"readOnly": true, "type": "integer"}, "description": "Maximum number of licenses that may be required if the service is enabled on all the Organization Devices. Property key is the service name (e.g. \"SUB-MAN\").", "readOnly": true, "type": "object"}, "license_sub": {"additionalProperties": false, "description": "Read-only license subscription record", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the license subscription was created"}, "end_time": {"description": "End date of the license term", "readOnly": true, "type": "integer"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the license subscription"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the license subscription was last modified"}, "order_id": {"description": "Order identifier for this license subscription", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this license subscription"}, "quantity": {"description": "Number of devices entitled for this license", "readOnly": true, "type": "integer"}, "remaining_quantity": {"description": "Number of licenses left in this subscription", "type": "integer"}, "start_time": {"description": "Start date of the license term", "readOnly": true, "type": "integer"}, "subscription_id": {"description": "Subscription identifier for this license subscription", "readOnly": true, "type": "string"}, "type": {"$ref": "#/components/schemas/license_type", "description": "License type for this subscription"}}, "readOnly": true, "type": "object"}, "license_summary": {"additionalProperties": {"type": "integer"}, "description": "Number of licenses currently consumed. Property key is license type (e.g. SUB-MAN).", "readOnly": true, "type": "object"}, "license_type": {"description": "Type of license. The list of supported license type can be retrieve with the [List License Type](/#operations/listLicenseTypes) API request.", "readOnly": true, "type": "string"}, "license_usage_org": {"additionalProperties": false, "description": "License usage record for an organization usage scope", "properties": {"for_site": {"description": "Whether this license usage record is scoped to a site", "readOnly": true, "type": "boolean"}, "fully_loaded": {"$ref": "#/components/schemas/license_fully_loaded", "description": "Maximum license demand by service if all organization devices use each service"}, "num_devices": {"description": "Number of devices counted in this license usage scope", "readOnly": true, "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this license usage record"}, "summary": {"$ref": "#/components/schemas/license_summary", "description": "Current license consumption by license type for this usage scope"}, "usages": {"$ref": "#/components/schemas/license_usages", "description": "Available license counts by service for this usage scope"}}, "required": ["num_devices", "site_id", "usages"], "type": "object"}, "license_usage_site": {"additionalProperties": false, "description": "Site license usage and entitlement response", "properties": {"org_entitled": {"$ref": "#/components/schemas/license_usage_site_org_entitled", "description": "Organization-level license entitlements available to this site"}, "svna_enabled": {"description": "Eligibility for the Switch SLE", "type": "boolean"}, "trial_enabled": {"description": "Whether trial licensing is enabled for the site", "type": "boolean"}, "usages": {"$ref": "#/components/schemas/license_usage_site_usage", "description": "License usage counts by subscription type for this site"}, "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"}, "license_usage_site_org_entitled": {"additionalProperties": {"type": "integer"}, "description": "License entitlement for the entire org", "examples": [{"SUB-LOC": 30, "SUB-MAN": 60}], "type": "object"}, "license_usage_site_usage": {"additionalProperties": {"type": "integer"}, "description": "Subscriptions and their quantities", "examples": [{"SUB-LOC": 30, "SUB-MAN": 60}], "type": "object"}, "license_usages": {"additionalProperties": {"readOnly": true, "type": "integer"}, "description": "Number of available licenses. Property key is the service name (e.g. \"SUB-MAN\").", "readOnly": true, "type": "object"}, "licenses": {"description": "License subscriptions for the organization", "items": {"$ref": "#/components/schemas/license_sub"}, "type": "array"}, "list_msp_logs_sort": {"description": "enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "enum": ["-timestamp", "admin_id", "site_id", "timestamp"], "type": "string"}, "list_org_logs_sort": {"description": "enum: `-timestamp`, `admin_id`, `site_id`, `timestamp`", "enum": ["-timestamp", "admin_id", "site_id", "timestamp"], "type": "string"}, "local_port_config": {"additionalProperties": {"$ref": "#/components/schemas/junos_local_port_config"}, "description": "Per-port Switch Port Operator (SPO) override, overriding the port configuration from `port_config`. Property key is the port name or range (e.g. \"ge-0/0/0-10\")", "type": "object"}, "locate_switch": {"description": "Request body for locating a switch or virtual chassis member by MAC address for a limited duration", "properties": {"duration": {"default": 5, "description": "Minutes the leds should keep flashing", "maximum": 120, "minimum": 1, "type": "integer"}, "mac": {"description": "For virtual chassis, the MAC of the member", "examples": ["f01c2d4ff760"], "type": "string"}}, "type": "object"}, "log_event": {"additionalProperties": false, "description": "Audit log event recorded for an organization or site", "properties": {"admin_id": {"description": "Admin user identifier associated with the log event", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "admin_name": {"description": "Name of the admin that performs the action", "readOnly": true, "type": ["string", "null"]}, "after": {"additionalProperties": true, "description": "field values after the change", "readOnly": true, "type": "object"}, "before": {"additionalProperties": true, "description": "field values prior to the change", "readOnly": true, "type": "object"}, "device_id": {"description": "Device identifier associated with the log event", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "for_site": {"description": "Whether this log event is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the log event"}, "message": {"description": "Human-readable log message describing the event", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the log event"}, "site_id": {"description": "Site associated with the log event, if any", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "src_ip": {"description": "sender source IP address", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the log event occurred"}}, "required": ["message", "org_id", "timestamp"], "type": "object"}, "log_events": {"description": "Audit log events returned by a log query", "items": {"$ref": "#/components/schemas/log_event"}, "type": "array", "uniqueItems": true}, "login": {"description": "Login request using email/password and an optional two-factor code", "properties": {"email": {"description": "Administrator email address used to log in", "examples": ["test@mistsys.com"], "type": "string"}, "password": {"description": "Administrator password used to log in", "examples": ["foryoureyesonly"], "type": "string"}, "two_factor": {"description": "Optional two-factor authentication code for the login request", "examples": ["123456"], "type": "string"}}, "required": ["email", "password"], "type": "object"}, "login_failures": {"additionalProperties": false, "description": "Failed login attempt summary with source IPs and user agents", "properties": {"email": {"description": "User email address for the failed login attempts", "examples": ["admin@test.com"], "type": "string"}, "last_failure_at": {"description": "Time of the most recent failed login attempt", "examples": [1509161968], "type": "integer"}, "num_attempts": {"description": "Number of failed login attempts", "examples": [1], "type": "integer"}, "src_ips": {"$ref": "#/components/schemas/login_failures_src_ips", "description": "Source IP addresses observed for failed login attempts"}, "user_agents": {"$ref": "#/components/schemas/login_failures_user_agents", "description": "User-Agent strings observed for failed login attempts"}}, "type": "object"}, "login_failures_src_ips": {"description": "List of up to 32 unique source IP addresses, ordered with the most recent first", "examples": [["192.168.1.39", "192.168.1.38", "192.168.1.37"]], "items": {"type": "string"}, "type": "array"}, "login_failures_user_agents": {"description": "List of up to 32 unique User-Agent strings, ordered with the most recent first", "examples": [["Test UA 39", "Test UA 38", "Test UA 37"]], "items": {"type": "string"}, "type": "array"}, "mac_addresses": {"description": "Request containing one or more MAC addresses", "properties": {"macs": {"$ref": "#/components/schemas/mac_addresses_macs", "description": "List of MAC addresses included in the request"}}, "required": ["macs"], "type": "object"}, "mac_addresses_macs": {"description": "Unique MAC addresses included in a request", "examples": [["683b679ac024"]], "items": {"type": "string"}, "minItems": 1, "type": "array", "uniqueItems": true}, "mac_table_stats": {"additionalProperties": false, "description": "MAC table capacity and usage statistics", "properties": {"mac_table_count": {"description": "Number of learned MAC table entries currently present", "type": "integer"}, "max_mac_entries_supported": {"description": "Maximum number of MAC table entries supported", "type": "integer"}}, "type": "object"}, "map": {"description": "Map or floorplan metadata for a site or organization", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the map was created"}, "flags": {"additionalProperties": {"type": "integer"}, "description": "Name/val pair objects for location engine to use", "examples": [{"assetHoldTime": 5, "storeTime": 10}], "readOnly": true, "type": "object"}, "for_site": {"description": "Whether this map belongs to a site scope", "readOnly": true, "type": "boolean"}, "geofences": {"$ref": "#/components/schemas/map_geofences", "description": "Location boundary definitions configured on this map"}, "group_idx": {"description": "Optional floor or group ordering index for this map", "examples": [1], "type": "integer"}, "group_name": {"description": "Optional floor or group display name for this map", "examples": ["East Wing"], "type": "string"}, "height": {"description": "When `type`==`image`, height of the map image in pixels", "examples": [1500], "type": "integer"}, "height_m": {"description": "Physical height of the map in meters", "format": "double", "type": "number"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the map"}, "latlng_br": {"$ref": "#/components/schemas/latlng_br", "description": "When `type`==`google`, bottom-right map bounds coordinate"}, "latlng_tl": {"$ref": "#/components/schemas/latlng_tl", "description": "When `type`==`google`, top-left map bounds coordinate"}, "locked": {"default": false, "description": "Whether this map is considered locked down", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the map was last modified"}, "name": {"description": "The name of the map", "examples": ["Mist Office"], "type": "string"}, "occupancy_limit": {"description": "Maximum occupancy configured for this map", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with this map"}, "orientation": {"default": 0, "description": "Map orientation in degrees; 0 means up is north, 90 means up is west", "examples": [30], "maximum": 359, "minimum": 0, "type": "integer"}, "origin_x": {"description": "User-annotated X origin, pixels", "examples": [35], "type": "integer"}, "origin_y": {"description": "User-annotated Y origin, pixels", "examples": [60], "type": "integer"}, "ppm": {"description": "When `type`==`image`, pixels per meter for the map image", "examples": [40.94], "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this map, when scoped to a site"}, "sitesurvey_path": {"$ref": "#/components/schemas/map_sitesurvey_path", "description": "Site survey path geometry for this map"}, "thumbnail_url": {"description": "When `type`==`image`, URL for the thumbnail image or preview", "examples": ["https://url/to/image.png"], "readOnly": true, "type": "string"}, "type": {"$ref": "#/components/schemas/map_type", "description": "Map type, such as `image` or `google`"}, "url": {"description": "When `type`==`image`, URL for the map image", "examples": ["https://url/to/image.png"], "readOnly": true, "type": "string"}, "view": {"$ref": "#/components/schemas/map_view", "description": "If `type`==`google`, map tile view to display"}, "wall_path": {"$ref": "#/components/schemas/map_wall_path", "description": "Wall path geometry for this map"}, "wayfinding": {"$ref": "#/components/schemas/map_wayfinding", "description": "Navigation pathfinding settings for this map"}, "wayfinding_path": {"$ref": "#/components/schemas/map_wayfinding_path", "description": "Wayfinding path geometry for this map"}, "width": {"description": "When `type`==`image`, width of the map image in pixels", "examples": [1250], "type": "integer"}, "width_m": {"description": "Physical width of the map in meters", "format": "double", "type": "number"}}, "type": "object"}, "map_geofence": {"additionalProperties": false, "description": "Geofence drawn on a map", "properties": {"name": {"description": "Display name for the map geofence", "examples": ["example"], "type": "string"}, "vertices": {"$ref": "#/components/schemas/map_geofence_vertices", "description": "Polygon points that define the geofence boundary"}}, "type": "object"}, "map_geofence_vertice": {"additionalProperties": false, "description": "Vertex coordinate for a map geofence polygon", "properties": {"X": {"description": "Geofence vertex X coordinate in map units", "examples": [700], "type": "number"}, "Y": {"description": "Geofence vertex Y coordinate in map units", "examples": [100], "type": "number"}}, "type": "object"}, "map_geofence_vertices": {"description": "List of vertices defining the geofence", "items": {"$ref": "#/components/schemas/map_geofence_vertice"}, "type": "array"}, "map_geofences": {"description": "List of geofences for the map", "items": {"$ref": "#/components/schemas/map_geofence"}, "type": "array"}, "map_import_json": {"additionalProperties": false, "description": "Options for importing map data from Ekahau or iBwave JSON", "properties": {"import_all_floorplans": {"default": false, "description": "Whether to import all floorplans from the uploaded map JSON", "type": "boolean"}, "import_height": {"default": true, "description": "Whether to import height metadata from the uploaded map JSON", "type": "boolean"}, "import_orientation": {"default": true, "description": "Whether to import orientation metadata from the uploaded map JSON", "type": "boolean"}, "vendor_name": {"$ref": "#/components/schemas/map_import_json_vendor_name", "description": "Map import vendor for the uploaded JSON"}}, "required": ["vendor_name"], "type": "object"}, "map_import_json_vendor_name": {"description": "Map import vendor for the uploaded JSON. enum: `ekahau`, `ibwave`", "enum": ["ekahau", "ibwave"], "examples": ["ekahau"], "type": "string"}, "map_jibestream": {"additionalProperties": false, "description": "Jibestream map import configuration", "properties": {"client_id": {"description": "Client identifier for the Jibestream API", "examples": ["199d6770-0f6f-407a-9bd5-fc33c7840194"], "format": "uuid", "type": "string"}, "client_secret": {"description": "Client secret for the Jibestream API", "examples": ["/9Nog3yDzcYj0bY91XJZQLCt+m9DXaIVhx+Ghk3ddd"], "format": "password", "type": "string"}, "customer_id": {"description": "Jibestream customer record id", "examples": [123], "type": "integer"}, "endpoint_url": {"description": "Map contents endpoint host", "examples": ["https://api.jibestream.com"], "type": "string"}, "map_id": {"description": "Jibestream map identifier to import", "examples": ["b069b358-4c97-5319-1f8c-7c5ca64d6ab1"], "format": "uuid", "type": "string"}, "mmpp": {"description": "Millimeters per pixel for the Jibestream map", "examples": [223], "type": "integer"}, "ppm": {"description": "Pixel per meter, same as the map JSON value.", "examples": [4], "type": "number"}, "vendor_name": {"$ref": "#/components/schemas/map_jibestream_vendor_name", "description": "Vendor identifier for a Jibestream import"}, "venue_id": {"description": "Venue or organization id", "examples": [123], "type": "integer"}}, "required": ["vendor_name", "venue_id", "map_id", "ppm", "client_id", "client_secret", "customer_id", "endpoint_url", "mmpp"], "type": "object"}, "map_jibestream_vendor_name": {"default": "jibestream", "description": "The vendor \u2018jibestream\u2019. enum: `jibestream`", "enum": ["jibestream"], "type": "string"}, "map_micello": {"additionalProperties": false, "description": "Micello map import configuration", "properties": {"account_key": {"description": "Account key that has access to the map", "examples": [null], "type": "string"}, "default_level_id": {"description": "Micello default floor or level identifier", "examples": [5], "type": "integer"}, "map_id": {"description": "Micello map identifier to import", "examples": ["6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9"], "format": "uuid", "type": "string"}, "vendor_name": {"$ref": "#/components/schemas/map_micello_vendor_name", "description": "Vendor identifier for a Micello import"}}, "required": ["vendor_name", "account_key", "map_id", "default_level_id"], "type": "object"}, "map_micello_vendor_name": {"default": "micello", "description": "The vendor \u2018micello\u2019. enum: `micello`", "enum": ["micello"], "type": "string"}, "map_node": {"additionalProperties": false, "description": "Node in a map path graph", "properties": {"edges": {"additionalProperties": {"type": "string"}, "description": "Adjacent node IDs and path weights for this map node", "examples": [{"N1": "1"}], "type": "object"}, "name": {"description": "Map node identifier or display name", "examples": ["N1"], "type": "string"}, "position": {"$ref": "#/components/schemas/map_node_position", "description": "Coordinates of this map node"}}, "required": ["name"], "type": "object"}, "map_node_position": {"additionalProperties": false, "description": "Position of a map path node", "properties": {"x": {"description": "Horizontal coordinate of the map node", "examples": [746], "format": "double", "type": "number"}, "y": {"description": "Vertical coordinate of the map node", "examples": [104], "format": "double", "type": "number"}}, "required": ["x", "y"], "type": "object"}, "map_org_import_file": {"additionalProperties": false, "description": "Multipart payload for importing map files at organization scope", "properties": {"auto_deviceprofile_assignment": {"description": "Whether to auto assign device to deviceprofile by name", "examples": [true], "type": "boolean"}, "csv": {"contentMediaType": "application/octet-stream", "description": "Optional AP name-mapping CSV file", "type": "string"}, "file": {"contentMediaType": "application/octet-stream", "description": "Ekahau or iBwave floorplan file to import", "type": "string"}, "json": {"$ref": "#/components/schemas/map_org_import_file_json", "description": "Import options for the organization map file"}}, "type": "object"}, "map_org_import_file_json": {"additionalProperties": false, "description": "Options for importing map files at organization scope", "properties": {"import_all_floorplans": {"default": false, "description": "Whether to import all floorplans from the uploaded map file", "type": "boolean"}, "import_height": {"default": true, "description": "Whether to import height metadata from the uploaded map file", "type": "boolean"}, "import_orientation": {"default": true, "description": "Whether to import orientation metadata from the uploaded map file", "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Target site for imported floorplans, when specified"}, "vendor_name": {"$ref": "#/components/schemas/map_org_import_file_json_vendor_name", "description": "Map import vendor for the uploaded file"}}, "required": ["vendor_name"], "type": "object"}, "map_org_import_file_json_vendor_name": {"description": "Map import vendor for the uploaded file. enum: `ekahau`, `ibwave`", "enum": ["ekahau", "ibwave"], "examples": ["ekahau"], "type": "string"}, "map_site_import_file": {"additionalProperties": false, "description": "Multipart payload for importing map files at site scope", "properties": {"auto_deviceprofile_assignment": {"description": "Whether to auto assign device to deviceprofile by name", "examples": [true], "type": "boolean"}, "csv": {"contentMediaType": "application/octet-stream", "description": "Optional AP name-mapping CSV file", "type": "string"}, "file": {"contentMediaType": "application/octet-stream", "description": "Ekahau or iBwave floorplan file to import", "type": "string"}, "json": {"$ref": "#/components/schemas/map_import_json", "description": "Import options for the site map file"}}, "type": "object"}, "map_site_replace_file": {"additionalProperties": false, "description": "Multipart payload for replacing a site map image", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Map image file used to replace the existing site map", "type": "string"}, "json": {"$ref": "#/components/schemas/map_site_replace_file_json", "description": "Replacement transform options for the map image"}}, "required": ["file"], "type": "object"}, "map_site_replace_file_json": {"additionalProperties": false, "description": "Options for replacing a site map image", "properties": {"transform": {"$ref": "#/components/schemas/map_site_replace_file_json_transform", "description": "Coordinate transform to apply when replacing the map image"}}, "type": "object"}, "map_site_replace_file_json_transform": {"additionalProperties": false, "description": "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)", "properties": {"rotation": {"default": 0, "description": "Whether to rotate the replacing image, in degrees", "type": "number"}, "scale": {"default": 1, "description": "Whether to scale the replacing image", "examples": [0.98], "type": "number"}, "x": {"default": 0, "description": "Where the (0, 0) of the new image is relative to the original map", "examples": [3.16], "format": "double", "type": "number"}, "y": {"default": 0, "description": "Where the (0, 0) of the new image is relative to the original map", "examples": [12], "format": "double", "type": "number"}}, "type": "object"}, "map_sitesurvey_path": {"description": "Site survey path definitions for a map", "items": {"$ref": "#/components/schemas/map_sitesurvey_path_items"}, "minItems": 0, "type": "array"}, "map_sitesurvey_path_items": {"additionalProperties": false, "description": "Site survey path definition on a map", "properties": {"coordinate": {"description": "Site survey path coordinate space", "examples": ["actual"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the site survey path"}, "name": {"description": "Display name of the site survey path", "examples": ["Default"], "type": "string"}, "nodes": {"$ref": "#/components/schemas/map_sitesurvey_path_items_nodes", "description": "Path nodes included in the site survey path"}}, "type": "object"}, "map_sitesurvey_path_items_nodes": {"description": "Map nodes included in a site survey path", "items": {"$ref": "#/components/schemas/map_node"}, "minItems": 0, "type": "array"}, "map_type": {"default": "image", "description": "Map type, such as `image` or `google`. enum: `google`, `image`", "enum": ["google", "image"], "examples": ["image"], "type": "string"}, "map_view": {"description": "if `type`==`google`. enum: `hybrid`, `roadmap`, `satellite`, `terrain`", "enum": ["hybrid", "roadmap", "satellite", "terrain"], "type": ["string", "null"]}, "map_wall_path": {"additionalProperties": false, "description": "JSON blob for wall definition (same format as wayfinding_path)", "properties": {"coordinate": {"description": "Wall path coordinate space", "examples": ["actual"], "type": "string"}, "nodes": {"$ref": "#/components/schemas/map_wall_path_nodes", "description": "Path nodes that define the wall geometry"}}, "type": "object"}, "map_wall_path_nodes": {"description": "Map nodes included in a wall path", "items": {"$ref": "#/components/schemas/map_node"}, "minItems": 0, "type": "array"}, "map_wayfinding": {"additionalProperties": false, "description": "Properties related to wayfinding", "properties": {"micello": {"$ref": "#/components/schemas/map_wayfinding_micello", "description": "External Micello wayfinding integration settings for this map"}, "snap_to_path": {"description": "Whether wayfinding should snap routes to configured paths", "type": "boolean"}}, "type": "object"}, "map_wayfinding_micello": {"additionalProperties": false, "description": "Micello wayfinding integration settings", "properties": {"account_key": {"description": "Micello account key used for wayfinding", "examples": ["adasdf"], "type": "string"}, "default_level_id": {"description": "Default Micello floor or level identifier for wayfinding", "examples": [5], "type": "integer"}, "map_id": {"description": "Micello map identifier used for wayfinding", "examples": ["c660f81dd250c"], "type": "string"}}, "type": "object"}, "map_wayfinding_path": {"additionalProperties": false, "description": "JSON blob for wayfinding (using Dijkstra\u2019s algorithm)", "properties": {"coordinate": {"description": "Wayfinding path coordinate space", "examples": ["actual"], "type": "string"}, "nodes": {"$ref": "#/components/schemas/map_wayfinding_path_nodes", "description": "Path nodes used for wayfinding routes"}}, "type": "object"}, "map_wayfinding_path_nodes": {"description": "Map nodes included in a wayfinding path", "items": {"$ref": "#/components/schemas/map_node"}, "minItems": 0, "type": "array"}, "maps": {"description": "Maps or floorplans returned by the API", "items": {"$ref": "#/components/schemas/map"}, "type": "array"}, "mapstack": {"additionalProperties": false, "description": "Map Stack filter or creation payload", "properties": {"name": {"description": "The name of the map stack", "examples": ["Board Room"], "type": "string"}}, "type": "object"}, "mapstack_response": {"additionalProperties": false, "description": "Map Stack response object", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the map stack was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the map stack"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the map stack was last modified"}, "name": {"description": "The name of the map stack", "examples": ["Board Room"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the map stack"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the map stack"}}, "type": "object"}, "mapstacks": {"description": "Map stacks returned by the API", "items": {"$ref": "#/components/schemas/mapstack_response"}, "type": "array"}, "marvis": {"additionalProperties": false, "description": "Marvis automation and client settings", "properties": {"auto_operations": {"$ref": "#/components/schemas/marvis_auto_operations", "description": "Automatic remediation operations controlled by Marvis"}}, "type": "object"}, "marvis_auto_operations": {"additionalProperties": false, "description": "Marvis automatic remediation operation toggles", "properties": {"ap_insufficient_capacity": {"default": false, "description": "Whether Marvis may remediate AP insufficient-capacity issues automatically", "type": "boolean"}, "ap_loop": {"default": false, "description": "Whether Marvis may remediate AP loop issues automatically", "type": "boolean"}, "ap_non_compliant": {"default": false, "description": "Whether Marvis may remediate AP non-compliance automatically", "type": "boolean"}, "bounce_port_for_abnormal_poe_client": {"default": false, "description": "Whether Marvis may bounce switch ports for abnormal PoE clients", "type": "boolean"}, "disable_port_when_ddos_protocol_violation": {"default": false, "description": "Whether Marvis may disable a port when DDOS protocol violations are detected", "type": "boolean"}, "disable_port_when_rogue_dhcp_server_detected": {"default": false, "description": "Whether Marvis may disable a port when a rogue DHCP server is detected", "type": "boolean"}, "gateway_non_compliant": {"default": false, "description": "Whether Marvis may remediate non-compliant gateways automatically", "type": "boolean"}, "switch_misconfigured_port": {"default": false, "description": "Whether Marvis may remediate misconfigured switch ports automatically", "type": "boolean"}, "switch_port_stuck": {"default": false, "description": "Whether Marvis may remediate stuck switch ports automatically", "type": "boolean"}}, "type": "object"}, "marvis_client": {"description": "Marvis Client configuration profile", "properties": {"disabled": {"default": false, "description": "Whether this Marvis Client profile is disabled", "type": "boolean"}, "enrollment_url": {"description": "In MDM, add `--enrollment_url ` to the install command", "examples": ["marvisclient://api.mist.com/path/to/url"], "readOnly": true, "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Marvis Client profile"}, "location": {"$ref": "#/components/schemas/marvis_client_location", "description": "Client location collection settings for Marvis Client"}, "name": {"description": "Display name for the Marvis Client profile", "examples": ["Handhelds"], "type": "string"}, "synthetic_test": {"$ref": "#/components/schemas/marvis_client_synthetic_test", "description": "Synthetic test settings for Marvis Client"}, "telemetry": {"$ref": "#/components/schemas/marvis_client_telemetry", "description": "Client telemetry collection settings for Marvis Client"}}, "type": "object"}, "marvis_client_event": {"additionalProperties": false, "description": "A Marvis Client event record", "properties": {"band": {"description": "Wi-Fi band at the time of the event", "type": "string"}, "bssid": {"description": "BSSID the client roamed to (for roam events)", "type": "string"}, "channel": {"description": "Channel the client roamed to (for roam events)", "type": "integer"}, "device_id": {"description": "UUID of the device the Marvis Client is installed on", "format": "uuid", "type": "string"}, "hostname": {"description": "Device hostname", "type": "string"}, "location": {"$ref": "#/components/schemas/stats_marvis_client_location", "description": "Last known device location"}, "neighbor_ap_report": {"description": "List of neighboring APs observed at the time of the event", "items": {"$ref": "#/components/schemas/marvis_client_event_neighbor_ap"}, "type": "array"}, "org_id": {"description": "Organization UUID", "format": "uuid", "type": "string"}, "percent": {"description": "Battery level percentage at the time of the event (for battery events)", "type": "integer"}, "pre_bssid": {"description": "BSSID the client roamed from (for roam events)", "type": "string"}, "pre_channel": {"description": "Channel the client roamed from (for roam events)", "type": "integer"}, "pre_rssi": {"description": "RSSI before the roam event, in dBm", "type": "integer"}, "rssi": {"description": "Wi-Fi RSSI at the time of the event, in dBm", "type": "integer"}, "ssid": {"description": "SSID the client was connected to", "type": "string"}, "timestamp": {"description": "Event timestamp, in epoch seconds", "type": "integer"}, "type": {"description": "Event type", "type": "string"}, "wifi_ip": {"description": "Device Wi-Fi IP address at the time of the event", "type": "string"}, "wifi_mac": {"description": "Device Wi-Fi MAC address", "type": "string"}}, "type": "object"}, "marvis_client_event_neighbor_ap": {"additionalProperties": false, "description": "A neighboring AP observed in a Marvis Client event", "properties": {"band": {"description": "Wi-Fi band the AP is operating on", "type": "string"}, "bssid": {"description": "BSSID of the neighboring AP", "type": "string"}, "channel": {"description": "Channel the neighboring AP is on", "type": "integer"}, "rssi": {"description": "RSSI of the neighboring AP signal, in dBm", "type": "integer"}}, "type": "object"}, "marvis_client_events_search": {"additionalProperties": false, "description": "Paginated list of Marvis Client events", "properties": {"limit": {"description": "Maximum number of results requested", "type": "integer"}, "results": {"description": "List of Marvis Client events", "items": {"$ref": "#/components/schemas/marvis_client_event"}, "type": "array"}, "total": {"description": "Total number of matching results", "type": "integer"}}, "type": "object"}, "marvis_client_insights": {"additionalProperties": false, "description": "Time-series performance metrics for a Marvis Client device", "properties": {"avg_battery": {"description": "Average battery level per interval bucket", "items": {"type": "number"}, "type": "array"}, "avg_cellular_rssi": {"description": "Average cellular RSSI per interval bucket, in dBm", "items": {"type": "number"}, "type": "array"}, "avg_cpu": {"description": "Average CPU utilization per interval bucket (0\u2013100)", "items": {"type": "number"}, "type": "array"}, "avg_memory": {"description": "Average memory utilization per interval bucket (0\u2013100)", "items": {"type": "number"}, "type": "array"}, "avg_wifi_rssi": {"description": "Average Wi-Fi RSSI per interval bucket, in dBm", "items": {"type": "number"}, "type": "array"}, "end": {"description": "End of the reporting window, in epoch seconds", "type": "integer"}, "interval": {"description": "Duration of each interval bucket, in seconds", "type": "integer"}, "limit": {"description": "Maximum number of results requested", "type": "integer"}, "page": {"description": "Current page number", "type": "integer"}, "rt": {"description": "List of ISO 8601 timestamp strings for each interval bucket", "items": {"type": "string"}, "type": "array"}, "start": {"description": "Start of the reporting window, in epoch seconds", "type": "integer"}}, "type": "object"}, "marvis_client_location": {"additionalProperties": false, "description": "Location collection settings for Marvis Client", "properties": {"enabled": {"description": "Whether location collection is enabled for Marvis Client", "type": "boolean"}}, "type": "object"}, "marvis_client_synthetic_test": {"additionalProperties": false, "description": "Synthetic test settings for Marvis Client", "properties": {"enabled": {"description": "Whether synthetic testing is enabled for Marvis Client", "type": "boolean"}}, "type": "object"}, "marvis_client_telemetry": {"additionalProperties": false, "description": "Note: some stats are not collected when it's not connected to Mist infrastructure", "properties": {"enabled": {"description": "Whether telemetry collection is enabled for Marvis Client", "type": "boolean"}}, "type": "object"}, "marvis_clients": {"description": "Marvis Client profiles returned by the API", "items": {"$ref": "#/components/schemas/marvis_client"}, "type": "array"}, "marvis_config_action": {"additionalProperties": false, "description": "A Marvis-injected config action record", "properties": {"admin_id": {"description": "Admin UUID associated with the config action", "format": "uuid", "type": "string"}, "id": {"description": "UUID of the config action", "format": "uuid", "type": "string"}, "mac": {"description": "Device MAC address", "type": "string"}, "op": {"description": "Operation type (e.g. disable_port, enable_port, update_mtu, add_vlans_to_port)", "type": "string"}, "org_id": {"description": "Organization UUID", "format": "uuid", "type": "string"}, "port_id": {"description": "Port identifier (e.g. ge-0/0/13)", "type": "string"}, "reason": {"description": "Reason for the config action (e.g. rogue_dhcp_server_detected)", "type": "string"}, "site_id": {"description": "Site UUID", "format": "uuid", "type": "string"}, "src": {"description": "Source of the config action (e.g. marvis)", "type": "string"}, "timestamp": {"description": "Timestamp when the config action was recorded, in epoch seconds", "type": "number"}, "type": {"description": "Config type (e.g. wired)", "type": "string"}, "vlan_ids": {"description": "List of VLAN IDs involved in the config action", "items": {"type": "integer"}, "type": "array"}}, "type": "object"}, "marvis_config_actions_search": {"additionalProperties": false, "description": "Paginated list of Marvis config actions", "properties": {"end": {"description": "Search window end timestamp, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of results requested", "type": "integer"}, "results": {"description": "List of Marvis config actions", "items": {"$ref": "#/components/schemas/marvis_config_action"}, "type": "array"}, "start": {"description": "Search window start timestamp, in epoch seconds", "type": "integer"}, "total": {"description": "Total number of matching results", "type": "integer"}}, "type": "object"}, "marvis_config_feedback": {"additionalProperties": false, "description": "Feedback submission for a Marvis config action", "properties": {"note": {"description": "Free-text note about the feedback", "type": "string"}, "type": {"description": "Feedback type. enum: `invalid`", "enum": ["invalid"], "type": "string"}}, "type": "object"}, "marvis_config_feedback_response": {"additionalProperties": false, "description": "Response after submitting feedback on a Marvis config action", "properties": {"feedback_note": {"description": "The note provided with the feedback", "type": "string"}, "feedback_type": {"description": "The feedback type that was submitted", "type": "string"}}, "type": "object"}, "marvis_self_driving": {"additionalProperties": false, "description": "Self-driving network automation settings per domain", "properties": {"wan": {"$ref": "#/components/schemas/marvis_self_driving_domain", "description": "Self-driving automation settings for the WAN domain"}, "wired": {"$ref": "#/components/schemas/marvis_self_driving_domain", "description": "Self-driving automation settings for the wired domain"}, "wireless": {"$ref": "#/components/schemas/marvis_self_driving_domain", "description": "Self-driving automation settings for the wireless domain"}}, "type": "object"}, "marvis_self_driving_domain": {"additionalProperties": false, "description": "Self-driving automation settings for one Marvis domain", "properties": {"enabled": {"default": false, "description": "Whether self-driving automation is enabled for this domain", "type": "boolean"}}, "type": "object"}, "memory_stat": {"additionalProperties": false, "description": "Memory utilization statistics for a device; in a virtual chassis, this reports the master Routing Engine", "properties": {"usage": {"description": "Current memory utilization percentage for the device or master Routing Engine", "type": "number"}}, "required": ["usage"], "type": "object"}, "mfa_secret_type": {"default": "qrcode", "description": "MFA secret representation format for enrollment. enum: `qrcode`", "enum": ["qrcode"], "type": "string"}, "mist_device": {"description": "Mist-managed device object for an AP, switch, or gateway", "discriminator": {"mapping": {"ap": "#/components/schemas/device_ap", "gateway": "#/components/schemas/device_gateway", "switch": "#/components/schemas/device_switch"}, "propertyName": "type"}, "oneOf": [{"$ref": "#/components/schemas/device_ap"}, {"$ref": "#/components/schemas/device_switch"}, {"$ref": "#/components/schemas/device_gateway"}]}, "mist_nacedge": {"additionalProperties": false, "description": "Mist NAC Site Survivability settings for the site", "properties": {"auth_ttl": {"default": 604800, "description": "Cache of last auth result; in seconds", "maximum": 2592000, "minimum": 60, "type": "integer"}, "caching_site_ids": {"$ref": "#/components/schemas/mxcluster_nacedge_caching_site_ids", "description": "List of site UUIDs whose auth requests should be cached by NAC Edges assigned to this site"}, "default_dot1x_vlan": {"description": "Default vlan for all dot1x devices, if different from default_vlan", "examples": ["20"], "type": "string"}, "default_vlan": {"description": "Default vlan to assign for devices not in the cache", "examples": ["test_vlan"], "type": "string"}, "enabled": {"description": "Whether Mist Site Survivability is enabled for the site", "type": "boolean"}, "mxedge_hosts": {"$ref": "#/components/schemas/mist_nacedge_mxedge_hosts", "description": "NAC Edge hostnames used for the Site Survivability feature"}}, "type": "object"}, "mist_nacedge_mxedge_hosts": {"description": "List of NAC Edges used for the Site Survivability feature", "examples": [["mxedge1.local"]], "items": {"type": "string"}, "type": "array"}, "ml_overwrite": {"additionalProperties": {"$ref": "#/components/schemas/ml_overwrite_additional_properties"}, "description": "Location machine learning parameter overwrites keyed by client model", "type": "object"}, "ml_overwrite_additional_properties": {"additionalProperties": false, "description": "Location machine learning parameter overwrite values for one client model", "properties": {"int": {"description": "Location ML intercept value to use for the model", "type": "integer"}, "ple": {"description": "Path-loss estimate value to use for the location machine learning model", "type": "integer"}}, "type": "object"}, "modified_time": {"description": "When the object has been modified for the last time, in epoch", "format": "double", "readOnly": true, "type": "number"}, "module_stat_item_errors": {"description": "Used to report all error states the device node is running into. An error should always have `type` and `since` fields, and could have some other fields specific to that type.", "items": {"$ref": "#/components/schemas/module_stat_item_errors_items"}, "type": "array"}, "module_stat_item_errors_items": {"additionalProperties": false, "description": "Error condition reported for a device module", "properties": {"feature": {"description": "Affected feature associated with this module error condition", "examples": ["Mist-Management"], "type": "string"}, "minimum_version": {"description": "Minimum software version associated with this module error", "examples": ["128T-6.0.0-1"], "type": "string"}, "reason": {"description": "Human-readable reason for the module error condition", "type": "string"}, "since": {"description": "Epoch timestamp when the module error condition began", "examples": [1657497600], "type": "integer"}, "type": {"description": "Module error type code reported by the device", "examples": ["FW_UPGRADE_REQUIRED_BY_FEATURE"], "type": "string"}}, "required": ["since", "type"], "type": "object"}, "module_stat_item_fans": {"description": "Cooling fan status records for a device module", "items": {"$ref": "#/components/schemas/module_stat_item_fans_items"}, "type": "array", "uniqueItems": true}, "module_stat_item_fans_items": {"additionalProperties": false, "description": "Cooling fan telemetry for a device module", "properties": {"airflow": {"description": "Direction of airflow reported for the fan", "examples": ["out"], "type": "string"}, "name": {"description": "Fan label reported by the device", "examples": ["Fan 0"], "type": "string"}, "rpm": {"description": "Current fan speed in revolutions per minute", "type": "integer"}, "status": {"description": "Operational status reported for the fan", "examples": ["ok"], "type": "string"}}, "type": "object"}, "module_stat_item_network_resource": {"additionalProperties": false, "description": "Network resource usage counter reported by a device module", "properties": {"count": {"description": "Current utilization count for the network resource", "examples": [17], "minimum": 0, "type": "integer"}, "limit": {"description": "Maximum supported count for the network resource", "examples": [768000], "minimum": 0, "type": "integer"}, "type": {"description": "Network resource category, such as FIB or FLOW", "examples": ["FIB"], "type": "string"}}, "type": "object"}, "module_stat_item_network_resources": {"description": "Network resource usage counters reported by a device module", "items": {"$ref": "#/components/schemas/module_stat_item_network_resource"}, "type": "array"}, "module_stat_item_pics": {"description": "Physical Interface Card summaries for a device module", "items": {"$ref": "#/components/schemas/module_stat_item_pics_item"}, "type": "array"}, "module_stat_item_pics_item": {"additionalProperties": false, "description": "Physical Interface Card summary for a device module", "properties": {"index": {"description": "PIC index within the device module", "type": "integer"}, "model_number": {"description": "Model number reported for the PIC", "type": "string"}, "port_groups": {"$ref": "#/components/schemas/module_stat_item_pics_item_port_groups", "description": "Port groups provided by this PIC"}}, "type": "object"}, "module_stat_item_pics_item_port_groups": {"description": "Port group summaries for a PIC", "items": {"$ref": "#/components/schemas/module_stat_item_pics_item_port_groups_item"}, "type": "array"}, "module_stat_item_pics_item_port_groups_item": {"additionalProperties": false, "description": "Port group summary for a PIC", "properties": {"count": {"description": "Number of ports in this PIC port group", "type": "integer"}, "type": {"description": "Port media or interface type for this PIC port group", "type": "string"}}, "type": "object"}, "module_stat_item_poe": {"additionalProperties": false, "description": "Power over Ethernet telemetry for a device module", "properties": {"max_power": {"description": "Total PoE power budget available to the module, in watts", "examples": [250], "type": "number"}, "power_draw": {"description": "Current PoE power draw on the module, in watts", "examples": [120.3], "type": "number"}, "status": {"description": "Operational status of PoE on the module", "type": "string"}}, "type": "object"}, "module_stat_item_psus": {"description": "Power supply status records for a device module", "items": {"$ref": "#/components/schemas/module_stat_item_psus_item"}, "type": "array", "uniqueItems": true}, "module_stat_item_psus_item": {"additionalProperties": false, "description": "Power supply status for a device module", "properties": {"name": {"description": "Power supply label reported by the device", "examples": ["Power Supply 0"], "type": "string"}, "status": {"description": "Operational status reported for the power supply", "examples": ["ok"], "type": "string"}}, "type": "object"}, "module_stat_item_temperatures": {"description": "Temperature sensor readings for a device module", "items": {"$ref": "#/components/schemas/module_stat_item_temperatures_item"}, "type": "array", "uniqueItems": true}, "module_stat_item_temperatures_item": {"additionalProperties": false, "description": "Temperature sensor reading for a device module", "properties": {"celsius": {"description": "Temperature reading for the sensor, in degrees Celsius", "examples": [45], "type": "number"}, "name": {"description": "Temperature sensor label reported by the device", "examples": ["CPU"], "type": "string"}, "status": {"description": "Operational status reported for the temperature sensor", "examples": ["ok"], "type": "string"}}, "type": "object"}, "module_stat_item_vc_links": {"description": "Virtual chassis link records for a device module", "items": {"$ref": "#/components/schemas/module_stat_item_vc_links_item"}, "type": "array", "uniqueItems": true}, "module_stat_item_vc_links_item": {"additionalProperties": false, "description": "Virtual chassis link endpoint for a device module", "properties": {"neighbor_module_idx": {"description": "Index of the neighboring module connected through this virtual chassis link", "examples": [1], "type": "integer"}, "neighbor_port_id": {"description": "Port identifier on the neighboring module for this virtual chassis link", "examples": ["vcp-255/1/0"], "type": "string"}, "port_id": {"description": "Local port identifier for this virtual chassis link", "examples": ["vcp-255/1/0"], "type": "string"}}, "type": "object"}, "msp": {"description": "Managed service provider account", "properties": {"allow_mist": {"description": "Whether Mist support access is allowed for this MSP account", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the MSP account was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the MSP account"}, "logo_url": {"description": "For advanced tier (uMSPs) only", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the MSP account was last modified"}, "name": {"description": "Display name of the MSP account", "type": "string"}, "tier": {"$ref": "#/components/schemas/msp_tier", "description": "Service tier for the MSP account"}, "url": {"description": "For advanced tier (uMSPs) only", "type": "string"}}, "type": "object"}, "msp_id": {"description": "Managed service provider identifier", "examples": ["b9d42c2e-88ee-41f8-b798-f009ce7fe909"], "format": "uuid", "readOnly": true, "type": "string"}, "msp_license_action": {"description": "License operation request for an MSP account", "properties": {"amendment_id": {"description": "Required if `op`==`unamend`; identifies the license amendment to undo", "type": "string"}, "dst_org_id": {"description": "Required if `op`==`amend`; destination org ID that receives the amended license quantity", "format": "uuid", "type": "string"}, "notes": {"description": "Required if `op`==`annotate`; note text to attach to the license action", "type": "string"}, "op": {"$ref": "#/components/schemas/msp_license_action_operation", "description": "License operation to perform for this MSP request"}, "quantity": {"description": "Required if `op`==`amend`; license quantity to move to the destination org", "type": "number"}, "subscription_id": {"description": "Required if `op`==`annotate`; subscription ID for the license action", "minLength": 1, "type": "string"}}, "required": ["op"], "type": "object"}, "msp_license_action_operation": {"description": "enum: `amend`, `annotate`, `delete`, `unamend`", "enum": ["amend", "annotate", "delete", "unamend"], "minLength": 1, "type": "string"}, "msp_logo": {"description": "Payload for uploading an advanced-tier MSP logo", "properties": {"logo_url": {"description": "Public URL for the advanced-tier MSP logo image", "type": "string"}}, "type": "object"}, "msp_logs_count_distinct": {"default": "admin_name", "description": "enum: `admin_id`, `admin_name`, `message`, `org_id`", "enum": ["admin_id", "admin_name", "message", "org_id"], "type": "string"}, "msp_marvis_suggestions_count_distinct": {"default": "org_id", "description": "Distinct field used when counting MSP Marvis suggestions. enum: `org_id`, `status`", "enum": ["org_id", "status"], "type": "string"}, "msp_org_change": {"description": "Request to assign or unassign orgs for an MSP account", "properties": {"op": {"$ref": "#/components/schemas/msp_org_change_operation", "description": "Assignment operation to apply to the listed org IDs"}, "org_ids": {"$ref": "#/components/schemas/msp_org_change_org_ids", "description": "List of org IDs to assign to or unassign from the MSP account"}}, "required": ["op", "org_ids"], "type": "object"}, "msp_org_change_operation": {"description": "Assignment operation to apply to the listed org IDs. enum: `assign`, `unassign`", "enum": ["assign", "unassign"], "type": "string"}, "msp_org_change_org_ids": {"description": "List of org IDs to assign to or unassign from an MSP account", "items": {"type": "string"}, "type": "array"}, "msp_search_type": {"description": "Search result type returned by MSP organization search. enum: `orgs`", "enum": ["orgs"], "type": "string"}, "msp_tickets_count_distinct": {"default": "status", "description": "enum: `org_id`, `status`, `type`", "enum": ["org_id", "status", "type"], "type": "string"}, "msp_tier": {"default": "base", "description": "Service tier for the MSP account. enum: `advanced`, `base`", "enum": ["advanced", "base"], "type": "string"}, "mxcluster": {"description": "Mist Edge cluster that groups one or more Mist Edge devices for tunneling, RadSec, and related edge services", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the Mist Edge cluster was created"}, "for_site": {"description": "Whether this Mist Edge cluster is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Mist Edge cluster"}, "mist_das": {"$ref": "#/components/schemas/mxedge_das", "description": "Dynamic authorization service settings for the cluster"}, "mist_nac": {"$ref": "#/components/schemas/mxcluster_nac", "description": "NAC settings for the Mist Edge cluster"}, "mist_nacedge": {"$ref": "#/components/schemas/mxcluster_nacedge", "description": "NAC Edge survivability settings for the cluster; requires `mist_nac` to be enabled"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the Mist Edge cluster was last modified"}, "mxedge_mgmt": {"$ref": "#/components/schemas/mxedge_mgmt", "description": "Out-of-band management settings for Mist Edges in the cluster"}, "name": {"description": "Display name of the Mist Edge cluster", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the Mist Edge cluster"}, "proxy": {"$ref": "#/components/schemas/proxy", "description": "Network proxy settings used by Mist Edges in the cluster to communicate with the Mist Cloud"}, "radsec": {"$ref": "#/components/schemas/mxcluster_radsec", "description": "TLS RADIUS proxy settings for the Mist Edge cluster"}, "radsec_tls": {"$ref": "#/components/schemas/mxcluster_radsec_tls", "description": "TLS keypair settings for RadSec on the Mist Edge cluster"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site when the Mist Edge cluster is site-scoped"}, "tunterm_ap_subnets": {"$ref": "#/components/schemas/mxcluster_tunterm_ap_subnets", "description": "AP source subnets allowed to establish Mist tunnels"}, "tunterm_dhcpd_config": {"$ref": "#/components/schemas/tunterm_dhcpd_config", "description": "DHCP relay or server settings for tunneled VLANs"}, "tunterm_extra_routes": {"$ref": "#/components/schemas/mxcluster_tunterm_extra_routes", "description": "Extra routes for Mist Tunnel VLAN traffic"}, "tunterm_hosts": {"$ref": "#/components/schemas/mxcluster_tunterm_hosts", "description": "Hostnames or IP addresses used as Mist Tunnel peers"}, "tunterm_hosts_order": {"$ref": "#/components/schemas/mxcluster_tunterm_hosts_order", "description": "Explicit host ordering indexes used when ordered selection is configured"}, "tunterm_hosts_selection": {"$ref": "#/components/schemas/mxcluster_tunterm_hosts_selection", "description": "Selection strategy for ordering tunnel termination hosts"}, "tunterm_monitoring": {"$ref": "#/components/schemas/mxcluster_tunterm_monitoring", "description": "Monitoring checks for tunnel termination reachability"}, "tunterm_monitoring_disabled": {"description": "Whether tunnel termination monitoring is disabled for the cluster", "type": "boolean"}}, "type": "object"}, "mxcluster_nac": {"additionalProperties": false, "description": "Mist NAC RADIUS settings for a Mist Edge cluster. Used when the Mist Edge Cluster is used as a RADIUS Proxy between the local devices and the Mist NAC", "properties": {"acct_server_port": {"default": 1813, "description": "RADIUS accounting port used by Mist NAC on the cluster", "type": "integer"}, "auth_server_port": {"default": 1812, "description": "RADIUS authentication port used by Mist NAC on the cluster", "type": "integer"}, "client_ips": {"additionalProperties": {"$ref": "#/components/schemas/mxcluster_nac_client_ips"}, "description": "Property key is the RADIUS Client IP/Subnet.", "type": "object"}, "enabled": {"default": false, "description": "Whether Mist NAC is enabled on the cluster", "type": "boolean"}, "secret": {"description": "Shared RADIUS secret used by Mist NAC clients", "examples": ["testing123"], "type": "string"}}, "type": "object"}, "mxcluster_nac_client_ip": {"additionalProperties": false, "description": "Mist NAC client settings for a RADIUS client IP or subnet", "properties": {"require_message_authenticator": {"default": false, "description": "Whether to require Message-Authenticator in requests", "type": "boolean"}, "secret": {"description": "Client-specific shared secret, if different from the cluster default", "type": "string"}, "site_id": {"description": "Present only for third-party clients, identifies the associated site", "examples": ["00000000-0000-0000-1234-000000000000"], "format": "uuid", "type": "string"}, "vendor": {"$ref": "#/components/schemas/mxcluster_nac_client_vendor", "description": "RADIUS client vendor profile for this IP or subnet"}}, "type": "object"}, "mxcluster_nac_client_ips": {"additionalProperties": {"$ref": "#/components/schemas/mxcluster_nac_client_ip"}, "description": "Mist NAC client settings keyed by RADIUS client IP address or subnet", "type": "object"}, "mxcluster_nac_client_vendor": {"description": "convention to be followed is : \"-\", 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, aironet) etc. enum: `aruba`, `cisco-aironet`, `cisco-dnac`, `cisco-ios`, `cisco-meraki`, `brocade`, `generic`, `juniper`, `paloalto`", "enum": ["aruba", "cisco-aironet", "cisco-dnac", "cisco-ios", "cisco-meraki", "brocade", "generic", "juniper", "paloalto"], "examples": ["cisco-ios"], "type": "string"}, "mxcluster_nacedge": {"additionalProperties": false, "description": "NAC Edge survivability settings for a Mist Edge cluster. Requires `mist_nac` to be enabled on the cluster", "properties": {"auth_ttl": {"default": 604800, "description": "Cache TTL for last auth result in seconds", "maximum": 2592000, "minimum": 60, "type": "integer"}, "caching_site_ids": {"$ref": "#/components/schemas/mxcluster_nacedge_caching_site_ids", "description": "List of site UUIDs whose auth requests should be cached by NAC Edges in this cluster"}, "default_dot1x_vlan": {"description": "Default VLAN for all dot1x devices, if different from default_vlan", "examples": ["20"], "type": "string"}, "default_vlan": {"description": "Default VLAN to assign for devices not in the cache", "examples": ["testVlan"], "type": "string"}, "enabled": {"default": false, "description": "Whether NAC Edge survivability is enabled for this cluster", "type": "boolean"}, "nac_edge_hosts": {"$ref": "#/components/schemas/mxcluster_nacedge_nac_edge_hosts", "description": "NAC Edge hostnames used by APs for survivability authentication"}}, "type": "object"}, "mxcluster_nacedge_caching_site_ids": {"description": "Site UUIDs whose auth requests are cached by NAC Edges in the cluster", "examples": [["4ac1dcf4-9d8b-7910-ac87-6ad873648a5c", "7dc1acf4-9d8b-7910-ac87-6ad873648a5c"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "mxcluster_nacedge_nac_edge_hosts": {"description": "List of Mist NAC Edge hosts for AP survivability authentication", "examples": [["nac-west-1.corp.com", "nac-west-2.corp.com"]], "items": {"type": "string"}, "type": "array"}, "mxcluster_rad_auth_server_keywrap_format": {"default": "ascii", "description": "if used for Mist APs. enum: `ascii`, `hex`", "enum": ["ascii", "hex"], "type": ["string", "null"]}, "mxcluster_radsec": {"additionalProperties": false, "description": "RadSec proxy configuration for a Mist Edge cluster. Used when the Mist Edge Cluster is used as a RADIUS Proxy between the local devices and external RADIUS Server.", "properties": {"acct_servers": {"$ref": "#/components/schemas/mxcluster_radsec_acct_servers", "description": "RADIUS accounting servers used by the RadSec proxy"}, "auth_servers": {"$ref": "#/components/schemas/mxcluster_radsec_auth_servers", "description": "RADIUS authentication servers used by the RadSec proxy"}, "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"}, "nas_ip_source": {"$ref": "#/components/schemas/mxcluster_radsec_nas_ip_source", "description": "Source used to populate NAS-IP-Address and NAS-IPv6-Address attributes"}, "proxy_hosts": {"$ref": "#/components/schemas/mxcluster_radsec_proxy_hosts", "description": "AP-reachable hostnames or IP addresses advertised as RadSec TLS servers"}, "server_selection": {"$ref": "#/components/schemas/mxcluster_radsec_server_selection", "description": "RADIUS server selection strategy for RadSec failover"}, "src_ip_source": {"$ref": "#/components/schemas/mxcluster_radsec_src_ip_source", "description": "Connection source interface or address used when reaching RADIUS servers"}}, "type": "object"}, "mxcluster_radsec_acct_server": {"additionalProperties": false, "description": "RadSec accounting server settings for a Mist Edge cluster", "properties": {"host": {"description": "IP / hostname of RADIUS server", "type": "string"}, "port": {"default": 1813, "description": "Acct port of RADIUS server", "type": "integer"}, "secret": {"description": "Shared secret used with this RADIUS accounting server", "format": "password", "type": "string"}, "ssids": {"$ref": "#/components/schemas/mxcluster_radsec_acct_server_ssids", "description": "WLAN SSID filters that use this accounting server when matching is enabled"}}, "type": "object"}, "mxcluster_radsec_acct_server_ssids": {"description": "List of ssids that will use this server if match_ssid is true and match is found", "items": {"type": "string"}, "type": "array"}, "mxcluster_radsec_acct_servers": {"description": "List of RADIUS accounting servers, optional, order matters where the first one is treated as primary", "items": {"$ref": "#/components/schemas/mxcluster_radsec_acct_server"}, "type": "array", "uniqueItems": true}, "mxcluster_radsec_auth_server": {"additionalProperties": false, "description": "RadSec authentication server settings for a Mist Edge cluster", "properties": {"host": {"description": "IP / hostname of RADIUS server", "type": "string"}, "inband_status_check": {"default": false, "description": "Whether to enable inband status check", "type": "boolean"}, "inband_status_interval": {"default": 300, "description": "Inband status interval, in seconds", "minimum": 0, "type": "integer"}, "keywrap_enabled": {"description": "If used for Mist APs, enable keywrap algorithm. Default is false", "type": "boolean"}, "keywrap_format": {"$ref": "#/components/schemas/mxcluster_rad_auth_server_keywrap_format", "description": "Encoding format for Mist AP RADIUS keywrap keys"}, "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"}, "retry": {"default": 2, "description": "Number of authentication request retries before failing over", "type": "integer"}, "secret": {"description": "Shared secret used with this RADIUS authentication server", "format": "password", "type": "string"}, "ssids": {"$ref": "#/components/schemas/mxcluster_radsec_auth_server_ssids", "description": "WLAN SSID filters that use this authentication server when matching is enabled"}, "timeout": {"default": 5, "description": "Authentication request timeout, in seconds", "type": "integer"}}, "type": "object"}, "mxcluster_radsec_auth_server_ssids": {"description": "List of ssids that will use this server if match_ssid is true and match is found", "items": {"type": "string"}, "type": "array"}, "mxcluster_radsec_auth_servers": {"description": "List of RADIUS authentication servers, order matters where the first one is treated as primary", "items": {"$ref": "#/components/schemas/mxcluster_radsec_auth_server"}, "type": "array", "uniqueItems": true}, "mxcluster_radsec_nas_ip_source": {"default": "any", "description": "SSpecify NAS-IP-ADDRESS, NAS-IPv6-ADDRESS to use with auth_servers. enum: `any`, `oob`, `oob6`, `tunnel`, `tunnel6`", "enum": ["any", "oob", "oob6", "tunnel", "tunnel6"], "type": "string"}, "mxcluster_radsec_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"}, "mxcluster_radsec_server_selection": {"default": "ordered", "description": "When ordered, Mist Edge will prefer and go back to the first RADIUS server if possible. enum: `ordered`, `unordered`", "enum": ["ordered", "unordered"], "type": "string"}, "mxcluster_radsec_src_ip_source": {"default": "any", "description": "Specify IP address to connect to auth_servers and acct_servers. enum: `any`, `oob`, `oob6`, `tunnel`, `tunnel6`", "enum": ["any", "oob", "oob6", "tunnel", "tunnel6"], "type": "string"}, "mxcluster_radsec_tls": {"additionalProperties": false, "description": "TLS settings for RadSec on a Mist Edge cluster", "properties": {"keypair": {"description": "Name or identifier of the TLS keypair used by RadSec", "type": "string"}}, "type": "object"}, "mxcluster_tunterm_ap_subnets": {"description": "List of subnets where we allow AP to establish Mist Tunnels from", "items": {"type": "string"}, "type": "array"}, "mxcluster_tunterm_extra_route": {"additionalProperties": false, "description": "Extra route for Mist Tunneled VLAN traffic", "properties": {"via": {"description": "Next-hop IP address for this extra route", "type": "string"}}, "type": "object"}, "mxcluster_tunterm_extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/mxcluster_tunterm_extra_route"}, "description": "Extra routes for Mist Tunneled VLANs. Property key is a CIDR", "type": "object"}, "mxcluster_tunterm_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"}, "mxcluster_tunterm_hosts_order": {"description": "List of index of tunterm_hosts", "items": {"type": "integer"}, "type": "array"}, "mxcluster_tunterm_hosts_selection": {"default": "shuffle", "description": "Ordering of tunterm_hosts for Mist Edge within the same mxcluster. enum:\n * `shuffle`: the ordering of tunterm_hosts is randomized by the device''s MAC\n * `shuffle-by-site`: shuffle by site_id+tunnel_id (so when client connects to a specific Tunnel, it will go to the same (order of) mxedge, and we load-balancing between tunnels)\n * `ordered`: order decided by tunterm_hosts_order", "enum": ["ordered", "shuffle", "shuffle-by-site"], "type": "string"}, "mxcluster_tunterm_monitoring": {"description": "Tunnel termination monitoring checks for a Mist Edge cluster", "items": {"$ref": "#/components/schemas/tunterm_monitoring"}, "type": "array"}, "mxclusters": {"description": "List of Mist Edge clusters", "items": {"$ref": "#/components/schemas/mxcluster"}, "type": "array"}, "mxedge": {"description": "Mist Edge appliance configuration and registration state", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the Mist Edge record was created"}, "for_site": {"description": "Whether this Mist Edge is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Mist Edge"}, "mac": {"description": "Mist Edge MAC address", "examples": ["0200009fbe65"], "readOnly": true, "type": "string"}, "magic": {"description": "Registration claim code for the Mist Edge", "examples": ["L-NpT5gi-ADR8WTFd4EiQPY3cP5WdSoD"], "readOnly": true, "type": "string"}, "model": {"description": "Mist Edge hardware or virtual appliance model", "examples": ["ME-100"], "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the Mist Edge record was last modified"}, "mxagent_registered": {"description": "Whether the Mist Edge agent has registered with Mist cloud", "readOnly": true, "type": "boolean"}, "mxcluster_id": {"description": "Mist Edge cluster identifier that this appliance belongs to", "examples": ["572586b7-f97b-a22b-526c-8b97a3f609c4"], "format": "uuid", "type": ["string", "null"]}, "mxedge_mgmt": {"$ref": "#/components/schemas/mxedge_mgmt", "description": "Management credentials and settings for the Mist Edge"}, "name": {"description": "Display name of the Mist Edge", "examples": ["Guest"], "type": "string"}, "notes": {"description": "Free-form notes for the Mist Edge", "examples": ["note for mxedge"], "type": "string"}, "ntp_servers": {"$ref": "#/components/schemas/strings", "description": "Time synchronization servers used by the Mist Edge"}, "oob_ip_config": {"$ref": "#/components/schemas/mxedge_oob_ip_config", "description": "Out-of-band management IP configuration for the Mist Edge"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the Mist Edge"}, "proxy": {"$ref": "#/components/schemas/proxy", "description": "Network proxy settings used by the Mist Edge"}, "services": {"$ref": "#/components/schemas/mxedge_services", "description": "List of services enabled to run on the Mist Edge"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site when the Mist Edge is site-scoped"}, "tunterm_dhcpd_config": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_config", "description": "DHCP relay or server settings for Mist Tunneled VLANs"}, "tunterm_extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/mxedge_tunterm_extra_route"}, "description": "Extra routes for Mist Tunneled VLAN traffic; property key is a CIDR", "type": "object"}, "tunterm_igmp_snooping_config": {"$ref": "#/components/schemas/mxedge_tunterm_igmp_snooping_config", "description": "IGMP snooping settings for Mist Tunneled VLANs"}, "tunterm_ip_config": {"$ref": "#/components/schemas/mxedge_tunterm_ip_config", "description": "Tunnel termination IP configuration for the Mist Edge"}, "tunterm_monitoring": {"$ref": "#/components/schemas/mxedge_tunterm_monitoring", "description": "Monitoring checks for tunnel termination reachability"}, "tunterm_multicast_config": {"$ref": "#/components/schemas/mxedge_tunterm_multicast_config", "description": "Multicast forwarding settings for tunnel termination"}, "tunterm_other_ip_configs": {"additionalProperties": {"$ref": "#/components/schemas/mxedge_tunterm_other_ip_config"}, "description": "IPconfigs by VLAN ID. Property key is the VLAN ID", "type": "object"}, "tunterm_port_config": {"$ref": "#/components/schemas/tunterm_port_config", "description": "Port configuration for tunnel termination traffic"}, "tunterm_registered": {"description": "Whether the tunnel termination service has registered with Mist cloud", "readOnly": true, "type": "boolean"}, "tunterm_switch_config": {"$ref": "#/components/schemas/mxedge_tunterm_switch_configs", "description": "Switch VLAN settings for tunnel termination"}, "versions": {"$ref": "#/components/schemas/mxedge_versions", "description": "Service version information reported by the Mist Edge"}}, "required": ["model", "name"], "type": "object"}, "mxedge_das": {"additionalProperties": false, "description": "Cloud-assisted Dynamic Authorization Service settings for a Mist Edge cluster", "properties": {"coa_servers": {"$ref": "#/components/schemas/mxedge_das_coa_servers", "description": "Dynamic authorization clients allowed to send CoA or Disconnect-Message requests"}, "enabled": {"default": false, "description": "Whether cloud-assisted DAS is enabled for the Mist Edge cluster", "type": "boolean"}}, "type": "object"}, "mxedge_das_coa_server": {"additionalProperties": false, "description": "CoA or Disconnect-Message client allowed to contact Mist Edge DAS", "properties": {"disable_event_timestamp_check": {"default": false, "description": "Whether to disable Event-Timestamp Check", "type": "boolean"}, "enabled": {"description": "Whether this DAS CoA or Disconnect-Message client is enabled", "type": "boolean"}, "host": {"description": "Server host allowed to send CoA or Disconnect-Message requests to Mist Edges", "type": "string"}, "port": {"default": 3799, "description": "UDP port where Mist Edges accept CoA or Disconnect-Message requests from this host", "type": "integer"}, "require_message_authenticator": {"default": false, "description": "Whether to require Message-Authenticator in requests", "type": "boolean"}, "secret": {"description": "Shared secret used by this DAS CoA or Disconnect-Message client", "format": "password", "type": "string"}}, "type": "object"}, "mxedge_das_coa_servers": {"description": "Dynamic authorization clients configured to send CoA|DM to mist edges on port 3799", "items": {"$ref": "#/components/schemas/mxedge_das_coa_server"}, "type": "array"}, "mxedge_event": {"additionalProperties": false, "description": "Event reported for a Mist Edge appliance or service", "properties": {"audit_id": {"$ref": "#/components/schemas/id", "description": "Audit log identifier associated with this event, when available"}, "component": {"description": "Mist Edge component that reported the event, such as a power supply or fan", "examples": ["PS1", "Fan1"], "type": ["string", "null"]}, "device_id": {"description": "Identifier of the device associated with the event, when available", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "device_type": {"description": "Device type associated with the event", "type": "string"}, "from_version": {"description": "Service version before an upgrade-related event", "type": "string"}, "mac": {"description": "Mist Edge MAC address associated with the event", "type": "string"}, "mxcluster_id": {"description": "Mist Edge cluster identifier associated with the event", "examples": ["2815c917-58e7-472f-a190-bfd44fb58d05"], "type": "string"}, "mxedge_id": {"description": "Mist Edge identifier associated with the event", "examples": ["00000000-0000-0000-1000-020000dc585c"], "type": "string"}, "mxedge_name": {"description": "Display name of the Mist Edge associated with the event", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org where the event occurred"}, "package": {"description": "Software package associated with the event", "type": "string"}, "service": {"description": "Mist Edge service associated with the event", "examples": ["tunterm"], "type": "string"}, "severity": {"$ref": "#/components/schemas/event_severity", "description": "Event severity level reported for this Mist Edge event"}, "sys_info.usage": {"$ref": "#/components/schemas/mxedge_event_sys_info", "description": "System resource usage details associated with the event"}, "text": {"description": "Human-readable message describing the Mist Edge event", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the Mist Edge event occurred"}, "to_version": {"description": "Service version after an upgrade-related event", "type": "string"}, "type": {"description": "Mist Edge event type code", "examples": ["ME_SERVICE_STOPPED"], "type": "string"}}, "type": "object"}, "mxedge_event_sys_info": {"additionalProperties": false, "description": "System resource details for a Mist Edge event", "properties": {"resource": {"description": "System resource referenced by the event", "type": "string"}, "severity": {"$ref": "#/components/schemas/event_severity", "description": "Event severity for the system resource condition"}}, "type": "object"}, "mxedge_events": {"description": "Mist Edge event records", "items": {"$ref": "#/components/schemas/mxedge_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "mxedge_for_site": {"default": "any", "description": "enum: `any`, `false`, `true`", "enum": ["any", "false", "true"], "type": "string"}, "mxedge_mgmt": {"additionalProperties": false, "description": "Management settings for a Mist Edge appliance", "properties": {"config_auto_revert": {"default": false, "description": "Whether the Mist Edge automatically reverts configuration changes if connectivity is lost", "type": "boolean"}, "fips_enabled": {"default": false, "description": "Whether FIPS mode is enabled on the Mist Edge", "type": "boolean"}, "mist_password": {"description": "Password for the Mist service account on the Mist Edge", "examples": ["MIST_PASSWORD"], "type": "string"}, "oob_ip_type": {"$ref": "#/components/schemas/mxedge_mgmt_oob_ip_type", "description": "IPv4 address assignment mode for out-of-band management"}, "oob_ip_type6": {"$ref": "#/components/schemas/mxedge_mgmt_oob_ip_type6", "description": "IPv6 address assignment mode for out-of-band management"}, "root_password": {"description": "Root account password for the Mist Edge", "examples": ["ROOT_PASSWORD"], "format": "password", "type": "string"}}, "type": "object"}, "mxedge_mgmt_oob_ip_type": {"default": "dhcp", "description": "enum: `dhcp`, `disabled`, `static`", "enum": ["dhcp", "disabled", "static"], "type": "string"}, "mxedge_mgmt_oob_ip_type6": {"default": "autoconf", "description": "enum: `autoconf`, `dhcp`, `disabled`, `static`", "enum": ["autoconf", "dhcp", "disabled", "static"], "type": "string"}, "mxedge_oob_ip_config": {"additionalProperties": false, "description": "IP configuration for the Mist Edge out-of-band management interface", "properties": {"autoconf6": {"default": true, "description": "Whether IPv6 autoconfiguration is enabled on the out-of-band management interface", "type": "boolean"}, "dhcp6": {"default": true, "description": "Whether DHCPv6 is enabled on the out-of-band management interface", "type": "boolean"}, "dns": {"$ref": "#/components/schemas/mxedge_oob_ip_config_dns", "description": "Name server addresses for out-of-band management"}, "gateway": {"description": "If `type`=`static`, IPv4 default gateway for the out-of-band management interface", "examples": ["10.2.1.254"], "type": "string"}, "gateway6": {"description": "If `type6`=`static`, IPv6 default gateway for the out-of-band management interface", "examples": ["2601:1700:43c0:dc0::1"], "type": "string"}, "ip": {"description": "If `type`=`static`, IPv4 address for the out-of-band management interface", "examples": ["10.2.1.2"], "type": "string"}, "ip6": {"description": "If `type6`=`static`, IPv6 address for the out-of-band management interface", "examples": ["2601:1700:43c0:dc0:20c:29ff:fea7:93bc"], "type": "string"}, "netmask": {"description": "If `type`=`static`, IPv4 netmask for the out-of-band management interface", "examples": ["255.255.255.0"], "type": "string"}, "netmask6": {"description": "If `type6`=`static`, IPv6 prefix length for the out-of-band management interface", "examples": ["/64"], "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IPv4 address assignment mode for out-of-band management"}, "type6": {"$ref": "#/components/schemas/ip_type", "description": "IPv6 address assignment mode for out-of-band management"}}, "type": "object"}, "mxedge_oob_ip_config_dns": {"default": ["8.8.8.8", "8.8.4.4", "2001:4860:4860::8888", "2001:4860:4860::8844"], "description": "IPv4 ignored if `type`!=`static`, IPv6 ignored if `type6`!=`static`", "examples": [["8.8.8.8", "4.4.4.4", "2001:4860:4860::8888", "2001:4860:4860::8844"]], "items": {"type": "string"}, "type": "array"}, "mxedge_service_action": {"description": "enum: `restart`, `start`, `stop`", "enum": ["restart", "start", "stop"], "type": "string"}, "mxedge_service_name": {"description": "Mist Edge service name. enum: `mxagent`, `mxdas`, `mxnacedge`, `mxocproxy`, `radsecproxy`, `tunterm`", "enum": ["mxagent", "mxdas", "mxnacedge", "mxocproxy", "radsecproxy", "tunterm"], "type": "string"}, "mxedge_services": {"description": "List of services to run, tunterm only for now", "items": {"default": "tunterm", "type": "string"}, "type": "array"}, "mxedge_tunterm_dhcpd_config": {"additionalProperties": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_config_property"}, "description": "Global and per-VLAN DHCP relay settings for Mist Tunneled VLANs; property key is the VLAN ID", "properties": {"enabled": {"default": false, "description": "Whether DHCP relay is enabled for Mist Tunneled VLANs", "type": "boolean"}, "servers": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_config_servers", "description": "DHCP relay server addresses used when `type`==`relay`"}, "type": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_type", "description": "DHCP handling mode for the global tunnel termination config"}}, "type": "object"}, "mxedge_tunterm_dhcpd_config_property": {"additionalProperties": false, "description": "Per-VLAN DHCP relay settings for a Mist Tunneled VLAN", "properties": {"enabled": {"default": false, "description": "Whether DHCP relay is enabled for this tunneled VLAN", "type": "boolean"}, "servers": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_config_servers", "description": "DHCP relay server addresses used by this tunneled VLAN"}, "type": {"$ref": "#/components/schemas/mxedge_tunterm_dhcpd_config_type", "description": "DHCP handling mode for this tunneled VLAN"}}, "type": "object"}, "mxedge_tunterm_dhcpd_config_servers": {"description": "List of DHCP servers; required if `type`==`relay`", "items": {"type": "string"}, "type": "array"}, "mxedge_tunterm_dhcpd_config_type": {"default": "relay", "description": "DHCP handling mode for this tunneled VLAN. enum: `relay`", "enum": ["relay"], "type": "string"}, "mxedge_tunterm_dhcpd_type": {"default": "relay", "description": "DHCP handling mode for the global tunnel termination config. enum: `relay`", "enum": ["relay"], "type": "string"}, "mxedge_tunterm_extra_route": {"additionalProperties": false, "description": "Extra route for Mist Tunnel traffic on a Mist Edge", "properties": {"via": {"description": "Next-hop IP address for this Mist Tunnel extra route", "type": "string"}}, "type": "object"}, "mxedge_tunterm_igmp_snooping_config": {"additionalProperties": false, "description": "IGMP snooping settings for Mist Tunnel VLANs", "properties": {"enabled": {"anyOf": [{"type": "boolean"}, {"type": "string"}], "default": false, "description": "Whether IGMP snooping is enabled for the configured VLANs"}, "querier": {"$ref": "#/components/schemas/mxedge_tunterm_igmp_snooping_querier", "description": "IGMP querier settings used with tunnel termination snooping"}, "vlan_ids": {"$ref": "#/components/schemas/mxedge_tunterm_igmp_snooping_config_vlan_ids", "description": "List of VLAN IDs where tunnel termination performs IGMP snooping"}}, "type": "object"}, "mxedge_tunterm_igmp_snooping_config_vlan_ids": {"anyOf": [{"items": {"examples": [2], "maximum": 4096, "minimum": 0, "type": "integer"}, "type": "array"}, {"type": "string"}], "description": "List of VLAN IDs where tunnel termination performs IGMP snooping"}, "mxedge_tunterm_igmp_snooping_querier": {"additionalProperties": false, "description": "IGMP querier settings for tunnel termination", "properties": {"max_response_time": {"description": "Querier's query response interval, in tenths-of-seconds", "examples": [10], "type": "integer"}, "mtu": {"description": "The MTU we use (needed when forming large IGMPv3 Reports)", "examples": [1500], "type": "integer"}, "query_interval": {"description": "Querier's query interval, in seconds", "examples": [125], "type": "integer"}, "robustness": {"description": "IGMP querier robustness variable", "maximum": 7, "minimum": 1, "type": "integer"}, "version": {"description": "Querier's maximum protocol version", "examples": [3], "type": "integer"}}, "type": "object"}, "mxedge_tunterm_ip_config": {"additionalProperties": false, "description": "IP configuration for the Mist Tunnel interface", "properties": {"gateway": {"description": "IPv4 gateway for the Mist Tunnel interface", "examples": ["10.2.1.254"], "type": "string"}, "gateway6": {"description": "IPv6 gateway for the Mist Tunnel interface", "examples": ["2001:1010:1010:1010::1"], "type": "string"}, "ip": {"description": "Address on the untagged Mist Tunnel interface, in IPv4 format", "examples": ["10.2.1.1"], "type": "string"}, "ip6": {"description": "Address on the Mist Tunnel interface, in IPv6 format", "examples": ["2001:1010:1010:1010::2"], "type": "string"}, "netmask": {"description": "Subnet mask for the Mist Tunnel IPv4 address", "examples": ["255.255.255.0"], "type": "string"}, "netmask6": {"description": "Prefix length for the Mist Tunnel IPv6 address", "examples": ["/64"], "type": "string"}}, "required": ["gateway", "ip", "netmask"], "type": "object"}, "mxedge_tunterm_monitoring": {"description": "Tunnel termination monitoring checks for a Mist Edge", "items": {"$ref": "#/components/schemas/tunterm_monitoring"}, "type": "array"}, "mxedge_tunterm_multicast_config": {"additionalProperties": false, "description": "Multicast forwarding settings for tunnel termination", "properties": {"mdns": {"$ref": "#/components/schemas/mxedge_tunterm_multicast_mdns", "description": "Settings for mDNS forwarding on tunnel termination VLANs"}, "ssdp": {"$ref": "#/components/schemas/mxedge_tunterm_multicast_ssdp", "description": "Settings for SSDP forwarding on tunnel termination VLANs"}}, "type": "object"}, "mxedge_tunterm_multicast_config_mdns_vlan_ids": {"description": "VLAN IDs where mDNS forwarding is enabled", "examples": [[2, 3, 5]], "items": {"type": "integer"}, "type": "array"}, "mxedge_tunterm_multicast_config_ssdp_vlan_ids": {"description": "VLAN IDs where SSDP forwarding is enabled", "examples": [[2, 3, 5]], "items": {"type": "integer"}, "type": "array"}, "mxedge_tunterm_multicast_mdns": {"additionalProperties": false, "description": "mDNS forwarding settings for tunnel termination", "properties": {"enabled": {"description": "Whether mDNS forwarding is enabled for the configured VLANs", "type": "boolean"}, "vlan_ids": {"$ref": "#/components/schemas/strings", "description": "List of VLAN IDs where mDNS forwarding is enabled"}}, "type": "object"}, "mxedge_tunterm_multicast_ssdp": {"additionalProperties": false, "description": "SSDP forwarding settings for tunnel termination", "properties": {"enabled": {"description": "Whether SSDP forwarding is enabled for the configured VLANs", "type": "boolean"}, "vlan_ids": {"$ref": "#/components/schemas/strings", "description": "List of VLAN IDs where SSDP forwarding is enabled"}}, "type": "object"}, "mxedge_tunterm_other_ip_config": {"additionalProperties": false, "description": "Additional IP configuration for a Mist Tunnel VLAN interface", "properties": {"ip": {"description": "Address for the additional Mist Tunnel interface, in IPv4 format", "type": "string"}, "netmask": {"description": "Subnet mask for the additional Mist Tunnel IPv4 address", "type": "string"}}, "required": ["ip", "netmask"], "type": "object"}, "mxedge_tunterm_switch_config": {"additionalProperties": false, "description": "Switch VLAN settings for one tunnel termination port", "properties": {"port_vlan_id": {"description": "Untagged VLAN ID for this tunnel termination switch port", "type": "integer"}, "vlan_ids": {"$ref": "#/components/schemas/mxedge_tunterm_switch_config_vlan_ids", "description": "List of tagged VLAN IDs allowed on this tunnel termination switch port"}}, "type": "object"}, "mxedge_tunterm_switch_config_vlan_ids": {"description": "Tagged VLAN IDs allowed on a tunnel termination switch port", "items": {"$ref": "#/components/schemas/vlan_id_with_variable"}, "type": "array"}, "mxedge_tunterm_switch_configs": {"additionalProperties": {"$ref": "#/components/schemas/mxedge_tunterm_switch_config"}, "description": "Custom VLAN settings for tunnel termination switch ports, if desired; property key is the port identifier", "properties": {"enabled": {"description": "Whether custom tunnel termination switch VLAN settings are enabled", "type": "boolean"}}, "type": "object"}, "mxedge_upgrade_channel": {"default": "stable", "description": "upgrade channel to follow. enum: `alpha`, `beta`, `stable`", "enum": ["alpha", "beta", "stable"], "type": "string"}, "mxedge_upgrade_info": {"description": "Available Mist Edge upgrade versions by package", "items": {"$ref": "#/components/schemas/mxedge_upgrade_info_items"}, "type": "array", "uniqueItems": true}, "mxedge_upgrade_info_items": {"additionalProperties": false, "description": "Available upgrade version for a Mist Edge package", "properties": {"default": {"description": "Whether this version is the default upgrade target for the package", "type": "boolean"}, "distro": {"description": "Linux distribution codename for the package version", "type": "string"}, "package": {"description": "Mist Edge service package name", "type": "string"}, "version": {"description": "Available version for this package", "type": "string"}}, "required": ["package", "version"], "type": "object"}, "mxedge_upgrade_multi": {"description": "Request to schedule upgrades for one or more Mist Edges", "properties": {"allow_downgrades": {"$ref": "#/components/schemas/mxedge_upgrade_multi_allow_downgrades", "description": "Per-service downgrade permission settings for this upgrade"}, "canary_phases": {"$ref": "#/components/schemas/upgrade_device_canary_phases", "description": "Canary phase percentages for phased Mist Edge upgrades"}, "channel": {"$ref": "#/components/schemas/mxedge_upgrade_channel", "description": "Upgrade channel to use for qualified versions"}, "distro": {"description": "Linux distribution codename for an optional distro upgrade, such as bullseye or `next` to upgrade to the next distro version. Uses highest qualified versions", "type": "string"}, "max_failure_percentage": {"default": 5, "description": "Failure threshold before we stop the upgrade and mark it as failed", "type": "integer"}, "mxedge_ids": {"$ref": "#/components/schemas/mxedge_upgrade_multi_mxedge_ids", "description": "Mist Edge IDs included in the upgrade request"}, "start_time": {"description": "Upgrade start time in epoch seconds, default is now", "type": "integer"}, "strategy": {"$ref": "#/components/schemas/mxedge_upgrade_strategy", "description": "Upgrade rollout strategy for the selected Mist Edges"}, "versions": {"$ref": "#/components/schemas/mxedge_upgrade_version", "description": "Per-service target versions for the upgrade request"}}, "required": ["mxedge_ids"], "type": "object"}, "mxedge_upgrade_multi_allow_downgrades": {"additionalProperties": false, "description": "Whether downgrade is allowed when running version is higher than expected version for each service", "properties": {"mxagent": {"default": false, "description": "Whether downgrades are allowed for the mxagent service", "type": "boolean"}, "mxdas": {"default": false, "description": "Whether downgrades are allowed for the mxdas service", "type": "boolean"}, "mxocproxy": {"default": false, "description": "Whether downgrades are allowed for the mxocproxy service", "type": "boolean"}, "radsecproxy": {"default": false, "description": "Whether downgrades are allowed for the radsecproxy service", "type": "boolean"}, "tunterm": {"default": false, "description": "Whether downgrades are allowed for the tunterm service", "type": "boolean"}}, "type": "object"}, "mxedge_upgrade_multi_mxedge_ids": {"description": "List of Mist Edge IDs to upgrade. If not specified, it means all the org Mist Edges.", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "mxedge_upgrade_response_counts": {"additionalProperties": false, "description": "Counts of Mist Edge upgrades by current status", "properties": {"failed": {"description": "Number of Mist Edge upgrades that failed", "type": "integer"}, "queued": {"description": "Number of Mist Edge upgrades waiting to run", "type": "integer"}, "success": {"description": "Number of Mist Edge upgrades completed successfully", "type": "integer"}, "upgrading": {"description": "Number of Mist Edge upgrades currently in progress", "type": "integer"}}, "required": ["queued", "upgrading", "success", "failed"], "type": "object"}, "mxedge_upgrade_strategy": {"default": "big_bang", "description": "enum:\n * `big_bang`: upgrade all at once, no orchestration\n * `serial`: one at a time'\n * `canary`: upgrade in phases", "enum": ["canary", "big_bang", "serial"], "type": "string"}, "mxedge_upgrade_version": {"additionalProperties": false, "description": "Version to upgrade for each service, `current` / `latest` / `default` / specific version (e.g. `2.5.100`).\\nIgnored if distro upgrade, `tunterm`, `radsecproxy`, `mxagent`, `mxocproxy`, `mxdas` or `mxnacedge`", "properties": {"mxagent": {"default": "current", "description": "Target version for the mxagent service", "type": "string"}, "mxdas": {"default": "current", "description": "Target version for the mxdas service", "type": "string"}, "mxocproxy": {"default": "current", "description": "Target version for the mxocproxy service", "type": "string"}, "radsecproxy": {"default": "current", "description": "Target version for the radsecproxy service", "type": "string"}, "tunterm": {"default": "current", "description": "Target version for the tunterm service", "type": "string"}}, "required": ["mxagent", "tunterm"], "type": "object"}, "mxedge_versions": {"additionalProperties": false, "description": "Read-only Mist Edge service versions", "properties": {"mxagent": {"description": "Reported version of the mxagent service", "readOnly": true, "type": "string"}, "tunterm": {"description": "Reported version of the tunnel termination service", "readOnly": true, "type": "string"}}, "readOnly": true, "type": "object"}, "mxedge_vm_params": {"additionalProperties": false, "description": "Mist Edge VM parameters", "properties": {"model": {"description": "Mist Edge VM SKU or model to deploy", "examples": ["ME-VM"], "type": "string"}, "name": {"description": "User given name (optional)", "type": "string"}, "user_data": {"description": "Base64 encoded user data", "type": "string"}}, "type": "object"}, "mxedges": {"description": "List of Mist Edge appliances", "items": {"$ref": "#/components/schemas/mxedge"}, "type": "array"}, "mxedges_assign": {"description": "Request to assign Mist Edges to a site", "properties": {"mxedge_ids": {"$ref": "#/components/schemas/mxedges_assign_mxedge_ids", "description": "Mist Edge identifiers to assign to the site"}, "site_id": {"description": "Identifier of the site that receives the Mist Edges", "examples": ["43e9c864-a7e4-4310-8031-d9817d2c5a43"], "format": "uuid", "type": "string"}}, "required": ["site_id", "mxedge_ids"], "type": "object"}, "mxedges_assign_mxedge_ids": {"description": "Mist Edge identifiers to assign to a site", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "mxedges_unassign": {"description": "Request to unassign Mist Edges from their site", "properties": {"mxedge_ids": {"$ref": "#/components/schemas/mxedges_unassign_mxedge_ids", "description": "Mist Edge identifiers to unassign from their site"}}, "required": ["mxedge_ids"], "type": "object"}, "mxedges_unassign_mxedge_ids": {"description": "Mist Edge identifiers to unassign from their site", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "mxtunnel": {"description": "Mist Tunnel configuration for tunneling AP user VLANs to Mist Edge clusters", "properties": {"anchor_mxtunnel_ids": {"$ref": "#/components/schemas/mxtunnel_anchor_mxtunnel_ids", "description": "IDs of anchor Mist Tunnels used for edge-to-edge tunnel formation"}, "auto_preemption": {"$ref": "#/components/schemas/auto_preemption", "description": "Preemption behavior for restoring preferred tunnel peers after failover"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the Mist Tunnel was created"}, "for_site": {"description": "Whether this Mist Tunnel is scoped to a 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", "null"]}, "hello_retries": {"default": 7, "description": "Number of missed hello heartbeats before an AP tries another tunnel peer", "maximum": 30, "minimum": 2, "type": ["integer", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Mist Tunnel"}, "ipsec": {"$ref": "#/components/schemas/mxtunnel_ipsec", "description": "Security settings for IPsec support on this Mist Tunnel"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the Mist Tunnel was last modified"}, "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": {"$ref": "#/components/schemas/mxtunnel_mxcluster_ids", "description": "Mist Edge cluster IDs that host this Mist Tunnel"}, "name": {"description": "Display name of the Mist Tunnel", "type": ["string", "null"]}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the Mist Tunnel"}, "protocol": {"$ref": "#/components/schemas/mxtunnel_protocol", "description": "Encapsulation protocol used for the Mist Tunnel"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site when the Mist Tunnel is site-scoped"}, "vlan_ids": {"$ref": "#/components/schemas/mxtunnel_vlan_ids", "description": "List of VLAN IDs carried by this Mist Tunnel"}}, "type": "object"}, "mxtunnel_anchor_mxtunnel_ids": {"description": "List of anchor mxtunnels used for forming edge to edge tunnels", "items": {"examples": ["1e970fec-0a7a-4d73-a472-3ef3b6a456aa"], "format": "uuid", "type": "string"}, "type": "array"}, "mxtunnel_ipsec": {"additionalProperties": false, "description": "IPsec settings for a Mist Tunnel", "properties": {"dns_servers": {"$ref": "#/components/schemas/mxtunnel_ipsec_dns_servers", "description": "Name server addresses advertised for IPsec tunnel clients"}, "dns_suffix": {"$ref": "#/components/schemas/strings", "description": "Search suffixes advertised for IPsec tunnel clients"}, "enabled": {"description": "Whether IPsec support is enabled for this Mist Tunnel", "type": "boolean"}, "extra_routes": {"$ref": "#/components/schemas/mxtunnel_ipsec_extra_routes", "description": "Additional routes advertised for the IPsec tunnel"}, "split_tunnel": {"description": "Whether split tunneling is enabled for IPsec clients", "type": "boolean"}, "use_mxedge": {"description": "Whether IPsec termination uses Mist Edge", "type": "boolean"}}, "type": "object"}, "mxtunnel_ipsec_dns_servers": {"description": "Name server addresses advertised for IPsec tunnel clients", "items": {"type": "string"}, "type": ["array", "null"]}, "mxtunnel_ipsec_extra_route": {"additionalProperties": false, "description": "Extra route advertised for an IPsec tunnel", "properties": {"dest": {"description": "Route destination CIDR for the IPsec extra route", "type": "string"}, "next_hop": {"description": "Route next-hop IPv4 address for the IPsec extra route", "format": "ipv4", "type": "string"}}, "type": "object"}, "mxtunnel_ipsec_extra_routes": {"description": "Additional routes advertised for IPsec tunnel clients", "items": {"$ref": "#/components/schemas/mxtunnel_ipsec_extra_route"}, "type": "array"}, "mxtunnel_mxcluster_ids": {"description": "Mist Edge cluster IDs that host this Mist Tunnel", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "mxtunnel_protocol": {"default": "udp", "description": "Encapsulation protocol used for Mist Tunnel traffic. enum: `ip`, `udp`", "enum": ["ip", "udp"], "type": "string"}, "mxtunnel_vlan_ids": {"description": "List of VLAN IDs carried by this Mist Tunnel", "items": {"type": "integer"}, "type": "array"}, "mxtunnels": {"description": "List of Mist Tunnel configurations", "items": {"$ref": "#/components/schemas/mxtunnel"}, "type": "array"}, "nac_access_type": {"description": "Type of network access. enum: `wireless`, `wired`, `vty`", "enum": ["wireless", "wired", "vty"], "examples": ["wireless"], "type": "string"}, "nac_auth_type": {"description": "enum: `cert`, `device-auth`, `eap-teap`, `eap-tls`, `eap-ttls`, `idp`, `mab`, `eap-peap`", "enum": ["cert", "device-auth", "eap-teap", "eap-tls", "eap-ttls", "idp", "mab", "eap-peap"], "examples": ["eap-tls"], "type": "string"}, "nac_cert_cn": {"description": "When certificate based authentication is used, the CN from the certificates used for the specified duration", "examples": [["john@mycorp.net"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_cert_issuer": {"description": "When certificate based authentication is used, the Issuer from the certificates used for the specified duration", "examples": [["/C=US/ST=CA/CN=MyCorp"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_cert_serial": {"description": "When certificate based authentication is used, the Serial from the certificates used for the specified duration", "examples": [["2c63510123456789"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_cert_subject": {"description": "When certificate based authentication is used, the Subject from the certificates used for the specified duration", "examples": [["/C=US/O=MyCorp/CN=john@mycorp.net/emailAddress=john@mycorp.net"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_client_ap": {"description": "AP MAC addresses observed for the NAC client during the selected time range", "examples": [["5c5b35bf16bb", "d4dc090041b4"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_client_coa": {"additionalProperties": false, "description": "Change of Authorization request for a NAC client", "properties": {"coa_type": {"$ref": "#/components/schemas/nac_coa_type", "description": "Change of Authorization command to send to the NAC client"}}, "type": "object"}, "nac_client_coa_response": {"additionalProperties": false, "description": "Response returned after sending a NAC client CoA command", "properties": {"device_mac": {"description": "Target AP or switch MAC address for the CoA command", "type": "string"}, "device_type": {"$ref": "#/components/schemas/device_type", "description": "Type of network device that received the CoA command"}}, "type": "object"}, "nac_client_event": {"additionalProperties": false, "description": "NAC authentication event for a wired or wireless client", "properties": {"ap": {"description": "Access point MAC address for the client session", "examples": ["5c5b35513227"], "type": "string"}, "auth_type": {"$ref": "#/components/schemas/nac_auth_type", "description": "Authentication method used for the NAC event"}, "bssid": {"description": "Wireless BSSID used for the client session", "examples": ["5c5b355fafcc"], "type": "string"}, "client_type": {"$ref": "#/components/schemas/nac_access_type", "description": "Access type for the NAC client event"}, "device_mac": {"$ref": "#/components/schemas/nac_device_mac", "description": "Network device MAC address for the AP or switch handling the client session"}, "dryrun_nacrule_id": {"$ref": "#/components/schemas/nac_event_dryrun_nacrule_id", "description": "Dry-run NAC rule ID that matched the event, when present"}, "dryrun_nacrule_matched": {"$ref": "#/components/schemas/nac_event_dryrun_nacrule_matched", "description": "Whether a dry-run NAC rule matched the event"}, "idp_id": {"$ref": "#/components/schemas/nac_event_idp_id", "description": "Identity provider configuration ID used for the event"}, "idp_role": {"$ref": "#/components/schemas/nac_client_event_idp_role", "description": "Roles or groups returned by the identity provider"}, "idp_username": {"$ref": "#/components/schemas/nac_event_idp_username", "description": "Username presented to the identity provider"}, "mac": {"$ref": "#/components/schemas/nac_client_mac", "description": "Client MAC address for the NAC event"}, "mxedge_id": {"description": "Mist Edge ID used to connect to cloud", "type": "string"}, "nacrule_id": {"$ref": "#/components/schemas/nac_event_nacrule_id", "description": "NAC rule ID that matched the event"}, "nacrule_matched": {"$ref": "#/components/schemas/nac_event_nacrule_matched", "description": "Whether a NAC rule matched the event"}, "nas_vendor": {"$ref": "#/components/schemas/nac_event_nas_vendor", "description": "Vendor of the network access server"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org where the NAC event occurred"}, "port_id": {"$ref": "#/components/schemas/nac_event_port_id", "description": "Switch port identifier where the NAC event occurred"}, "port_type": {"$ref": "#/components/schemas/nac_access_type", "description": "Access type of the port where the NAC event occurred"}, "random_mac": {"$ref": "#/components/schemas/random_mac", "description": "Whether the client used a randomized MAC address"}, "resp_attrs": {"$ref": "#/components/schemas/resp_attrs", "description": "RADIUS response attributes returned by NAC to the NAS"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site where the NAC event occurred"}, "ssid": {"$ref": "#/components/schemas/nac_event_ssid", "description": "Wireless network SSID used for the NAC session"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the NAC event occurred"}, "type": {"$ref": "#/components/schemas/nac_event_type", "description": "NAC event type code"}, "usermac_label": {"$ref": "#/components/schemas/nac_client_event_usermac_labels", "description": "Labels derived from the usermac entry matched by the client"}, "username": {"$ref": "#/components/schemas/nac_event_username", "description": "Client-presented username for the NAC event"}, "vlan": {"$ref": "#/components/schemas/nac_event_vlan", "description": "Network VLAN name or ID returned for the NAC client"}, "vlan_source": {"description": "Source of the assigned VLAN, for example `nactag` or `usermac`", "examples": ["nactag"], "type": "string"}}, "type": "object"}, "nac_client_event_idp_role": {"description": "Identity provider roles or groups returned for a NAC client event", "examples": [["itsuperusers", "vip"]], "items": {"type": "string"}, "type": "array"}, "nac_client_event_usermac_labels": {"description": "Labels derived from usermac entry", "examples": [["bldg5", "printer"]], "items": {"type": "string"}, "type": "array"}, "nac_client_events": {"description": "List of NAC authentication events", "items": {"$ref": "#/components/schemas/nac_client_event"}, "type": "array"}, "nac_client_ip": {"description": "The known IP addresses used by the client for the specified duration", "examples": [["10.100.0.157"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_client_last_status": {"description": "Latest Authentication status of the client. enum: `denied`, `permitted`, `session_started`, `session_stopped`", "enum": ["permitted", "session_started", "session_stopped", "denied"], "examples": ["permitted"], "type": "string"}, "nac_client_mac": {"description": "Client MAC address observed in the NAC event", "examples": ["ac3eb179e535"], "readOnly": true, "type": "string"}, "nac_client_username": {"description": "List of usernames that have been assigned to the client", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_client_vlan": {"description": "List of vlans that have been assigned to the client", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_coa_type": {"default": "reauth", "description": "CoA type to send. enum: `reauth`, `disconnect`", "enum": ["reauth", "disconnect"], "type": "string"}, "nac_crl_file": {"additionalProperties": false, "description": "Metadata for an uploaded NAC CRL file", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the NAC CRL file was uploaded"}, "id": {"description": "Unique ID for the uploaded CRL file, used to reference the file", "examples": ["a1ca26f3-44dd-4833-9a7b-97bbb2ab5230"], "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the NAC CRL file metadata was last modified"}, "name": {"description": "Issuer name for the CRL file", "examples": ["SampleCertificateSigner"], "type": "string"}, "url": {"description": "Download URL for the uploaded NAC CRL file", "examples": ["http://url/to/crl_file"], "type": "string"}}, "type": "object"}, "nac_crl_files": {"description": "List of uploaded NAC CRL file metadata", "items": {"$ref": "#/components/schemas/nac_crl_file"}, "type": "array"}, "nac_device_mac": {"description": "MAC address of the AP or switch the client is connected to", "examples": ["60c78d8c7f6f"], "readOnly": true, "type": "string"}, "nac_event_dryrun_nacrule_id": {"description": "NAC Policy Dry Run Rule ID, if present and matched", "examples": ["32f27e7d-ff26-4a9b-b3d1-ff9bcb264012"], "format": "uuid", "readOnly": true, "type": "string"}, "nac_event_dryrun_nacrule_matched": {"description": "`true` if dryrun rule present and matched with priority, `false` if not matched or not present", "readOnly": true, "type": "boolean"}, "nac_event_idp_id": {"description": "If IDP is used, the id of the IDP configuration used", "examples": ["912ef72e-2239-4996-b81e-469e87a27cd6"], "format": "uuid", "readOnly": true, "type": "string"}, "nac_event_idp_username": {"description": "If IDP is used, the username presented to the Identity Provider", "examples": ["user@deaflyz.net"], "readOnly": true, "type": "string"}, "nac_event_nacrule_id": {"description": "NAC Policy Rule ID, if matched", "examples": ["32f27e7d-ff26-4a9b-b3d1-ff9bcb264c62"], "format": "uuid", "readOnly": true, "type": "string"}, "nac_event_nacrule_matched": {"description": "NAC Policy Rule Matched", "readOnly": true, "type": "boolean"}, "nac_event_nas_vendor": {"description": "Vendor name of the NAS", "examples": ["juniper-mist"], "readOnly": true, "type": "string"}, "nac_event_port_id": {"description": "Port ID where the NAC client event occurred", "examples": ["ge-0/0/17.0"], "readOnly": true, "type": "string"}, "nac_event_ssid": {"description": "SSIDs the client was connecting to", "examples": ["MyCorp-NAC"], "readOnly": true, "type": "string"}, "nac_event_type": {"description": "Event type, e.g. NAC_CLIENT_PERMIT. Use the [List NAC Events Definitions](/#operations/listNacEventsDefinitions) endpoint to get the full list of available values.", "examples": ["NAC_CLIENT_PERMIT"], "readOnly": true, "type": "string"}, "nac_event_username": {"description": "username assigned to the client", "readOnly": true, "type": "string"}, "nac_event_vlan": {"description": "vlan that assigned to the client", "readOnly": true, "type": "string"}, "nac_nacrule_id": {"description": "IDs of the NAC Rules used to authenticate the client for the specified duration", "examples": [["603b62db-d839-4152-9f7f-f2578443de8d"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_nacrule_name": {"description": "Name of the NAC Rules used to authenticate the client for the specified duration", "examples": [["Wireless Cert Auth"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_nas_vendor": {"description": "Vendor name of the NAS for the specified duration", "examples": [["juniper-mist"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_port_id": {"description": "Port-ids the client was connected to for the specified duration", "examples": [["ge-0/0/17.0"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "nac_portal": {"description": "NAC portal configuration for 802.1X onboarding, guest access, or Marvis client certificate provisioning", "properties": {"access_type": {"$ref": "#/components/schemas/nac_portal_access_type", "description": "If `type`==`marvis_client`, whether onboarding applies to wireless clients or both wireless and wired clients"}, "additional_cacerts": {"$ref": "#/components/schemas/nac_portal_additional_cacerts", "description": "Additional CA certificates trusted during NAC portal certificate onboarding"}, "additional_nac_server_name": {"description": "Optional list of additional NAC server names", "examples": [["nac1.corp.com", "nac2.corp.com"]], "items": {"type": "string"}, "type": "array"}, "bg_image_url": {"description": "URL of the NAC portal background image", "type": "string"}, "cert_expire_time": {"description": "Validity duration for portal-issued client certificates, in days", "examples": [365], "type": "integer"}, "eap_type": {"$ref": "#/components/schemas/nac_portal_eap_type", "description": "EAP mode used when onboarding wireless clients through the NAC portal"}, "enable_telemetry": {"description": "Model, version, fingering, events (connecting, disconnect, roaming), which ap", "type": "boolean"}, "expiry_notification_time": {"description": "Number of days before certificate expiration to start sending reminder notifications", "type": "integer"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the NAC portal"}, "name": {"description": "Human-readable name of the NAC portal", "examples": ["get-wifi"], "type": "string"}, "notify_expiry": {"description": "Whether to send reminder notifications before portal-issued certificates expire", "type": "boolean"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this NAC portal"}, "portal": {"$ref": "#/components/schemas/nac_portal_guest_portal", "description": "Guest portal settings used when `type`==`guest_portal`"}, "portal_authorize_jwt_secret": {"description": "If `type`==`guest_portal` and `auth`==`external`, the `portal_authorize_jwt_secret` will be generated", "examples": ["1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"], "readOnly": true, "type": "string"}, "portal_authorize_url": {"description": "If `type`==`guest_portal` and `auth`==`external`, the `portal_authorize_url` will be generated", "examples": ["https://guest-mistnac.mist.com/callback/be22bba7-8e22-e1cf-5185-b880816fe2cf/authorize"], "readOnly": true, "type": "string"}, "portal_sso_url": {"description": "If `type`==`guest_portal` or `type`==`guest_admin` and ans SSO is enabled, the `portal_sso_url` will be generated (which needs to be configured in your IDP", "examples": ["https://guest-mistnac.mist.com/callback/be22bba7-8e22-e1cf-5185-b880816fe2cf/acs"], "readOnly": true, "type": "string"}, "ssid": {"description": "Wireless SSID associated with the NAC portal", "examples": ["Corp"], "type": "string"}, "sso": {"$ref": "#/components/schemas/nac_portal_sso", "description": "SAML SSO settings for NAC portal authentication and role mapping"}, "template_url": {"description": "URL for the NAC portal template customization resource", "type": "string"}, "thumbnail_url": {"description": "Read-only URL of the NAC portal background image thumbnail", "readOnly": true, "type": "string"}, "tos": {"description": "Terms of service text shown in the NAC portal", "type": "string"}, "type": {"$ref": "#/components/schemas/nac_portal_type", "description": "NAC portal mode, such as guest admin, guest portal, or Marvis client onboarding"}, "ui_url": {"description": "If `auth`==`guest_admin`, the URL to the guest admin portal", "examples": ["https://guest-mistnac.mist.com/admin/51908ea7-dea7-4581-a578-f7320c4d5216/login"], "readOnly": true, "type": "string"}}, "type": "object"}, "nac_portal_access_type": {"default": "wireless", "description": "if `type`==`marvis_client`. enum: `wireless`, `wireless+wired`", "enum": ["wireless", "wireless+wired"], "type": "string"}, "nac_portal_additional_cacerts": {"description": "Optional list of additional CA certificates to be used", "examples": [["-----BEGIN CERTIFICATE-----\\\\n-----END CERTIFICATE-----"]], "items": {"type": "string"}, "type": "array"}, "nac_portal_eap_type": {"default": "wpa2", "description": "EAP mode used when onboarding wireless clients through the NAC portal. enum: `wpa2`, `wpa3`", "enum": ["wpa2", "wpa3"], "type": "string"}, "nac_portal_guest_portal": {"additionalProperties": false, "description": "Guest portal configuration when `type`==`guest_portal`. If \n * `auth`==`none`, the user is presented with a terms of service and can click and continue.\n * `auth`==`external`, the user is redirected to an external URL for authentication.\n * `auth`==`multi`, the user is presented with a choice of authentication methods:\n - social logins: facebook / google / amazon / microsoft / azure\n - sponsor\n - sms: supported provider: twillio\n - email\n - sso\n - userpass: pre created guest list\n", "properties": {"auth": {"$ref": "#/components/schemas/nac_portal_guest_portal_auth", "description": "Mode presented by the NAC guest portal for user authentication"}, "expire": {"description": "If `auth`==`none` or `auth`==`multi`, whether to expire the guest after a certain time", "examples": [1440], "type": "integer"}, "external_portal_url": {"description": "If `auth`==`external`, the URL to redirect the user to for authentication", "examples": ["https://yourorg.com/external-guest-portal"], "type": "string"}, "force_reconnect": {"description": "Disconnect client (workaround for reauth issues)", "type": "boolean"}, "forward": {"description": "If `auth`==`none` or `auth`==`multi`, whether to forward the user to the guest portal after authentication", "examples": [true], "type": "boolean"}, "forward_url": {"description": "If `auth`==`none` or `auth`==`multi`, URL to forward the user to after authentication", "examples": ["https://yourorg.com/guest-portal-redirect"], "type": "string"}, "max_num_devices": {"default": 0, "description": "Maximum number of clients allowed per guest. 0 (default, unlimited), 1-100 range", "examples": [10], "maximum": 100, "minimum": 0, "type": "integer"}, "privacy": {"description": "If `auth`==`none` or `auth`==`multi`, whether to show the privacy policy", "examples": [true], "type": "boolean"}}, "type": "object"}, "nac_portal_guest_portal_auth": {"description": "Guest portal authentication type. enum: `external`, `multi`, `none`", "enum": ["external", "multi", "none"], "type": "string"}, "nac_portal_sso": {"additionalProperties": false, "description": "SAML SSO configuration for a NAC portal", "properties": {"idp_cert": {"description": "Identity provider certificate used to verify signed SAML responses", "examples": ["-----BEGIN CERTIFICATE-----\\n\\n-----END CERTIFICATE-----"], "type": "string"}, "idp_sign_algo": {"$ref": "#/components/schemas/nac_portal_sso_idp_sign_algo", "description": "Signing algorithm expected for SAML assertions from the identity provider"}, "idp_sso_url": {"description": "Identity provider Single Sign-On URL for SAML authentication", "examples": ["https://yourorg.onelogin.com/trust/saml2/http-post/sso/138130"], "type": "string"}, "issuer": {"description": "Identity provider issuer URL for SAML authentication", "examples": ["https://app.onelogin.com/saml/metadata/138130"], "type": "string"}, "nameid_format": {"description": "SAML NameID format expected from the identity provider", "examples": ["email"], "type": "string"}, "sso_role_matching": {"$ref": "#/components/schemas/nac_portal_sso_role_matchings", "description": "Rules that map SSO role values from the identity provider to NAC portal roles"}, "use_sso_role_for_cert": {"description": "Whether to include the matched SSO role in the issued certificate subject for later policy matching", "type": "boolean"}}, "type": "object"}, "nac_portal_sso_idp_sign_algo": {"default": "sha256", "description": "Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`.", "enum": ["sha1", "sha256", "sha384", "sha512"], "type": "string"}, "nac_portal_sso_role_matching": {"additionalProperties": false, "description": "Mapping rule from an SSO role claim value to a NAC portal role", "properties": {"assigned": {"description": "NAC portal role assigned when the SSO role value matches", "examples": ["user"], "type": "string"}, "match": {"description": "SSO role value to match from the SAML assertion", "examples": ["Student"], "type": "string"}}, "type": "object"}, "nac_portal_sso_role_matchings": {"description": "List of SSO role mapping rules for the NAC portal", "items": {"$ref": "#/components/schemas/nac_portal_sso_role_matching"}, "type": "array"}, "nac_portal_template": {"description": "Visual template settings for a NAC portal", "properties": {"alignment": {"$ref": "#/components/schemas/portal_template_alignment", "description": "Text and content alignment for the NAC portal page"}, "color": {"default": "#1074bc", "description": "Primary color used by the NAC portal template", "type": "string"}, "logo": {"description": "Custom logo custom logo with \"data:image/png;base64,\" format. default null, uses Juniper Mist Logo.", "type": "string"}, "poweredBy": {"default": false, "description": "Whether to hide \"Powered by Juniper Mist\" and email footers", "type": "boolean"}}, "type": "object"}, "nac_portal_type": {"description": "enum: \n * `guest_admin`: NAC-Based Portal Admin for Pre Created Guest Authentication\n * `guest_portal`: NAC-Based Guest Portal\n * `marvis_client`\n", "enum": ["guest_admin", "guest_portal", "marvis_client"], "type": "string"}, "nac_portals": {"description": "List of NAC portal configurations", "items": {"$ref": "#/components/schemas/nac_portal"}, "type": "array"}, "nac_rule": {"description": "NAC authentication policy rule that matches request criteria and applies an allow or block action", "properties": {"action": {"$ref": "#/components/schemas/nac_rule_action", "description": "Allow or block decision applied when the NAC rule matches"}, "apply_tags": {"$ref": "#/components/schemas/nac_rule_apply_tags", "description": "NAC tag IDs to include in the Access-Accept when the rule allows access"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the NAC rule was created"}, "dry_run": {"description": "Whether the NAC rule is in dry-run mode, where matches are logged but the action is not enforced", "type": "boolean"}, "enabled": {"default": true, "description": "Whether the NAC rule is evaluated during policy matching", "type": "boolean"}, "guest_auth_state": {"$ref": "#/components/schemas/nac_rule_guest_auth_state", "description": "Guest portal authorization state condition for the rule"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the NAC rule"}, "matching": {"$ref": "#/components/schemas/nac_rule_matching", "description": "Criteria that must match for the NAC rule to apply"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the NAC rule was last modified"}, "name": {"description": "Human-readable name of the NAC rule", "type": "string"}, "not_matching": {"$ref": "#/components/schemas/nac_rule_matching", "description": "Criteria that must not match for the NAC rule to apply"}, "order": {"description": "Rule priority; lower values are evaluated with higher priority", "examples": [1], "minimum": 0, "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Org identifier that owns the NAC rule"}}, "required": ["action", "name"], "type": "object"}, "nac_rule_action": {"description": "Allow or block decision applied when the NAC rule matches. enum: `allow`, `block`", "enum": ["allow", "block"], "examples": ["allow"], "type": "string"}, "nac_rule_apply_tags": {"description": "All optional, this goes into Access-Accept", "examples": [["c049dfcd-0c73-5014-1c64-062e9903f1e5"]], "items": {"type": "string"}, "type": "array"}, "nac_rule_guest_auth_state": {"description": "Guest portal authorization state. enum: `authorized`, `unknown`", "enum": ["authorized", "unknown"], "examples": ["authorized"], "type": "string"}, "nac_rule_matching": {"additionalProperties": false, "description": "Criteria used to include or exclude a NAC authentication request from a rule", "properties": {"auth_type": {"$ref": "#/components/schemas/nac_auth_type", "description": "NAC authentication method that must match the request"}, "family": {"$ref": "#/components/schemas/nac_rule_matching_family", "description": "Client device family values that must match the request"}, "mfg": {"$ref": "#/components/schemas/nac_rule_matching_model", "description": "Client device manufacturer values that must match the request"}, "model": {"$ref": "#/components/schemas/nac_rule_matching_mfg", "description": "Client device model values that must match the request"}, "nactags": {"$ref": "#/components/schemas/nac_rule_matching_nactags", "description": "NAC tag IDs whose match criteria must be satisfied by the request"}, "os_type": {"$ref": "#/components/schemas/nac_rule_matching_os_type", "description": "Client OS type values that must match the request"}, "port_types": {"$ref": "#/components/schemas/nac_rule_matching_port_types", "description": "Wired or wireless access types that must match the request"}, "site_ids": {"$ref": "#/components/schemas/nac_rule_matching_site_ids", "description": "Site IDs where the rule criteria apply"}, "sitegroup_ids": {"$ref": "#/components/schemas/nac_rule_matching_sitegroup_ids", "description": "Site group IDs where the rule criteria apply"}, "vendor": {"$ref": "#/components/schemas/nac_rule_matching_vendor", "description": "Client device vendor values that must match the request"}}, "type": "object"}, "nac_rule_matching_family": {"description": "List of client device families to match. Refer to [List Fingerprint Types]](/#operations/listFingerprintTypes) for allowed family values", "items": {"type": "string"}, "type": "array"}, "nac_rule_matching_mfg": {"description": "List of client device manufacturers to match. Refer to [List Fingerprint Types]](/#operations/listFingerprintTypes) for allowed mfg values", "items": {"type": "string"}, "type": "array"}, "nac_rule_matching_model": {"description": "List of client device models to match. Refer to [List Fingerprint Types]](/#operations/listFingerprintTypes) for allowed model values", "items": {"type": "string"}, "type": "array"}, "nac_rule_matching_nactags": {"description": "NAC tag identifiers used as rule-matching criteria", "examples": [["041d5d36-716c-4cfb-4988-3857c6aa14a2", "a809a97f-d599-f812-eb8c-c3f84aabf6ba"]], "items": {"type": "string"}, "type": "array"}, "nac_rule_matching_os_type": {"description": "List of client device os types to match. Refer to [List Fingerprint Types]](/#operations/listFingerprintTypes) for allowed os_type values", "items": {"type": "string"}, "type": "array"}, "nac_rule_matching_port_type": {"description": "Port attachment type matched by a NAC rule. enum: `wired`, `wireless`", "enum": ["wired", "wireless"], "type": "string"}, "nac_rule_matching_port_types": {"description": "Wired or wireless access types used as NAC rule-matching criteria", "examples": [["wired"]], "items": {"$ref": "#/components/schemas/nac_rule_matching_port_type"}, "type": "array"}, "nac_rule_matching_site_ids": {"description": "List of site ids to match", "examples": [["bb19fc3e-4124-4b57-80d9-c3f6edce47c4", "bb19fc3e-6564-4b57-80d9-c3f6edce47c1"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "nac_rule_matching_sitegroup_ids": {"description": "List of sitegroup ids to match", "examples": [["bb19fc3e-4124-4b57-80d9-c3f6edce47c4", "bb19fc3e-6564-4b57-80d9-c3f6edce47c1"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "nac_rule_matching_vendor": {"description": "List of vendors to match", "items": {"examples": ["cisc"], "type": "string"}, "type": "array"}, "nac_rules": {"description": "List of NAC authentication policy rules", "items": {"$ref": "#/components/schemas/nac_rule"}, "type": "array"}, "nac_ssid": {"description": "SSIDs the client was connected to for the specified duration", "examples": [["MyCorp-NAC"]], "items": {"type": "string"}, "type": "array"}, "nac_tag": {"description": "NAC tag used as a rule-matching classifier or as a result attribute for allowed users", "properties": {"allow_usermac_override": {"default": false, "description": "Whether usermac result values can override this NAC tag when the result type is also supported by usermac", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the NAC tag was created"}, "egress_vlan_names": {"$ref": "#/components/schemas/nac_tag_egress_vlan_names", "description": "If `type`==`egress_vlan_names`, list of egress VLAN names returned by the NAC rule"}, "gbp_tag": {"$ref": "#/components/schemas/nac_tag_gbp_tag", "description": "If `type`==`gbp_tag`, GBP tag value returned by the NAC rule"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the NAC tag"}, "match": {"$ref": "#/components/schemas/nac_tag_match", "description": "If `type`==`match`, client or authentication attribute used for rule matching"}, "match_all": {"default": false, "description": "This field is applicable only when `type`==`match`\n * `false`: means it is sufficient to match any of the values (i.e., match-any behavior)\n * `true`: means all values should be matched (i.e., match-all behavior)\n\n\nCurrently it makes sense to set this field to `true` only if the `match`==`idp_role`, `match`==`usermac_label` and `edr_status`", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the NAC tag was last modified"}, "nacportal_id": {"$ref": "#/components/schemas/redirect_nacportal_id", "description": "If `type`==`redirect_nacportal_id`, NAC portal ID used for client redirection"}, "name": {"description": "Human-readable name of the NAC tag", "minLength": 1, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Org identifier that owns the NAC tag"}, "radius_attrs": {"$ref": "#/components/schemas/nac_tag_radius_attrs", "description": "If `type`==`radius_attrs`, standard RADIUS attributes returned by the NAC rule"}, "radius_group": {"description": "If `type`==`radius_group`, RADIUS group value returned by the NAC rule", "type": "string"}, "radius_vendor_attrs": {"$ref": "#/components/schemas/nac_tag_radius_vendor_attrs", "description": "If `type`==`radius_vendor_attrs`, vendor-specific RADIUS attributes returned by the NAC rule"}, "session_timeout": {"description": "If `type`==`session_timeout`, session timeout returned by the NAC rule, in seconds", "examples": [86000], "type": "integer"}, "type": {"$ref": "#/components/schemas/nac_tag_type", "description": "NAC tag type that determines whether the tag is a matcher or a result attribute"}, "username_attr": {"$ref": "#/components/schemas/nac_tag_username_attr", "description": "If `type`==`username_attr`, attribute used to derive the username returned by the NAC rule"}, "values": {"$ref": "#/components/schemas/nac_tag_values", "description": "If `type`==`match`, attribute values used by the NAC tag matcher"}, "vlan": {"description": "If `type`==`vlan`, VLAN name or ID returned by the NAC rule", "type": "string"}}, "required": ["name", "type"], "type": "object"}, "nac_tag_egress_vlan_names": {"description": "If `type`==`egress_vlan_names`, list of egress vlans to return", "examples": [["1vlan-30", "1vlan-20", "2-vlan10"]], "items": {"type": "string"}, "type": "array"}, "nac_tag_gbp_tag": {"anyOf": [{"maximum": 65535, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "If `type`==`gbp_tag`, GBP tag value returned by the NAC rule"}, "nac_tag_match": {"description": "if `type`==`match`. enum: `cert_cn`, `cert_eku`, `cert_issuer`, `cert_san`, `cert_serial`, `cert_sub`, `cert_template`, `client_mac`, `edr_status`, `gbp_tag`, `hostname`, `idp_role`, `ingress_vlan`, `mdm_status`, `nas_ip`, `radius_group`, `realm`, `ssid`, `user_name`, `usermac_label`", "enum": ["cert_cn", "cert_eku", "cert_issuer", "cert_san", "cert_serial", "cert_sub", "cert_template", "client_mac", "edr_status", "gbp_tag", "hostname", "idp_role", "ingress_vlan", "mdm_status", "nas_ip", "radius_group", "realm", "ssid", "user_name", "usermac_label"], "minLength": 1, "type": "string"}, "nac_tag_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.", "examples": [["Idle-Timeout=600", "Termination-Action=RADIUS-Request"]], "items": {"type": "string"}, "type": "array"}, "nac_tag_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.", "examples": [["PaloAlto-Admin-Role=superuser", "PaloAlto-Panorama-Admin-Role=administrator"]], "items": {"type": "string"}, "type": "array"}, "nac_tag_type": {"description": "enum: `egress_vlan_names`, `gbp_tag`, `match`, `radius_attrs`, `radius_group`, `radius_vendor_attrs`, `redirect_nacportal_id`, `session_timeout`, `username_attr`, `vlan`", "enum": ["egress_vlan_names", "gbp_tag", "match", "radius_attrs", "radius_group", "radius_vendor_attrs", "redirect_nacportal_id", "session_timeout", "username_attr", "vlan"], "minLength": 1, "type": "string"}, "nac_tag_username_attr": {"description": "enum: `automatic`, `cn`, `dns`, `email`, `upn`", "enum": ["automatic", "cn", "dns", "email", "upn"], "type": "string"}, "nac_tag_values": {"description": "If `type`==`match`, attribute values used by the NAC tag matcher", "items": {"type": "string"}, "type": "array"}, "nac_tags": {"description": "List of NAC tags", "items": {"$ref": "#/components/schemas/nac_tag"}, "type": "array"}, "name_string": {"description": "Request body containing a name value", "properties": {"name": {"description": "Value to create or update as the target resource name", "type": "string"}}, "type": "object"}, "network": {"description": "Organization-level Layer 3 network definition that can be merged into site settings and used for service routes. Networks are used to define the service routes in the Gateway settings or templates", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the network was created"}, "disallow_mist_services": {"default": false, "description": "Whether to disallow Mist Devices in the network", "type": "boolean"}, "gateway": {"description": "IPv4 gateway address for this network", "examples": ["192.168.70.1"], "format": "ipv4", "type": "string"}, "gateway6": {"description": "IPv6 gateway address for this network", "examples": ["fdad:b0bc:f29e::1"], "format": "ipv6", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the network"}, "internal_access": {"$ref": "#/components/schemas/network_internal_access", "description": "Internal access settings for this network"}, "internet_access": {"$ref": "#/components/schemas/network_internet_access", "description": "Direct internet access and NAT settings for this network"}, "isolation": {"description": "Whether to allow clients in the network to talk to each other", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the network was last modified"}, "multicast": {"$ref": "#/components/schemas/network_multicast", "description": "Settings for multicast routing on this network"}, "name": {"description": "Display name of the organization network", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this network"}, "routed_for_networks": {"$ref": "#/components/schemas/network_routed_for_networks", "description": "Other network names this network can route to, for example through BGP, OSPF or static routes"}, "subnet": {"description": "IPv4 subnet CIDR for this network", "examples": ["192.168.70.0/24"], "type": "string"}, "subnet6": {"description": "IPv6 subnet CIDR for this network", "examples": ["fdad:b0bc:f29e::/32"], "type": "string"}, "tenants": {"$ref": "#/components/schemas/network_tenants", "description": "Tenant address mappings associated with this network"}, "vlan_id": {"$ref": "#/components/schemas/vlan_id_with_variable", "description": "VLAN ID or variable associated with this network"}, "vpn_access": {"$ref": "#/components/schemas/network_vpn_access", "description": "VPN access settings keyed by VPN name for this network"}}, "required": ["name"], "type": "object"}, "network_internal_access": {"additionalProperties": false, "description": "Internal access settings for an organization network", "properties": {"enabled": {"description": "Whether internal access is enabled for this network", "type": "boolean"}}, "type": "object"}, "network_internet_access": {"additionalProperties": false, "description": "Direct internet access settings for an organization network", "properties": {"create_simple_service_policy": {"default": false, "description": "Whether Mist should create simple service policies for restricted internet access", "type": "boolean"}, "destination_nat": {"$ref": "#/components/schemas/network_internet_access_destination_nat", "description": "Destination NAT rules for direct internet access"}, "enabled": {"description": "Whether direct internet access is enabled for this network", "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_internet_access_static_nat", "description": "Static NAT rules for direct internet access"}}, "type": "object"}, "network_internet_access_destination_nat": {"additionalProperties": {"$ref": "#/components/schemas/network_internet_access_destination_nat_property"}, "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined", "type": "object"}, "network_internet_access_destination_nat_property": {"additionalProperties": false, "description": "Direct-internet destination NAT rule target settings", "properties": {"internal_ip": {"description": "The Destination NAT destination IP address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.70.30"], "type": "string"}, "name": {"description": "Label for this direct internet destination NAT rule", "examples": ["web server"], "type": "string"}, "port": {"description": "The Destination NAT destination IP address. Must be a Port (i.e. \"443\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["443"], "type": "string"}, "wan_name": {"description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity", "examples": ["wan0"], "type": "string"}}, "type": "object"}, "network_internet_access_static_nat": {"additionalProperties": {"$ref": "#/components/schemas/network_internet_access_static_nat_property"}, "description": "Property key may be an External IP address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")", "type": "object"}, "network_internet_access_static_nat_property": {"additionalProperties": false, "description": "Direct-internet static NAT rule target settings", "properties": {"internal_ip": {"description": "The Static NAT destination IP address. Must be an IP address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.70.3"], "type": "string"}, "name": {"description": "Label for this direct internet static NAT rule", "examples": ["pos_station-1"], "type": "string"}, "wan_name": {"description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. \"{{myvar}}\")", "examples": ["wan0"], "type": "string"}}, "type": "object"}, "network_multicast": {"additionalProperties": false, "description": "Whether to enable multicast support (only PIM-sparse mode is supported)", "properties": {"disable_igmp": {"default": false, "description": "If the network will only be the source of the multicast traffic, IGMP can be disabled", "type": "boolean"}, "enabled": {"default": false, "description": "Whether multicast support is enabled for this network", "type": "boolean"}, "groups": {"$ref": "#/components/schemas/network_multicast_groups", "description": "Multicast group-to-RP mappings for this network"}}, "type": "object"}, "network_multicast_group": {"additionalProperties": false, "description": "Multicast group rendezvous point mapping", "properties": {"rp_ip": {"description": "RP (rendezvous point) IP address", "type": "string"}}, "type": "object"}, "network_multicast_groups": {"additionalProperties": {"$ref": "#/components/schemas/network_multicast_group"}, "description": "Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example \"225.1.0.3/32\")", "type": "object"}, "network_routed_for_networks": {"description": "For a Network (usually LAN), it can be routable to other networks (e.g. OSPF)", "items": {"examples": ["pos"], "type": "string"}, "type": "array"}, "network_source_nat": {"additionalProperties": false, "description": "If `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub", "properties": {"external_ip": {"description": "External source NAT IP or subnet used when spoke hosts must be reachable from the hub", "examples": ["172.16.0.8/30"], "type": "string"}}, "type": "object"}, "network_template": {"description": "Network template configuration applied to sites or site groups", "properties": {"acl_policies": {"$ref": "#/components/schemas/acl_policies", "description": "ACL policy defaults provided by this network template"}, "acl_tags": {"$ref": "#/components/schemas/acl_tags", "description": "ACL tags available to access policies in this network template"}, "additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands provided by this network template"}, "bgp_config": {"additionalProperties": {"$ref": "#/components/schemas/switch_bgp_config"}, "description": "BGP routing defaults for this network template. Property key is the BGP session name", "type": "object"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the network template was created"}, "dhcp_snooping": {"$ref": "#/components/schemas/dhcp_snooping", "description": "DHCP snooping defaults provided by this network template"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "DNS servers provided by this network template"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "DNS search suffixes provided by this network template"}, "extra_routes": {"$ref": "#/components/schemas/extra_routes", "description": "Additional IPv4 route defaults in this network template"}, "extra_routes6": {"$ref": "#/components/schemas/extra_routes6", "description": "Additional IPv6 route defaults in this network template"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the network template"}, "import_org_networks": {"$ref": "#/components/schemas/network_template_import_org_networks", "description": "Organization network names imported into this network template"}, "mist_nac": {"$ref": "#/components/schemas/switch_mist_nac", "description": "Mist NAC defaults applied by this network template"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the network template was last modified"}, "name": {"description": "Display name of the network template", "type": "string"}, "networks": {"$ref": "#/components/schemas/switch_networks", "description": "Layer 3 networks configured by this network template"}, "ntp_servers": {"$ref": "#/components/schemas/ntp_servers", "description": "NTP servers provided by this network template"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this network template"}, "ospf_areas": {"$ref": "#/components/schemas/ospf_areas", "description": "OSPF area defaults provided by this network template"}, "port_mirroring": {"$ref": "#/components/schemas/switch_port_mirroring", "description": "Port mirroring defaults provided by this network template"}, "port_usages": {"$ref": "#/components/schemas/switch_port_usages", "description": "Reusable switch port usage profiles provided by this network template"}, "radius_config": {"$ref": "#/components/schemas/switch_radius_config", "description": "RADIUS authentication and accounting defaults in this network template"}, "remote_syslog": {"$ref": "#/components/schemas/remote_syslog", "description": "Remote syslog defaults provided by this network template"}, "remove_existing_configs": {"default": false, "description": "By default, only the configuration generated by Mist is cleaned up during the configuration process. If `true`, all the existing configuration will be removed.", "type": "boolean"}, "routing_policies": {"$ref": "#/components/schemas/sw_routing_policies", "description": "Routing policy defaults applied by this network template"}, "snmp_config": {"$ref": "#/components/schemas/snmp_config", "description": "SNMP defaults provided by this network template"}, "switch_matching": {"$ref": "#/components/schemas/switch_matching", "description": "Matching rules that select switches for this network template"}, "switch_mgmt": {"$ref": "#/components/schemas/switch_mgmt", "description": "Management-plane defaults provided by this network template"}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "VRF defaults applied by this network template"}, "vrf_instances": {"$ref": "#/components/schemas/switch_vrf_instances", "description": "VRF instances configured by this network template"}}, "type": "object"}, "network_template_import_org_networks": {"description": "Org Networks that we'd like to import", "items": {"examples": ["ap"], "type": "string"}, "type": "array"}, "network_templates": {"description": "List of network templates", "items": {"$ref": "#/components/schemas/network_template"}, "type": "array"}, "network_tenant": {"additionalProperties": false, "description": "Tenant address entry for a network", "properties": {"addresses": {"$ref": "#/components/schemas/network_tenant_addresses", "description": "IP addresses or subnets assigned to this tenant in the network"}}, "type": "object"}, "network_tenant_addresses": {"description": "IP addresses or subnets assigned to a network tenant", "items": {"description": "The user/tenant IP address (i.e. \"192.168.70.30\"), an Subnet (i.e. \"192.168.70.0/24\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.70.30"], "type": "string"}, "type": "array"}, "network_tenants": {"additionalProperties": {"$ref": "#/components/schemas/network_tenant"}, "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")", "type": "object"}, "network_vpn_access": {"additionalProperties": {"$ref": "#/components/schemas/network_vpn_access_config"}, "description": "Property key is the VPN name. Whether this network can be accessed from vpn", "type": "object"}, "network_vpn_access_config": {"additionalProperties": false, "description": "VPN access settings for a network and VPN pair", "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", "examples": ["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_vpn_access_destination_nat", "description": "Destination NAT rules applied for VPN access to this network"}, "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", "examples": ["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": {"$ref": "#/components/schemas/network_vpn_access_config_other_vrfs", "description": "Other VRFs that can receive leaked routes from this spoke network"}, "routed": {"description": "Whether this network is routable", "type": "boolean"}, "source_nat": {"$ref": "#/components/schemas/network_source_nat", "description": "Source NAT settings used when non-routed spoke hosts must be reachable from the hub"}, "static_nat": {"$ref": "#/components/schemas/network_vpn_access_static_nat", "description": "Static NAT rules applied for VPN access to this network"}, "summarized_subnet": {"description": "toward overlay, how HUB should deal with routes it received from Spokes", "examples": ["172.16.0.0/16"], "type": "string"}, "summarized_subnet_to_lan_bgp": {"description": "toward LAN-side BGP peers", "examples": ["172.16.0.0/16"], "type": "string"}, "summarized_subnet_to_lan_ospf": {"description": "toward LAN-side OSPF peers", "examples": ["172.16.0.0/16"], "type": "string"}}, "type": "object"}, "network_vpn_access_config_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": {"examples": ["iot"], "type": "string"}, "type": "array"}, "network_vpn_access_destination_nat": {"additionalProperties": {"$ref": "#/components/schemas/network_vpn_access_destination_nat_property"}, "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined", "type": "object"}, "network_vpn_access_destination_nat_property": {"additionalProperties": false, "description": "VPN access destination NAT rule target settings", "properties": {"internal_ip": {"description": "The Destination NAT destination IP address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.70.30"], "type": "string"}, "name": {"description": "Label for this VPN destination NAT rule", "examples": ["web server"], "type": "string"}, "port": {"description": "Destination port or variable for this VPN destination NAT rule", "examples": ["443"], "type": "string"}}, "type": "object"}, "network_vpn_access_static_nat": {"additionalProperties": {"$ref": "#/components/schemas/network_vpn_access_static_nat_property"}, "description": "Property key may be an External IP address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")", "type": "object"}, "network_vpn_access_static_nat_property": {"additionalProperties": false, "description": "VPN access static NAT rule target settings", "properties": {"internal_ip": {"description": "The Static NAT destination IP address. Must be an IP address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")", "examples": ["192.168.70.3"], "type": "string"}, "name": {"description": "Label for this VPN static NAT rule", "examples": ["pos_station-1"], "type": "string"}}, "type": "object"}, "networks": {"description": "List of organization network definitions", "items": {"$ref": "#/components/schemas/network"}, "type": "array"}, "next_hop_via": {"description": "Next-hop IP address. Can be a single IP address or an array of IP addresses for ECMP (Equal-Cost Multi-Path) load balancing across multiple next-hops.", "examples": ["10.2.1.1", ["10.2.1.1", "10.2.1.2"]], "oneOf": [{"type": "string"}, {"items": {"type": "string"}, "type": "array"}]}, "note_string": {"description": "Request body containing a note value", "properties": {"note": {"description": "Some text note describing the intent", "examples": ["maintenance window"], "type": "string"}}, "type": "object"}, "notes_string": {"description": "Request body containing notes text", "properties": {"notes": {"description": "Text to attach to the target resource as notes", "examples": ["wired pcap test"], "type": "string"}}, "type": "object"}, "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"}, "number_or_null": {"description": "Numeric value or null", "oneOf": [{"type": "number"}, {"type": "null"}]}, "oauth_account_errors": {"description": "Read-only OAuth account error messages", "examples": [["OAuth token refresh failed, please re-link your account", "API daily rate limit reached for your account"]], "items": {"type": "string"}, "readOnly": true, "type": "array"}, "oauth_app_name": {"description": "enum: `crowdstrike`, `intune`, `jamf`, `mobicontrol`, `prisma`, `sentinelone`, `teams`, `vmware`, `zdx`, `zoom`", "enum": ["crowdstrike", "intune", "jamf", "mobicontrol", "prisma", "sentinelone", "teams", "vmware", "zdx", "zoom"], "type": "string"}, "oauth_ping_identity_region": {"default": "us", "description": "enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia)", "enum": ["asia", "au", "ca", "eu", "us"], "type": "string"}, "oauth_provider_domain": {"default": "okta.com", "description": "If `oauth_type`==`okta`, specifies the region-specific OAuth provider domain. enum: `okta.com`, `oktapreview.com`, `okta-emea.com`, `okta-gov.com`, `okta.mil`, `mtls.okta.com`", "enum": ["okta.com", "oktapreview.com", "okta-emea.com", "okta-gov.com", "okta.mil", "mtls.okta.com"], "examples": ["okta.com"], "type": "string"}, "optic_port_config": {"additionalProperties": {"$ref": "#/components/schemas/optic_port_config_port"}, "description": "Property key is the interface name or range (e.g. `et-0/0/47`, `et-0/0/48-49`)", "type": "object"}, "optic_port_config_port": {"additionalProperties": false, "description": "Per-interface optic port override settings", "properties": {"channelized": {"default": false, "description": "Whether channelization is enabled on this optic port", "type": "boolean"}, "speed": {"description": "Interface speed (e.g. `25g`, `50g`), use the chassis speed by default", "examples": ["25g"], "type": "string"}}, "type": "object"}, "org": {"description": "Mist organization containing sites, devices, users, and organization-level settings", "properties": {"alarmtemplate_id": {"description": "Org-level alarm template ID used as the default for sites", "format": "uuid", "type": ["string", "null"]}, "allow_mist": {"default": true, "description": "Whether Mist support access is allowed for this organization", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the organization was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the organization"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the organization was last modified"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managed service provider account that owns this organization, when applicable"}, "msp_logo_url": {"description": "logo uploaded by the MSP with advanced tier, only present if provided", "examples": ["https://example.com/logo/b9d42c2e-88ee-41f8-b798-f009ce7fe909.jpeg"], "format": "uri", "readOnly": true, "type": "string"}, "msp_name": {"description": "Name of the msp the org belongs to", "examples": ["MSP"], "readOnly": true, "type": "string"}, "name": {"description": "Display name of the organization", "examples": ["Org"], "type": "string"}, "orggroup_ids": {"$ref": "#/components/schemas/orggroup_ids", "description": "Organization group IDs that include this organization"}, "session_expiry": {"default": 1440, "description": "Admin session lifetime for the organization, in minutes", "format": "int32", "maximum": 20160, "minimum": 10, "type": "integer"}}, "required": ["name"], "type": "object"}, "org_apitoken": {"description": "Organization API token with scoped privileges\n\n**Note:**\n`privileges` is required to create the object, but may not be returned in the POST API response. Retrieve the token afterward to inspect it.", "properties": {"created_by": {"description": "email of the token creator / null if creator is deleted", "examples": ["user@mycorp.com"], "readOnly": true, "type": ["string", "null"]}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the organization API token was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the organization API token"}, "key": {"description": "Token secret key. The full API Token is only returned when the API token is created and can only be partially retrieved afterward", "examples": ["1qkb...QQCL"], "readOnly": true, "type": "string"}, "last_used": {"description": "Epoch timestamp when the token was last used, or null if it has not been used", "examples": [1690115110], "readOnly": true, "type": ["number", "null"]}, "name": {"description": "Display name of the organization API token", "examples": ["org_token_xyz"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this API token"}, "privileges": {"$ref": "#/components/schemas/org_apitoken_privileges", "description": "Access scopes and roles granted to the organization API token"}, "src_ips": {"$ref": "#/components/schemas/org_apitoken_src_ips", "description": "Allowed source IP addresses or CIDRs from which the token may be used"}}, "required": ["name"], "type": "object"}, "org_apitoken_privileges": {"description": "List of privileges the token has on the orgs/sites", "examples": [[{"role": "admin", "scope": "org"}]], "items": {"$ref": "#/components/schemas/privilege_org"}, "maxItems": 10, "minItems": 1, "type": "array", "uniqueItems": true}, "org_apitoken_src_ips": {"description": "List of allowed IP addresses from where the token can be used from. At most 10 IP addresses can be specified, cannot be changed once the API Token is created.", "examples": [["63.3.56.0/24", "63.3.55.4"]], "items": {"type": "string"}, "maximum": 10, "type": "array"}, "org_apitokens": {"description": "List of organization API tokens", "items": {"$ref": "#/components/schemas/org_apitoken"}, "type": "array"}, "org_asset_count_distinct": {"description": "enum: `ibeacon_major`, `ibeacon_minor`, `ibeacon_uuid`, `mac`, `map_id`, `site_id`", "enum": ["ibeacon_major", "ibeacon_minor", "ibeacon_uuid", "mac", "map_id", "site_id"], "type": "string"}, "org_client_sessions_count_distinct": {"default": "device", "description": "enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`", "enum": ["ap", "device", "hostname", "ip", "model", "os", "ssid", "vlan"], "type": "string"}, "org_clients_count_distinct": {"default": "device", "description": "enum: `ap`, `device`, `hostname`, `ip`, `mac`, `model`, `os`, `ssid`, `vlan`", "enum": ["ap", "device", "hostname", "ip", "mac", "model", "os", "ssid", "vlan"], "type": "string"}, "org_crl_import_file": {"additionalProperties": false, "description": "Multipart upload payload for importing an organization CRL file", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "a PEM or DER formatted CRL file", "type": "string"}, "json": {"description": "a JSON string with \"name\" field for CRL file issuer (optional)", "type": "string"}}, "type": "object"}, "org_device": {"additionalProperties": false, "description": "Organization device identifier returned by the devices list", "properties": {"mac": {"description": "Organization device MAC address", "type": "string"}, "name": {"description": "Display name of the organization device", "type": "string"}}, "required": ["mac", "name"], "type": "object"}, "org_devices": {"description": "List of organization device identifiers", "items": {"$ref": "#/components/schemas/org_device"}, "type": "array", "uniqueItems": true}, "org_devices_count_distinct": {"default": "model", "description": "enum: `hostname`, `ip`, `lldp_mgmt_addr`, `lldp_port_id`, `lldp_system_desc`, `lldp_system_name`, `mac`, `model`, `mxedge_id`, `mxtunnel_status`, `site_id`, `version`", "enum": ["hostname", "ip", "lldp_mgmt_addr", "lldp_port_id", "lldp_system_desc", "lldp_system_name", "mac", "model", "mxedge_id", "mxtunnel_status", "site_id", "version"], "type": "string"}, "org_devices_events_count_distinct": {"default": "model", "description": "enum: `ap`, `apfw`, `model`, `org_id`, `site_id`, `text`, `timestamp`, `type`", "enum": ["ap", "apfw", "model", "org_id", "site_id", "text", "timestamp", "type"], "type": "string"}, "org_devices_last_configs_count_distinct": {"description": "enum: `mac`, `name`, `site_id`, `version`", "enum": ["mac", "name", "site_id", "version"], "type": "string"}, "org_e911_report": {"additionalProperties": false, "description": "E911 AP BSSID report status for the organization", "properties": {"detail": {"description": "Human-readable description of the action taken", "type": "string"}, "last_generated": {"description": "Unix timestamp of when the report file was last generated. Only present when `status` is `available`.", "type": "integer"}, "status": {"$ref": "#/components/schemas/org_e911_report_status", "description": "Current generation state of the E911 AP BSSID report"}, "url": {"description": "Presigned URL to download the CSV file. Only present when `status` is `available`.", "type": "string"}}, "type": "object"}, "org_e911_report_status": {"description": "Current status of E911 report generation. enum: `disabled`, `scheduled`, `available`", "enum": ["disabled", "scheduled", "available"], "type": "string"}, "org_event": {"additionalProperties": false, "description": "Event record generated at the organization level", "properties": {"org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with this event"}, "text": {"description": "Detailed human-readable message for the organization event", "examples": ["authentication failed, API key invalid"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the organization event occurred"}, "type": {"description": "Event type code for this organization event", "examples": ["CRADLEPOINT_SYNC_FAILED"], "type": "string"}}, "type": "object"}, "org_guests_count_distinct": {"default": "auth_method", "description": "enum: `auth_method`, `company`, `ssid`", "enum": ["auth_method", "company", "ssid"], "type": "string"}, "org_id": {"description": "Unique identifier of a Mist organization", "examples": ["a97c1b22-a4e9-411e-9bfd-d8695a0f9e61"], "format": "uuid", "readOnly": true, "type": "string"}, "org_license_action": {"description": "Request to amend, annotate, delete, or unamend an organization license", "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`, note text to attach to the license", "type": "string"}, "op": {"$ref": "#/components/schemas/org_license_action_operation", "description": "License action operation to perform"}, "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_license_action_operation": {"description": "to move a license, use the `amend` operation. enum: `amend`, `annotate`, `delete`, `unamend`", "enum": ["amend", "annotate", "delete", "unamend"], "type": "string"}, "org_list": {"description": "Organization records returned by a list response", "items": {"$ref": "#/components/schemas/org"}, "type": "array"}, "org_logs_count_distinct": {"default": "admin_name", "description": "enum: `admin_id`, `admin_name`, `message`, `site_id`", "enum": ["admin_id", "admin_name", "message", "site_id"], "type": "string"}, "org_mxedge_count_distinct": {"default": "model", "description": "enum: `distro`, `model`, `mxcluster_id`, `site_id`, `tunterm_version`", "enum": ["distro", "model", "mxcluster_id", "site_id", "tunterm_version"], "type": "string"}, "org_mxedge_events_count_distinct": {"default": "mxedge_id", "description": "enum: `mxcluster_id`, `mxedge_id`, `package`, `type`", "enum": ["mxcluster_id", "mxedge_id", "package", "type"], "type": "string"}, "org_nac_client_events_count_distinct": {"description": "enum: `ap`, `auth_type`, `dryrun_nacrule_id`, `mac`, `nacrule_id`, `nas_vendor`, `ssid`, `type`, `username`, `vlan`", "enum": ["ap", "auth_type", "dryrun_nacrule_id", "mac", "nacrule_id", "nas_vendor", "ssid", "type", "username", "vlan"], "type": "string"}, "org_nac_clients_count_distinct": {"default": "type", "description": "enum: `ap`, `auth_type`, `device_mac`, `edr_managed`, `edr_provider`, `edr_status`, `family`, `hostname`, `idp_id`, `mfg`, `mdm_compliance`, `mdm_managed`, `mdm_provider`, `model`, `mxedge_id`, `nacrule_matched`, `nacrule_name`, `nacrule_id`, `nas_ip`, `nas_vendor`, `os`, `site_id`, `ssid`, `status`, `type`, `usermac_label`, `username`, `vlan`", "enum": ["ap", "auth_type", "device_mac", "edr_managed", "edr_provider", "edr_status", "family", "hostname", "idp_id", "mfg", "mdm_compliance", "mdm_managed", "mdm_provider", "model", "mxedge_id", "nacrule_matched", "nacrule_name", "nacrule_id", "nas_ip", "nas_vendor", "os", "site_id", "ssid", "status", "type", "usermac_label", "username", "vlan"], "type": "string"}, "org_otherdevices_events_count_distinct": {"default": "mac", "description": "enum: `mac`, `site_id`, `type`, `vendor`", "enum": ["mac", "site_id", "type", "vendor"], "type": "string"}, "org_psk_portal_logs_count_distinct": {"default": "pskportal_id", "description": "enum: `admin_id`, `admin_name`, `psk_id`, `psk_name`, `pskportal_id`, `user_id`", "enum": ["admin_id", "admin_name", "psk_id", "psk_name", "pskportal_id", "user_id"], "type": "string"}, "org_service_policies": {"description": "List of organization-level service policies", "items": {"$ref": "#/components/schemas/org_service_policy"}, "type": "array"}, "org_service_policy": {"description": "Organization-level service policy that allows or denies traffic for tenants and services", "properties": {"aamw": {"$ref": "#/components/schemas/service_policy_aamw", "description": "Advanced anti-malware settings applied by this service policy"}, "action": {"$ref": "#/components/schemas/allow_deny", "description": "Allow or deny action for traffic matched by this service policy"}, "antivirus": {"$ref": "#/components/schemas/service_policy_antivirus", "description": "Malware and virus inspection settings applied by this service policy"}, "appqoe": {"$ref": "#/components/schemas/service_policy_appqoe", "description": "Application QoE settings applied by this service policy"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the service policy was created"}, "ewf": {"$ref": "#/components/schemas/service_policy_ewf", "description": "Enhanced web filtering rules applied by this service policy"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the service policy"}, "idp": {"$ref": "#/components/schemas/idp_config", "description": "Intrusion detection and prevention settings applied by this service policy"}, "local_routing": {"description": "Whether the policy permits access within the same VRF", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the service policy was last modified"}, "name": {"description": "Display name of the service policy", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this service policy"}, "path_preference": {"description": "By default, we derive all paths available and use them, optionally, you can customize by using `path_preference`", "type": "string"}, "secintel": {"$ref": "#/components/schemas/service_policy_secintel", "description": "Juniper SecIntel threat intelligence settings applied by this service policy"}, "services": {"$ref": "#/components/schemas/strings", "description": "Application services or groups matched by this policy"}, "ssl_proxy": {"$ref": "#/components/schemas/service_policy_ssl_proxy", "description": "SSL proxy inspection settings applied by this service policy"}, "tenants": {"$ref": "#/components/schemas/strings", "description": "Tenant names matched by this service policy"}}, "type": "object"}, "org_setting": {"description": "Organization-wide feature, integration, management, and security settings", "properties": {"allow_mist": {"default": false, "description": "whether to allow Mist to look at this org", "type": "boolean"}, "ap_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for AP devices only. When configured it takes effect for AP devices and `device_updown_threshold` is ignored.", "examples": [null], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "api_policy": {"$ref": "#/components/schemas/org_setting_api_policy", "description": "Policy for hiding API secrets and passwords in responses"}, "auto_device_naming": {"$ref": "#/components/schemas/org_setting_auto_device_naming", "description": "Automatic device naming rules for claimed devices"}, "auto_deviceprofile_assignment": {"$ref": "#/components/schemas/org_setting_auto_deviceprofile_assignment", "description": "Automatic device profile assignment rules for claimed devices"}, "auto_site_assignment": {"$ref": "#/components/schemas/org_setting_auto_site_assignment", "description": "Automatic site assignment rules for claimed devices"}, "auto_upgrade": {"$ref": "#/components/schemas/org_setting_auto_upgrade", "description": "AP automatic firmware upgrade policy for the organization"}, "blacklist_url": {"description": "Read-only URL for the organization blacklist file", "examples": ["https://papi.s3.amazonaws.com/blacklist/xxx..."], "readOnly": true, "type": "string"}, "cacerts": {"$ref": "#/components/schemas/radsec_certs_ap", "description": "CA certificates used by organization-level RADIUS and RADSec settings"}, "celona": {"$ref": "#/components/schemas/org_setting_celona", "description": "Integration settings for Celona"}, "cloudshark": {"$ref": "#/components/schemas/org_setting_cloudshark", "description": "Packet capture integration settings for CloudShark"}, "cradlepoint": {"$ref": "#/components/schemas/org_setting_cradlepoint", "description": "Integration settings for Cradlepoint devices"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the organization settings were created"}, "device_cert": {"$ref": "#/components/schemas/org_setting_device_cert", "description": "Common device certificate used by organization settings"}, "device_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery via\n * device-updowns webhooks topic, \n * 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": 240, "minimum": 0, "type": ["integer", "null"]}, "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": {"description": "Read-only indicator that the settings object is scoped to a site", "readOnly": true, "type": "boolean"}, "gateway_mgmt": {"$ref": "#/components/schemas/org_setting_gateway_mgmt", "description": "Gateway management defaults for the organization"}, "gateway_tunnel_updown_threshold": {"description": "enable threshold-based gateway tunnel (secure edge tunnels) up-down delivery.", "examples": [null], "minimum": 0, "type": ["integer", "null"]}, "gateway_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for Gateway devices only. When configured it takes effect for GW devices and `device_updown_threshold` is ignored.", "examples": [10], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the organization settings object"}, "installer": {"$ref": "#/components/schemas/org_setting_installer", "description": "Access settings for organization installer workflows"}, "jcloud": {"$ref": "#/components/schemas/org_setting_jcloud", "description": "Integration settings for JCloud"}, "jcloud_ra": {"$ref": "#/components/schemas/org_setting_jcloud_ra", "description": "Routing Assurance integration settings for JCloud"}, "juniper": {"$ref": "#/components/schemas/account_juniper_info", "description": "Linked Juniper account information for this organization"}, "juniper_srx": {"$ref": "#/components/schemas/org_setting_juniper_srx", "description": "SRX integration settings for Juniper devices"}, "junos_shell_access": {"$ref": "#/components/schemas/org_setting_junos_shell_access", "description": "Role-based Junos web-shell access settings"}, "marvis": {"$ref": "#/components/schemas/org_setting_marvis", "description": "AI assistant and self-driving feature settings for Marvis"}, "mgmt": {"$ref": "#/components/schemas/org_setting_mgmt", "description": "Tunnel settings for organization management connectivity"}, "mist_nac": {"$ref": "#/components/schemas/org_setting_mist_nac", "description": "NAC settings for Mist Access Assurance"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the organization settings were last modified"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managed service provider account associated with these settings"}, "mxedge_mgmt": {"$ref": "#/components/schemas/mxedge_mgmt", "description": "Management settings for Mist Edge devices"}, "optic_port_config": {"$ref": "#/components/schemas/optic_port_config", "description": "Configuration defaults for optic ports"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns these settings"}, "password_policy": {"$ref": "#/components/schemas/org_setting_password_policy", "description": "Admin credential policy settings for the organization"}, "pcap": {"$ref": "#/components/schemas/org_setting_pcap", "description": "Packet capture settings for the organization"}, "pcap_bucket_verified": {"description": "Whether the configured packet capture bucket has been verified", "readOnly": true, "type": "boolean"}, "security": {"$ref": "#/components/schemas/org_setting_security", "description": "Organization security controls such as local SSH restrictions"}, "simple_alert": {"$ref": "#/components/schemas/simple_alert", "description": "Basic alert delivery settings for the organization"}, "ssr": {"$ref": "#/components/schemas/setting_ssr", "description": "Session Smart Router settings for the organization"}, "switch": {"$ref": "#/components/schemas/org_setting_switch", "description": "Configuration defaults for switches in this organization"}, "switch_mgmt": {"$ref": "#/components/schemas/org_setting_switch_mgmt", "description": "Management settings for switches in this organization"}, "switch_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for Switch devices only. When configured it takes effect for SW devices and `device_updown_threshold` is ignored.", "examples": [0], "type": ["integer", "null"]}, "synthetic_test": {"$ref": "#/components/schemas/synthetictest_config", "description": "Configuration for organization synthetic tests"}, "tags": {"$ref": "#/components/schemas/org_setting_tags", "description": "Labels associated with these organization settings"}, "ui_idle_timeout": {"default": 0, "description": "Automatically logout the user when UI session is inactive. `0` means disabled", "examples": [10], "maximum": 480, "minimum": 0, "type": "integer"}, "ui_no_tracking": {"default": false, "description": "Whether UI usage tracking is disabled for the organization", "type": "boolean"}, "vpn_options": {"$ref": "#/components/schemas/org_setting_vpn_options", "description": "Options for organization VPN behavior"}, "wan_pma": {"$ref": "#/components/schemas/org_setting_wan_pma", "description": "PMA feature settings for WAN Assurance"}, "wired_pma": {"$ref": "#/components/schemas/org_setting_wired_pma", "description": "PMA feature settings for Wired Assurance"}, "wireless_pma": {"$ref": "#/components/schemas/org_setting_wireless_pma", "description": "PMA feature settings for Wireless Assurance"}}, "type": "object"}, "org_setting_api_policy": {"additionalProperties": false, "description": "Organization API response policy for hiding secrets and passwords", "properties": {"no_reveal": {"default": false, "description": "By default, API hides password/secrets when the user doesn't have write access\n * `true`: API will hide passwords/secrets for all users\n * `false`: API will hide passwords/secrets for read-only users", "type": "boolean"}, "src_ips": {"description": "Optional list of IP addresses or CIDR subnets from which org API access is allowed. At most 10 entries. The source IP of the request making this update must be within one of the specified subnets.", "examples": [["63.3.56.0/24", "63.3.55.4"]], "items": {"type": "string"}, "maxItems": 10, "type": "array"}}, "type": "object"}, "org_setting_auto_assignment_rule": {"additionalProperties": false, "description": "Automatic assignment rule used by org settings", "properties": {"create_new_site_if_needed": {"default": false, "description": "If `src`==`geoip`. By default, a claimed device only gets assigned if the site exists to auto-create the site, enable this", "type": "boolean"}, "expression": {"description": "If `src`==`name`, `src`==`lldp_system_name`, `src`==`dns_suffix` \n \"[0:3]\" // \"abcdef\" -> \"abc\" \n \"split(.)[1]\" // \"a.b.c\" -> \"b\" \n \"split(-)[1][0:3]\" // \"a1234-b5678-c90\" -> \"b56\"'", "examples": ["split(.)[1]"], "type": ["string", "null"]}, "gatewaytemplate_id": {"description": "If `src`==`geoip` and `create_new_site_if_needed`==`true`. If a gateway template is desired for this newly created site", "type": "string"}, "match_country": {"description": "If `src`==`geoip`, country or region value that must match the device location", "type": "string"}, "match_device_type": {"$ref": "#/components/schemas/device_type_default_ap", "description": "Device type filter that limits which claimed devices this rule applies to"}, "match_model": {"description": "Optional additional device model filter for this assignment rule", "type": "string"}, "model": {"description": "If `src`==`model`, device model value to match", "type": "string"}, "prefix": {"description": "If `src`==`name`, prefix that must be present in the device name", "examples": ["XX-"], "type": ["string", "null"]}, "src": {"$ref": "#/components/schemas/org_setting_auto_site_assignment_src", "description": "Source attribute used to evaluate the automatic assignment rule"}, "subnet": {"description": "If `src`==`subnet` or `ext_ip`==`ext_ip`", "type": "string"}, "suffix": {"description": "If `src`==`name`, suffix that must be present in the device name", "examples": ["-YY"], "type": ["string", "null"]}, "value": {"description": "If \n * `src`==`ext_ip`, `src`==`subnet` or `src`==`model`, the site name\n * `src`==`geoip`: site name for the device to be assigned to (\\\"city\\\" / \\\"city+country\\\" / ...)\"", "type": "string"}}, "required": ["src"], "type": "object"}, "org_setting_auto_device_naming": {"additionalProperties": false, "description": "Automatic device naming configuration for claimed devices", "properties": {"enable": {"description": "Whether automatic device naming is enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/org_setting_auto_device_naming_rules", "description": "List of rules used to derive device names automatically"}}, "type": "object"}, "org_setting_auto_device_naming_rule": {"additionalProperties": false, "description": "Automatic device naming rule", "properties": {"expression": {"description": "\"[0:3]\" // \"abcdef\" -> \"abc\" \n \"split(.)[1]\" // \"a.b.c\" -> \"b\" \n \"split(-)[1][0:3]\" // \"a1234-b5678-c90\" -> \"b56\"'", "examples": ["split(.)[1]"], "type": "string"}, "match_device": {"$ref": "#/components/schemas/device_type_default_ap", "description": "Device type filter for this naming rule"}, "prefix": {"description": "Text prepended to the generated device name", "type": "string"}, "src": {"$ref": "#/components/schemas/org_setting_auto_device_naming_rule_src", "description": "Device attribute used to generate the name"}, "suffix": {"description": "Text appended to the generated device name", "type": "string"}}, "type": "object"}, "org_setting_auto_device_naming_rule_src": {"description": "Device attribute used to generate the name. enum: `lldp_port_desc`, `mac`", "enum": ["lldp_port_desc", "mac"], "type": "string"}, "org_setting_auto_device_naming_rules": {"description": "Automatic device naming rules, or null when automatic naming is not configured", "items": {"$ref": "#/components/schemas/org_setting_auto_device_naming_rule"}, "type": ["array", "null"]}, "org_setting_auto_deviceprofile_assignment": {"additionalProperties": false, "description": "Automatic device profile assignment configuration", "properties": {"enable": {"description": "Whether automatic device profile assignment is enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/org_setting_auto_deviceprofile_assignment_rules", "description": "Assignment rules evaluated for automatic device profile selection"}}, "type": "object"}, "org_setting_auto_deviceprofile_assignment_rules": {"description": "Automatic device profile assignment rules, or null when automatic assignment is not configured", "items": {"$ref": "#/components/schemas/org_setting_auto_assignment_rule"}, "type": ["array", "null"]}, "org_setting_auto_site_assignment": {"additionalProperties": false, "description": "Automatic site assignment configuration for claimed devices", "properties": {"enable": {"description": "Whether automatic site assignment is enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/org_setting_auto_site_assignment_rules", "description": "Assignment rules evaluated for automatic site selection"}}, "type": "object"}, "org_setting_auto_site_assignment_rules": {"description": "Automatic site assignment rules, or null when automatic assignment is not configured", "items": {"$ref": "#/components/schemas/org_setting_auto_assignment_rule"}, "type": ["array", "null"]}, "org_setting_auto_site_assignment_src": {"description": "enum: `ext_ip`, `dns_suffix`, `geoip`, `lldp_port_desc`, `lldp_system_name`, `model`, `name`, `subnet`", "enum": ["ext_ip", "dns_suffix", "geoip", "lldp_port_desc", "lldp_system_name", "model", "name", "subnet"], "type": "string"}, "org_setting_auto_upgrade": {"additionalProperties": false, "description": "Organization-wide AP automatic firmware upgrade policy", "properties": {"custom_versions": {"$ref": "#/components/schemas/ap_auto_upgrade_custom_versions", "description": "Per-AP-model firmware versions or channels used for auto-upgrade"}, "day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Day of the week for the AP auto-upgrade maintenance window"}, "enabled": {"default": false, "description": "Whether AP auto-upgrade is enabled. Note that Mist may auto-upgrade APs if the running version is no longer supported.", "type": "boolean"}, "time_of_day": {"description": "`any` or HH:MM (24-hour format). Upgrade will happen within up to 1 hour from this time.", "examples": ["12:00"], "type": "string"}, "version": {"$ref": "#/components/schemas/site_auto_upgrade_version", "description": "Firmware release channel or specific version used for AP auto-upgrade"}}, "type": "object"}, "org_setting_celona": {"additionalProperties": false, "description": "Integration settings for Celona", "properties": {"api_key": {"description": "Credential used by Mist for the Celona integration", "examples": ["$2a$04$OkaLCoJn6rDjR8ha.oduQVDST3.kJNIrte"], "type": "string"}, "api_prefix": {"description": "Celona API prefix configured for the integration", "examples": ["cc3273fcb016470e"], "type": "string"}}, "type": "object"}, "org_setting_cloudshark": {"additionalProperties": false, "description": "Packet capture integration settings for CloudShark", "properties": {"apitoken": {"description": "Token used by Mist to access the CloudShark integration", "examples": ["accbd6f10c6d05c3"], "type": "string"}, "url": {"description": "CloudShark Enterprise URL, if using a self-hosted CS Enterprise instance", "examples": ["https://cloudshark.hosted.domain"], "type": "string"}}, "type": "object"}, "org_setting_cradlepoint": {"additionalProperties": false, "description": "Read-only Cradlepoint integration settings stored for the organization", "properties": {"cp_api_id": {"description": "Cradlepoint API ID used by Mist for the integration", "examples": ["84446d61-2206-4ea5-855a-0043f980be54"], "readOnly": true, "type": "string"}, "cp_api_key": {"description": "Cradlepoint API key paired with the Cradlepoint API ID", "examples": ["79c329da9893e34099c7d8ad5cb9c941"], "format": "password", "readOnly": true, "type": "string"}, "ecm_api_id": {"description": "Cradlepoint ECM API ID used by Mist for the integration", "examples": ["73446d61-2206-4ea5-855a-0043f980be62"], "readOnly": true, "type": "string"}, "ecm_api_key": {"description": "Cradlepoint ECM API key paired with the ECM API ID", "examples": ["68b329da9893e34099c7d8ad5cb9c940"], "format": "password", "readOnly": true, "type": "string"}, "enable_lldp": {"description": "Whether Mist uses Cradlepoint LLDP data to link routers to Mist sites and devices", "readOnly": true, "type": "boolean"}}, "readOnly": true, "type": "object"}, "org_setting_device_cert": {"additionalProperties": false, "description": "Optional common device certificate configuration for organization settings", "properties": {"cert": {"description": "PEM-encoded common device certificate used by organization settings", "examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}, "key": {"description": "Private key paired with the common device certificate", "examples": ["-----BEGIN PRI..."], "type": "string"}}, "type": "object"}, "org_setting_gateway_mgmt": {"additionalProperties": false, "description": "Organization-level gateway management settings", "properties": {"app_probing": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_app_probing", "description": "Application probing configuration applied to managed gateways"}, "app_usage": {"description": "For SRX only, whether gateway application usage collection is enabled; requires App Track license", "type": "boolean"}, "fips_enabled": {"default": false, "description": "Whether FIPS mode is enabled for managed gateways", "type": "boolean"}, "host_in_policies": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_host_in_policies", "description": "Host-in access policies for gateway management services such as ICMP and SNMP"}, "host_out_policies": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_host_out_policies", "description": "Path preference policies for gateway-originated management traffic"}, "overlay_ip": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_overlay_ip", "description": "Overlay IP addresses used when gateway management traffic uses the overlay"}}, "type": "object"}, "org_setting_gateway_mgmt_app_probing": {"additionalProperties": false, "description": "Application probing settings for organization gateway management", "properties": {"apps": {"$ref": "#/components/schemas/app_probing_apps", "description": "Predefined application keys to probe from managed gateways"}}, "type": "object"}, "org_setting_gateway_mgmt_host_in_policies": {"additionalProperties": false, "description": "Host-in access policies for gateway management services", "properties": {"icmp": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_host_in_policy", "description": "Host-in access policy for ICMP traffic to managed gateways"}, "snmp": {"$ref": "#/components/schemas/org_setting_gateway_mgmt_host_in_policy", "description": "Host-in access policy for SNMP traffic to managed gateways"}}, "type": "object"}, "org_setting_gateway_mgmt_host_in_policy": {"additionalProperties": false, "description": "Host-in access policy for a gateway management service", "properties": {"tenants": {"$ref": "#/components/schemas/strings", "description": "Tenant names this host-in policy applies to"}}, "type": "object"}, "org_setting_gateway_mgmt_host_out_policies": {"additionalProperties": false, "description": "Optional path preferences for gateway-originated management traffic; ECMP is used across available paths when no preference is specified", "properties": {"dns": {"$ref": "#/components/schemas/gateway_mgmt_host_out_policy", "description": "Path preference policy for gateway-originated DNS traffic"}, "ntp": {"$ref": "#/components/schemas/gateway_mgmt_host_out_policy", "description": "Path preference policy for gateway-originated NTP traffic"}, "syslog": {"$ref": "#/components/schemas/gateway_mgmt_host_out_policy_syslog", "description": "Path preference policy for gateway-originated syslog traffic"}}, "type": "object"}, "org_setting_gateway_mgmt_overlay_ip": {"additionalProperties": false, "description": "Overlay IP configuration used for gateway management traffic", "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"}, "org_setting_installer": {"additionalProperties": false, "description": "Organization-level permissions and grace period for installer workflows", "properties": {"allow_all_devices": {"description": "Whether installers may work with all eligible devices", "type": "boolean"}, "allow_all_sites": {"description": "Whether installers may work with all sites", "type": "boolean"}, "extra_site_ids": {"$ref": "#/components/schemas/org_setting_installer_extra_site_ids", "description": "Additional site IDs that installers may access"}, "grace_period": {"description": "Grace period, in days, during which installers can modify recent sites or devices", "type": "integer"}}, "type": "object"}, "org_setting_installer_extra_site_ids": {"description": "Additional site IDs that installers may access", "items": {"examples": ["4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "format": "uuid", "type": "string"}, "type": "array"}, "org_setting_jcloud": {"additionalProperties": false, "description": "JCloud integration settings for this Mist organization", "properties": {"org_apitoken": {"description": "JCloud organization API token used by this Mist organization", "type": "string"}, "org_apitoken_name": {"description": "Display name for the JCloud organization API token", "type": "string"}, "org_id": {"description": "JCloud organization identifier linked to this Mist organization", "type": "string"}}, "type": "object"}, "org_setting_jcloud_ra": {"additionalProperties": false, "description": "JCloud Routing Assurance connexion", "properties": {"org_apitoken": {"description": "JCloud Routing Assurance Org Token", "type": "string"}, "org_apitoken_name": {"description": "JCloud Routing Assurance Org Token Name", "type": "string"}, "org_id": {"description": "JCloud Routing Assurance Org ID", "type": "string"}}, "type": "object"}, "org_setting_juniper_srx": {"additionalProperties": false, "description": "Organization settings for Juniper SRX devices", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/juniper_srx_auto_upgrade", "description": "SRX auto-upgrade settings applied when Juniper SRX devices are first onboarded"}}, "type": "object"}, "org_setting_junos_shell_access": {"additionalProperties": false, "description": "junos_shell_access: Manages role-based web-shell access. \nWhen junos_shell access is not defined (Default) - No additional users are configured and web-shell uses default `mist` user to login. \nWhen junos_shell_access is defined - Additional users mist-web-admin (admin permission), mist-web-viewer(viewer permission) are configured on the device and web-shell logs in with the mist-web-admin/mist-web-viewer user depending upon the shell access level. Setting the shell access level to \"none\", disables web-shell access for that specific role.\n", "properties": {"admin": {"$ref": "#/components/schemas/org_setting_junos_shell_access_admin", "description": "Shell access level used for administrator web-shell sessions"}, "helpdesk": {"$ref": "#/components/schemas/org_setting_junos_shell_access_helpdesk", "description": "Shell access level used for helpdesk web-shell sessions"}, "read": {"$ref": "#/components/schemas/org_setting_junos_shell_access_read", "description": "Shell access level used for read-only web-shell sessions"}, "write": {"$ref": "#/components/schemas/org_setting_junos_shell_access_write", "description": "Shell access level used for write-role web-shell sessions"}}, "type": "object"}, "org_setting_junos_shell_access_admin": {"default": "admin", "description": "enum: `admin`, `viewer`, `none`", "enum": ["admin", "none", "viewer"], "type": "string"}, "org_setting_junos_shell_access_helpdesk": {"default": "none", "description": "enum: `admin`, `viewer`, `none`", "enum": ["admin", "none", "viewer"], "type": "string"}, "org_setting_junos_shell_access_read": {"default": "none", "description": "enum: `admin`, `viewer`, `none`", "enum": ["admin", "none", "viewer"], "type": "string"}, "org_setting_junos_shell_access_write": {"default": "admin", "description": "enum: `admin`, `viewer`, `none`", "enum": ["admin", "none", "viewer"], "type": "string"}, "org_setting_marvis": {"additionalProperties": false, "description": "Organization settings for Marvis automation", "properties": {"disable_proactive_monitoring": {"default": false, "description": "Disable proactive monitoring in Marvis. NOTE: support access must be enabled for the org (`allow_mist`=`true`) for proactive monitoring to function.", "type": "boolean"}, "self_driving": {"$ref": "#/components/schemas/marvis_self_driving", "description": "Self-driving network automation settings by domain"}}, "type": "object"}, "org_setting_mgmt": {"additionalProperties": false, "description": "Organization management connectivity settings", "properties": {"mxtunnel_ids": {"$ref": "#/components/schemas/org_setting_mgmt_mxtunnel_ids", "description": "Mist Tunnel IDs selected for management connectivity"}, "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"}, "org_setting_mgmt_mxtunnel_ids": {"description": "Mist Tunnel IDs available for organization management connectivity", "items": {"examples": ["08cd7499-5841-51c8-e663-fb16b6f3b45e"], "format": "uuid", "type": "string"}, "type": "array"}, "org_setting_mist_nac": {"additionalProperties": false, "description": "Organization-level Mist NAC configuration", "properties": {"allow_teap_machine_auth_only": {"default": false, "description": "allow clients to connect even when the user cert failed. TEAP authenticates both Machine Cert and User Cert. When enabled, clients who only succeed Machine Cert authentication will be accepted.", "type": "boolean"}, "cacerts": {"$ref": "#/components/schemas/cacerts", "description": "CA certificates trusted by Mist NAC for certificate-based authentication"}, "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"}, "disable_rsae_algorithms": {"default": false, "description": "to disable RSAE_PSS_SHA256, RSAE_PSS_SHA384, RSAE_PSS_SHA512 from server side. see https://www.openssl.org/docs/man3.0/man1/openssl-ciphers.html", "type": "boolean"}, "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 compliance 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, Mist Edge clusters that have mist_nac enabled", "type": "boolean"}, "fingerprinting": {"$ref": "#/components/schemas/org_setting_mist_nac_fingerprinting", "description": "Client fingerprinting settings used by Mist NAC"}, "idp_machine_cert_lookup_field": {"$ref": "#/components/schemas/idp_machine_cert_lookup_field", "description": "Client certificate field used to look up machine groups in identity providers"}, "idp_user_cert_lookup_field": {"$ref": "#/components/schemas/idp_user_cert_lookup_field", "description": "Client certificate field used to look up user groups in identity providers"}, "idps": {"$ref": "#/components/schemas/org_setting_mist_nac_idps", "description": "Identity provider mappings used by Mist NAC realm matching"}, "mdm": {"$ref": "#/components/schemas/org_setting_mist_nac_mdm", "description": "Mobile Device Management CoA settings for Mist NAC"}, "server_cert": {"$ref": "#/components/schemas/org_setting_mist_nac_server_cert", "description": "RADIUS server certificate presented by Mist NAC during EAP-TLS"}, "use_ip_version": {"$ref": "#/components/schemas/org_setting_mist_nac_ip_version", "description": "IP version used by NAS devices and Mist Edge proxies to reach Mist NAC"}, "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. Set `use_ssl_port`==`true` to override that port with TCP43 (ssl), This is an org level setting that is applicable to wlans, switch_templates, and mxedge_clusters that have mist-nac enabled", "type": "boolean"}, "usermac_expiry": {"default": 0, "description": "Allow customer to configure an expiry time for usermacs by attaching a Quarantine label to those which have been inactive for the configured period of time (in days). 0 means no expiry", "examples": [30], "maximum": 1095, "minimum": 0, "type": "integer"}}, "type": "object"}, "org_setting_mist_nac_fingerprinting": {"additionalProperties": false, "description": "Client fingerprinting settings used for Mist NAC policy enforcement", "properties": {"enabled": {"default": false, "description": "enable/disable writes to NAC DDB fingerprint table", "type": "boolean"}, "generate_coa": {"default": false, "description": "enable/disable CoA triggers on fingerprint change for wired clients, always port-bounce", "type": "boolean"}, "generate_wireless_coa": {"default": false, "description": "enable/disable CoA triggers on fingerprint change for wireless clients", "type": "boolean"}, "wireless_coa_type": {"$ref": "#/components/schemas/org_setting_mist_nac_fingerprinting_wireless_coa", "description": "Change of Authorization action sent to wireless clients when fingerprints change"}}, "type": "object"}, "org_setting_mist_nac_fingerprinting_wireless_coa": {"description": "Change of Authorization action sent to wireless clients when fingerprints change. enum: `reauth`, `disconnect`", "enum": ["reauth", "disconnect"], "type": "string"}, "org_setting_mist_nac_idp": {"additionalProperties": false, "description": "Mist NAC identity provider realm mapping", "properties": {"exclude_realms": {"$ref": "#/components/schemas/org_setting_mist_nac_idp_exclude_realms", "description": "When the IDP is `mxedge_proxy` type, realms excluded from proxying in addition to other valid home realms in this org"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the identity provider referenced by this Mist NAC mapping"}, "user_realms": {"$ref": "#/components/schemas/org_setting_mist_nac_idp_user_realms", "description": "User realms that select this identity provider"}}, "type": "object"}, "org_setting_mist_nac_idp_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"}, "org_setting_mist_nac_idp_user_realms": {"description": "Which realm should trigger this IDP. User Realm is extracted from:\n * Username-AVP (`mist.com` from john@mist.com)\n * Cert CN", "items": {"examples": ["abc"], "type": "string"}, "type": "array"}, "org_setting_mist_nac_idps": {"description": "Identity provider realm mappings used by Mist NAC", "items": {"$ref": "#/components/schemas/org_setting_mist_nac_idp"}, "type": "array"}, "org_setting_mist_nac_ip_version": {"default": "v4", "description": "by default, NAS devices(switches/aps) and proxies(mxedge) are configured to reach mist-nac via IPv4. enum: `v4`, `v6`", "enum": ["v4", "v6"], "type": "string"}, "org_setting_mist_nac_mdm": {"additionalProperties": false, "description": "MDM (Mobile Device Management) CoA configuration", "properties": {"coa_type": {"$ref": "#/components/schemas/nac_coa_type", "description": "Change of Authorization action sent for MDM posture changes"}}, "type": "object"}, "org_setting_mist_nac_server_cert": {"additionalProperties": false, "description": "RADIUS server certificate presented by Mist NAC during EAP-TLS", "properties": {"cert": {"description": "PEM-encoded RADIUS server certificate presented during EAP-TLS", "examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}, "key": {"description": "Private key paired with the Mist NAC RADIUS server certificate", "examples": ["-----BEGIN PRI..."], "format": "password", "type": "string"}, "password": {"description": "Optional password for the private key", "format": "password", "type": "string"}}, "type": "object"}, "org_setting_password_policy": {"additionalProperties": false, "description": "Admin credential policy settings for the organization", "properties": {"enabled": {"default": false, "description": "Whether the policy is enabled", "type": "boolean"}, "expiry_in_days": {"description": "Password expiry in days. Password Expiry Notice banner will display in the UI 14 days before expiration", "examples": [60], "maximum": 365, "minimum": 1, "type": "integer"}, "min_length": {"default": 8, "description": "Minimum number of characters required for passwords", "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"}, "org_setting_pcap": {"additionalProperties": false, "description": "Packet capture export settings for the organization", "properties": {"bucket": {"description": "Storage bucket name used for organization packet capture files", "examples": ["myorg_pcap"], "type": "string"}, "max_pkt_len": {"default": 128, "description": "Maximum length of non-management packets to capture, in bytes", "examples": [128], "maximum": 128, "type": "integer"}}, "type": "object"}, "org_setting_scep": {"description": "Mist SCEP settings for certificate enrollment", "properties": {"cert_providers": {"$ref": "#/components/schemas/org_setting_scep_cert_providers", "description": "Certificate providers enabled for Mist SCEP"}, "enable": {"description": "Whether SCEP is enabled for this org", "type": "boolean"}, "suspended": {"default": false, "description": "Whether SCEP is suspended for this org", "type": "boolean"}}, "type": "object"}, "org_setting_scep_cert_provider": {"description": "enum: `intune`, `jamf`, `byod`", "enum": ["intune", "jamf", "byod"], "type": "string"}, "org_setting_scep_cert_providers": {"description": "List of SCEP cert providers, e.g. `intune`, `jamf`, `byod`", "items": {"$ref": "#/components/schemas/org_setting_scep_cert_provider"}, "type": "array"}, "org_setting_scep_response": {"additionalProperties": false, "description": "Read-only Mist SCEP settings returned for the organization", "properties": {"cert_providers": {"$ref": "#/components/schemas/org_setting_scep_cert_providers", "description": "Certificate providers configured for Mist SCEP"}, "enabled": {"description": "Whether Mist SCEP is enabled for this organization", "readOnly": true, "type": "boolean"}, "intune_scep_url": {"description": "Intune SCEP enrollment URL for this organization", "examples": ["https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep"], "readOnly": true, "type": "string"}, "jamf_access_token": {"description": "Access token used by Jamf to call Mist SCEP", "examples": ["1Z4QqEnCt05Jjt3TV5LgPJ4V_WL_RWnJ7dqVMLYHj81="], "readOnly": true, "type": "string"}, "jamf_scep_url": {"description": "Jamf SCEP enrollment URL for this organization", "examples": ["https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep"], "readOnly": true, "type": "string"}, "jamf_webhook_url": {"description": "Jamf webhook URL for SCEP status callbacks", "examples": ["https://scep.mistsys.com/api/v1/webhook/jamf/:org_id/scep"], "readOnly": true, "type": "string"}, "suspended": {"default": false, "description": "Whether SCEP is suspended for this org", "type": "boolean"}}, "type": "object"}, "org_setting_security": {"additionalProperties": false, "description": "Organization security controls for local SSH and FIPS zeroize access", "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", "examples": ["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"}, "org_setting_switch": {"additionalProperties": false, "description": "Configuration defaults for switches in this organization", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/switch_auto_upgrade", "description": "Auto-upgrade defaults for switches in this organization"}}, "type": "object"}, "org_setting_switch_mgmt": {"additionalProperties": false, "description": "Organization-level switch management settings", "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.", "examples": [10], "type": "integer"}}, "type": "object"}, "org_setting_tags": {"description": "Labels associated with these organization settings", "items": {"type": "string"}, "type": "array"}, "org_setting_vpn_options": {"additionalProperties": false, "description": "Organization VPN behavior options", "properties": {"as_base": {"description": "Base BGP autonomous system number used for generated VPN configurations", "maximum": 2147483647, "minimum": 1, "type": "integer"}, "enable_ipv6": {"default": false, "description": "Whether IPv6 is enabled for organization VPN configuration", "type": "boolean"}, "st_subnet": {"default": "10.224.0.0/12", "description": "requiring /12 or bigger to support 16 private IPs for 65535 gateways", "type": "string"}}, "type": "object"}, "org_setting_wan_pma": {"additionalProperties": false, "description": "PMA feature settings for WAN Assurance", "properties": {"enabled": {"default": false, "description": "Whether PMA is enabled for WAN Assurance", "type": "boolean"}}, "type": "object"}, "org_setting_wired_pma": {"additionalProperties": false, "description": "PMA feature settings for Wired Assurance", "properties": {"enabled": {"default": false, "description": "Whether PMA is enabled for Wired Assurance", "type": "boolean"}}, "type": "object"}, "org_setting_wireless_pma": {"additionalProperties": false, "description": "PMA feature settings for Wireless Assurance", "properties": {"enabled": {"default": true, "description": "Whether PMA is enabled for Wireless Assurance", "type": "boolean"}}, "type": "object"}, "org_site_sle_type": {"description": "enum: `wan`, `wifi`, `wired`", "enum": ["wan", "wifi", "wired"], "type": "string"}, "org_site_sle_wan_result": {"additionalProperties": false, "description": "WAN SLE scores and counts for one site", "properties": {"application_health": {"description": "Application health SLE score for this site", "type": "number"}, "gateway-health": {"description": "Gateway health SLE score for this site", "type": "number"}, "num_clients": {"description": "Number of WAN clients included in this site result", "type": "number"}, "num_gateways": {"description": "Number of gateways included in this site result", "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this WAN SLE result"}, "wan-link-health": {"description": "WAN link health SLE score for this site", "type": "number"}}, "required": ["site_id", "gateway-health"], "type": "object"}, "org_site_sle_wan_results": {"description": "WAN SLE results returned for organization sites", "items": {"$ref": "#/components/schemas/org_site_sle_wan_result"}, "type": "array", "uniqueItems": true}, "org_site_sle_wifi": {"additionalProperties": false, "description": "Paginated Wi-Fi SLE results for organization sites", "properties": {"end": {"description": "Query end timestamp for the returned SLE window", "type": "number"}, "interval": {"description": "Aggregation interval, in seconds, used for the SLE query", "type": "integer"}, "limit": {"description": "Maximum number of site results returned per page", "type": "integer"}, "page": {"description": "Result page number returned by the query", "type": "integer"}, "results": {"$ref": "#/components/schemas/org_site_sle_wifi_results", "description": "Wi-Fi SLE results for the current page"}, "start": {"description": "Query start timestamp for the returned SLE window", "type": "number"}, "total": {"description": "Number of matching site results available for the query", "type": "integer"}}, "required": ["start", "end", "interval", "limit", "page", "total", "results"], "type": "object"}, "org_site_sle_wifi_result": {"additionalProperties": false, "description": "Wi-Fi SLE scores and counts for one site", "properties": {"ap-availability": {"description": "AP availability SLE score for this site", "type": "number"}, "ap-health": {"description": "AP health SLE score for this site", "type": "number"}, "capacity": {"description": "Wi-Fi capacity SLE score for this site", "type": "number"}, "coverage": {"description": "Wi-Fi coverage SLE score for this site", "type": "number"}, "num_aps": {"description": "Number of APs included in this site result", "type": "number"}, "num_clients": {"description": "Number of Wi-Fi clients included in this site result", "type": "number"}, "roaming": {"description": "Wi-Fi roaming SLE score for this site", "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this Wi-Fi SLE result"}, "successful-connect": {"description": "Successful connection SLE score for this site", "type": "number"}, "throughput": {"description": "Wi-Fi throughput SLE score for this site", "type": "number"}, "time-to-connect": {"description": "Client connection-time SLE score for this site", "type": "number"}}, "required": ["site_id", "ap-availability"], "type": "object"}, "org_site_sle_wifi_results": {"description": "Wi-Fi SLE results returned for organization sites", "items": {"$ref": "#/components/schemas/org_site_sle_wifi_result"}, "type": "array", "uniqueItems": true}, "org_site_sle_wired_result": {"additionalProperties": false, "description": "Wired SLE scores and counts for one site", "properties": {"num_clients": {"description": "Number of wired clients included in this site result", "type": "number"}, "num_switches": {"description": "Number of switches included in this site result", "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this wired SLE result"}, "switch-bandwidth": {"description": "Switch bandwidth SLE score for this site", "type": "number"}, "switch-health": {"description": "Switch health SLE score for this site", "type": "number"}, "switch-throughput": {"description": "Switch throughput SLE score for this site", "type": "number"}}, "required": ["site_id", "switch-health"], "type": "object"}, "org_site_sle_wired_results": {"description": "Wired SLE results returned for organization sites", "items": {"$ref": "#/components/schemas/org_site_sle_wired_result"}, "type": "array", "uniqueItems": true}, "org_site_wan_wifi": {"additionalProperties": false, "description": "Paginated WAN SLE results for organization sites", "properties": {"end": {"description": "Query end timestamp for the returned SLE window", "type": "number"}, "interval": {"description": "Aggregation interval, in seconds, used for the SLE query", "type": "integer"}, "limit": {"description": "Maximum number of site results returned per page", "type": "integer"}, "page": {"description": "Result page number returned by the query", "type": "integer"}, "results": {"$ref": "#/components/schemas/org_site_sle_wan_results", "description": "WAN SLE results for the current page"}, "start": {"description": "Query start timestamp for the returned SLE window", "type": "number"}, "total": {"description": "Number of matching site results available for the query", "type": "integer"}}, "required": ["start", "end", "interval", "limit", "page", "total", "results"], "type": "object"}, "org_site_wired_wifi": {"additionalProperties": false, "description": "Paginated wired SLE results for organization sites", "properties": {"end": {"description": "Query end timestamp for the returned SLE window", "type": "number"}, "interval": {"description": "Aggregation interval, in seconds, used for the SLE query", "type": "integer"}, "limit": {"description": "Maximum number of site results returned per page", "type": "integer"}, "page": {"description": "Result page number returned by the query", "type": "integer"}, "results": {"$ref": "#/components/schemas/org_site_sle_wired_results", "description": "Wired SLE results for the current page"}, "start": {"description": "Query start timestamp for the returned SLE window", "type": "number"}, "total": {"description": "Number of matching site results available for the query", "type": "integer"}}, "required": ["start", "end", "interval", "limit", "page", "total", "results"], "type": "object"}, "org_sites_count_distinct": {"default": "id", "description": "enum: `analytic_enabled`, `app_waking`, `asset_enabled`, `auto_upgrade_enabled`, `auto_upgrade_version`, `country_code`, `honeypot_enabled`, `id`, `locate_unconnected`, `mesh_enabled`, `name`, `remote_syslog_enabled`, `rogue_enabled`, `rtsa_enabled`, `vna_enabled`, `wifi_enabled`", "enum": ["analytic_enabled", "app_waking", "asset_enabled", "auto_upgrade_enabled", "auto_upgrade_version", "country_code", "honeypot_enabled", "id", "locate_unconnected", "mesh_enabled", "name", "remote_syslog_enabled", "rogue_enabled", "rtsa_enabled", "vna_enabled", "wifi_enabled"], "type": "string"}, "org_ssl_proxy_cert": {"additionalProperties": false, "description": "SSL proxy certificate returned for the organization", "properties": {"cert": {"description": "PEM-encoded SSL proxy certificate for the organization", "examples": ["-----BEGIN CERTIFICATE-----\\nMIIowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}}, "type": "object"}, "org_system_event": {"additionalProperties": false, "description": "Organization system event record", "properties": {"change_cat": {"description": "Category of configuration or administrative change for the event", "examples": ["admin_action"], "type": "string"}, "metadata": {"description": "JSON-encoded event metadata, such as affected object IDs and admin details", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization where the system event occurred"}, "scope": {"description": "Event scope, such as organization or site", "examples": ["org"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the event, when the event is site-scoped"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when the system event occurred"}, "type": {"description": "System event type, such as `add-wlan` or `delete-wlan`", "examples": ["delete-wlan"], "type": "string"}}, "type": "object"}, "org_tickets_count_distinct": {"default": "status", "description": "Distinct field used when counting organization tickets. enum: `status`, `type`", "enum": ["status", "type"], "type": "string"}, "org_tunnel_count_distinct": {"default": "wxtunnel_id", "description": "enum: `ap`, `auth_algo`, `encrypt_algo`, `ike_version`, `ip`, `last_event`, `mac`, `mxcluster_id`, `mxedge_id`, `node`, `peer_host`, `peer_ip`, `peer_mxedge_id`, `protocol`, `remote_ip`, `remote_port`, `site_id`, `state`, `tunnel_name`, `up`, `wxtunnel_id`", "enum": ["ap", "auth_algo", "encrypt_algo", "ike_version", "ip", "last_event", "mac", "mxcluster_id", "mxedge_id", "node", "peer_host", "peer_ip", "peer_mxedge_id", "protocol", "remote_ip", "remote_port", "site_id", "state", "tunnel_name", "up", "wxtunnel_id"], "type": "string"}, "org_tunnel_type_count": {"default": "wxtunnel", "description": "Tunnel type used when counting organization tunnels. enum: `wan`, `wxtunnel`", "enum": ["wan", "wxtunnel"], "type": "string"}, "org_ui_settings": {"description": "Organization UI settings databoard", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the databoard was created"}, "description": {"description": "Text describing the databoard", "examples": ["This databoard shows AP stats"], "type": "string"}, "for_site": {"description": "Whether this databoard is scoped to a site", "examples": [false], "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the databoard"}, "isCustomDataboard": {"description": "Whether this is a custom databoard or not", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the databoard was last modified"}, "name": {"description": "Display name of the databoard", "examples": ["AP Stats"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the databoard"}, "purpose": {"$ref": "#/components/schemas/org_ui_settings_purpose", "description": "UI surface or purpose for this databoard"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the databoard when `for_site` is true"}, "tiles": {"$ref": "#/components/schemas/org_ui_settings_tiles", "description": "Configured tiles for the databoard"}}, "type": "object"}, "org_ui_settings_list": {"description": "List of organization UI databoards", "items": {"$ref": "#/components/schemas/org_ui_settings"}, "type": "array"}, "org_ui_settings_purpose": {"description": "UI surface or purpose for this databoard. enum: `marvisdashboard`", "enum": ["marvisdashboard"], "type": "string"}, "org_ui_settings_tile": {"additionalProperties": false, "description": "Tile shown on an organization UI databoard", "properties": {"description": {"description": "Text describing the databoard tile", "examples": ["This tile shows the top 10 APs by bandwidth"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the databoard tile"}, "isAutoTitle": {"description": "Whether the tile title is auto generated or not", "type": "boolean"}, "name": {"description": "Display name of the databoard tile", "examples": ["Top 10 APs by Bandwidth"], "type": "string"}, "nl_query": {"description": "Natural Language query for the tile", "examples": ["List top 10 APs by bandwidth"], "type": "string"}, "position": {"$ref": "#/components/schemas/org_ui_settings_tile_position", "description": "Grid position and span for the databoard tile"}}, "type": "object"}, "org_ui_settings_tile_position": {"additionalProperties": false, "description": "Grid position for a databoard tile", "properties": {"col": {"description": "Grid column index for the tile", "examples": [1], "type": "integer"}, "colSpan": {"description": "Grid column span for the tile", "examples": [5], "type": "integer"}, "row": {"description": "Grid row index for the tile", "examples": [1], "type": "integer"}, "rowSpan": {"description": "Grid row span for the tile", "examples": [2], "type": "integer"}}, "type": "object"}, "org_ui_settings_tiles": {"description": "List of tiles in the databoard", "items": {"$ref": "#/components/schemas/org_ui_settings_tile"}, "type": "array"}, "org_wan_clients_count_distinct": {"default": "mac", "description": "enum: `hostname`, `ip`, `mac`, `mfg`, `network`", "enum": ["hostname", "ip", "mac", "mfg", "network"], "type": "string"}, "org_wan_clients_events_count_distinct": {"default": "type", "description": "enum: `hostname`, `ip`, `mac`, `mfg`, `type`", "enum": ["hostname", "ip", "mac", "mfg", "type"], "type": "string"}, "org_wired_clients_count_distinct": {"default": "mac", "description": "enum: `device_mac`, `mac`, `port_id`, `site_id`, `type`, `vlan`", "enum": ["device_mac", "mac", "port_id", "site_id", "type", "vlan"], "type": "string"}, "orggroup": {"description": "MSP organization group containing related organizations", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the organization group was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the organization group"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the organization group was last modified"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "MSP account that owns the organization group"}, "name": {"description": "Display name of the organization group", "type": "string"}, "org_ids": {"$ref": "#/components/schemas/orggroup_org_ids", "description": "Organizations included in this organization group"}}, "required": ["name"], "type": "object"}, "orggroup_id": {"description": "Unique identifier of an MSP organization group", "examples": ["832b1d74-9531-409b-ae37-4d7f3edbde92"], "format": "uuid", "type": "string"}, "orggroup_ids": {"description": "List of organization group identifiers", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "orggroup_list": {"description": "List of MSP organization groups", "items": {"$ref": "#/components/schemas/orggroup"}, "type": "array"}, "orggroup_org_ids": {"description": "List of organization identifiers included in an organization group", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "ospf_area": {"additionalProperties": false, "description": "Property key is the OSPF Area (Area should be a number (0-255) / IP address)", "properties": {"include_loopback": {"default": false, "description": "Whether loopback interfaces are included in this OSPF area", "type": "boolean"}, "networks": {"additionalProperties": {"$ref": "#/components/schemas/ospf_areas_network"}, "description": "OSPF network settings keyed by network name", "examples": [{"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": {"$ref": "#/components/schemas/ospf_area_type", "description": "Area type for this OSPF area"}}, "type": "object"}, "ospf_area_network_auth_type": {"default": "none", "description": "auth type. enum: `md5`, `none`, `password`", "enum": ["md5", "none", "password"], "examples": ["md5"], "type": "string"}, "ospf_area_network_interface_type": {"default": "broadcast", "description": "interface type (nbma = non-broadcast multi-access). enum: `broadcast`, `nbma`, `p2mp`, `p2p`", "enum": ["broadcast", "nbma", "p2mp", "p2p"], "type": "string"}, "ospf_area_type": {"default": "default", "description": "OSPF type. enum: `default`, `nssa`, `stub`", "enum": ["default", "nssa", "stub"], "examples": ["default"], "type": "string"}, "ospf_areas": {"additionalProperties": {"$ref": "#/components/schemas/ospf_area"}, "description": "Junos OSPF areas. Property key is the OSPF Area (Area should be a number (0-255) / IP address)", "type": "object"}, "ospf_areas_network": {"additionalProperties": false, "description": "Property key is the network name. Networks to participate in an OSPF area", "properties": {"auth_keys": {"additionalProperties": {"type": "string"}, "description": "Required if `auth_type`==`md5`. Property key is the key number", "examples": [{"1": "auth-key-1"}], "type": "object"}, "auth_password": {"description": "Required if `auth_type`==`password`, the password, max length is 8", "examples": ["simple"], "type": "string"}, "auth_type": {"$ref": "#/components/schemas/ospf_area_network_auth_type", "description": "Authentication method used by this OSPF network"}, "bfd_minimum_interval": {"description": "Minimum BFD interval for this OSPF network, in milliseconds", "examples": [500], "maximum": 255000, "minimum": 1, "type": "integer"}, "dead_interval": {"description": "OSPF dead interval for this network, in seconds", "examples": [40], "maximum": 65535, "minimum": 1, "type": "integer"}, "export_policy": {"description": "Routing policy used to export routes from this OSPF network", "examples": ["export_policy"], "type": "string"}, "hello_interval": {"description": "OSPF hello interval for this network, in seconds", "maximum": 255, "minimum": 1, "type": "integer"}, "import_policy": {"description": "Routing policy used to import routes for this OSPF network", "examples": ["import_policy"], "type": "string"}, "interface_type": {"$ref": "#/components/schemas/ospf_area_network_interface_type", "description": "OSPF interface type used for this network"}, "metric": {"description": "OSPF metric assigned to this network", "examples": [10000], "maximum": 65535, "minimum": 1, "type": ["integer", "null"]}, "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"}, "ospf_peer_stats_count_distinct": {"description": "enum: `site_id`, `org_id`, `mac`, `peer_ip`, `port_id`, `state`, `vrf_name`", "enum": ["site_id", "org_id", "mac", "peer_ip", "port_id", "state", "vrf_name"], "type": "string"}, "ospf_peer_stats_search_result": {"additionalProperties": false, "description": "Paginated OSPF peer statistics search result", "properties": {"end": {"description": "Query end timestamp for the OSPF peer statistics search", "examples": [1711035686], "type": "integer"}, "limit": {"description": "Maximum number of OSPF peer statistics returned per page", "examples": [10], "type": "integer"}, "next": {"description": "URL for the next page of OSPF peer statistics, when available", "type": "string"}, "results": {"$ref": "#/components/schemas/ospf_peer_stats_search_results", "description": "OSPF peer statistic records returned for the current page"}, "start": {"description": "Query start timestamp for the OSPF peer statistics search", "examples": [1710949286], "type": "integer"}, "total": {"description": "Number of OSPF peer statistic records matching the search", "examples": [232], "type": "integer"}}, "type": "object"}, "ospf_peer_stats_search_results": {"description": "List of OSPF peer statistic records", "items": {"$ref": "#/components/schemas/ospf_peer_stats_search_results_items"}, "type": "array"}, "ospf_peer_stats_search_results_items": {"additionalProperties": false, "description": "OSPF peer statistic record reported by a router", "properties": {"dead_time": {"description": "Seconds remaining before the neighbor is considered inactive", "type": "integer"}, "mac": {"description": "Router MAC address of the device advertising the OSPF peer", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier of the router reporting the peer state"}, "peer_ip": {"description": "IP address of the OSPF neighbor", "type": "string"}, "port_id": {"description": "Interface on which the OSPF neighbor is learned", "type": "string"}, "priority": {"description": "OSPF priority advertised by the neighbor, from 0 to 255", "maximum": 255, "minimum": 0, "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier of the router reporting the peer state"}, "state": {"description": "Eg. full, down, 2way, init, exstart, exchange, loading", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Sampling time (in epoch seconds)"}, "up": {"description": "True if state is full", "type": "boolean"}, "vrf_name": {"description": "Instance name, e.g. master", "type": "string"}}, "type": "object"}, "other_device_update": {"description": "Manual site association update for one other device", "properties": {"device_mac": {"description": "Other-device MAC address to associate with a site", "type": "string"}, "site_id": {"description": "Site ID to associate with the other device", "examples": ["43e9c864-a7e4-4310-8031-d9817d2c5a43"], "format": "uuid", "type": "string"}}, "type": "object"}, "other_device_update_multi": {"description": "Bulk site assignment update for other devices", "properties": {"macs": {"$ref": "#/components/schemas/other_device_update_multi_macs", "description": "Other-device MAC addresses included in the bulk update"}, "op": {"$ref": "#/components/schemas/other_device_update_operation", "description": "Action to perform on the other devices"}, "site_id": {"description": "Site ID used when assigning other devices", "format": "uuid", "type": "string"}}, "required": ["op"], "type": "object"}, "other_device_update_multi_macs": {"description": "Other-device MAC addresses included in the bulk update", "items": {"type": "string"}, "type": "array"}, "other_device_update_operation": {"description": "The operation being performed. enum: `assign`, `unassign`", "enum": ["assign", "unassign"], "type": "string"}, "pcap_bucket": {"description": "Request to configure a custom packet capture bucket", "properties": {"bucket": {"description": "Customer bucket name to use for packet capture files", "examples": ["company-private-pcap"], "type": "string"}}, "required": ["bucket"], "type": "object"}, "pcap_bucket_verify": {"description": "Request to verify ownership of a custom packet capture bucket", "properties": {"bucket": {"description": "Customer bucket name being verified for packet capture storage", "examples": ["company-private-pcap"], "type": "string"}, "verify_token": {"description": "Token read from the MIST_TOKEN file written during bucket setup", "examples": ["eyJhbGciOiJIUzI1J9.eyJzdWIiOiIxMjM0joiMjgxOG5MDIyfQ.2rzcRvMA3Eg09NnjCAC-1EWMRtxAnFDM"], "type": "string"}}, "required": ["bucket", "verify_token"], "type": "object"}, "pcap_type": {"description": "enum: `client`, `gateway`, `new_assoc`, `radiotap`, `radiotap,wired`, `wired`, `wireless`", "enum": ["client", "gateway", "new_assoc", "radiotap", "radiotap,wired", "wired", "wireless"], "examples": ["client"], "type": "string"}, "pma_dashboard": {"additionalProperties": false, "description": "PMA dashboard metadata and redirect URL", "properties": {"description": {"description": "Human-readable summary of the PMA dashboard", "examples": ["Dashboard 1 description"], "type": "string"}, "label": {"description": "Group label that categorizes the PMA dashboard", "examples": ["Wireless"], "type": "string"}, "name": {"description": "Display name of the PMA dashboard", "examples": ["dashboard_1"], "type": "string"}, "url": {"description": "Access URL that redirects the user to the PMA dashboard", "examples": ["https://api.mist.com/api/v1/forward/looker?jwt=..."], "type": "string"}}, "type": "object"}, "poe_priority": {"description": "PoE priority. enum: `low`, `high`", "enum": ["low", "high"], "type": "string"}, "port_auth_state": {"description": "Port authentication state. enum: `\"\"`, `authenticated`, `authenticating`, `held`, `init`", "enum": ["", "authenticated", "authenticating", "held", "init"], "type": "string"}, "port_stp_role": {"description": "Spanning Tree Protocol role for the port. enum: `\"\"`, `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`", "enum": ["", "alternate", "backup", "designated", "disabled", "root", "root-prevented"], "type": "string"}, "port_stp_state": {"description": "Spanning Tree Protocol state for the port. enum: `\"\"`, `blocking`, `disabled`, `forwarding`, `learning`, `listening`", "enum": ["", "blocking", "disabled", "forwarding", "learning", "listening"], "type": "string"}, "portal_template_alignment": {"default": "center", "description": "defines alignment on portal. enum: `center`, `left`, `right`", "enum": ["center", "left", "right"], "type": "string"}, "privilege_msp": {"additionalProperties": false, "description": "MSP privilege scope and role settings", "properties": {"org_id": {"description": "If `scope`==`org`, organization ID this MSP privilege applies to", "format": "uuid", "type": "string"}, "org_name": {"description": "Name of the org (for a site belonging to org)", "readOnly": true, "type": "string"}, "orggroup_id": {"description": "If `scope`==`orggroup`, organization group ID this MSP privilege applies to", "format": "uuid", "type": "string"}, "role": {"$ref": "#/components/schemas/privilege_msp_role", "description": "Access role granted by this MSP privilege"}, "scope": {"$ref": "#/components/schemas/privilege_msp_scope", "description": "MSP hierarchy level where this privilege applies"}, "views": {"$ref": "#/components/schemas/admin_privilege_views", "description": "UI views allowed by custom role restrictions"}}, "required": ["role", "scope"], "type": "object"}, "privilege_msp_role": {"description": "access permissions. enum: `admin`, `helpdesk`, `installer`, `read`, `write`", "enum": ["admin", "helpdesk", "installer", "read", "write"], "type": "string"}, "privilege_msp_scope": {"description": "enum: `msp`, `org`, `orggroup`", "enum": ["msp", "org", "orggroup"], "type": "string"}, "privilege_org": {"additionalProperties": false, "description": "Organization privilege scope and role settings", "properties": {"org_id": {"description": "If `scope`==`org`, organization ID this privilege applies to", "format": "uuid", "readOnly": true, "type": "string"}, "role": {"$ref": "#/components/schemas/privilege_org_role", "description": "Access role granted by this organization privilege"}, "scope": {"$ref": "#/components/schemas/privilege_org_scope", "description": "Organization hierarchy level where this privilege applies"}, "site_id": {"description": "If `scope`==`site`, site ID this privilege applies to", "format": "uuid", "type": "string"}, "sitegroup_id": {"description": "If `scope`==`sitegroup`, site group ID this privilege applies to", "format": "uuid", "type": "string"}, "view": {"deprecated": true, "description": "Used for backward compatibility. Use `views` instead.", "type": "string"}, "views": {"$ref": "#/components/schemas/admin_privilege_views", "description": "UI views allowed by custom role restrictions"}}, "required": ["role", "scope"], "type": "object"}, "privilege_org_role": {"description": "access permissions. enum: `admin`, `helpdesk`, `installer`, `read`, `write`", "enum": ["admin", "helpdesk", "installer", "read", "write"], "type": "string"}, "privilege_org_scope": {"description": "enum: `org`, `site`, `sitegroup`, `orgsites`", "enum": ["org", "site", "sitegroup", "orgsites"], "type": "string"}, "protect_re": {"additionalProperties": false, "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": {"$ref": "#/components/schemas/protect_re_allowed_services", "description": "Built-in services explicitly allowed by the Protect RE policy"}, "custom": {"$ref": "#/components/schemas/protect_re_customs", "description": "Additional ACL entries allowed by the Protect RE policy"}, "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"}, "hit_count": {"default": false, "description": "Whether to enable hit count for Protect_RE policy", "type": "boolean"}, "trusted_hosts": {"$ref": "#/components/schemas/protect_re_trusted_hosts", "description": "Trusted host or subnet entries allowed by the Protect RE policy"}}, "type": "object"}, "protect_re_allowed_service": {"description": "Services allowed through protect-RE filters. enum: `icmp`, `ssh`", "enum": ["icmp", "ssh"], "type": "string"}, "protect_re_allowed_services": {"description": "Built-in services explicitly allowed by the Protect RE policy", "examples": [["icmp", "ssh"]], "items": {"$ref": "#/components/schemas/protect_re_allowed_service"}, "type": "array"}, "protect_re_custom": {"additionalProperties": false, "description": "Custom Protect RE ACL entry", "properties": {"port_range": {"default": "0", "description": "Matched dst port, \"0\" means any", "examples": ["80,1035-1040"], "type": "string"}, "protocol": {"$ref": "#/components/schemas/protect_re_custom_protocol", "description": "Transport protocol matched by this custom Protect RE ACL"}, "subnets": {"$ref": "#/components/schemas/protect_re_custom_subnet", "description": "Source subnets matched by this custom Protect RE ACL"}}, "type": "object"}, "protect_re_custom_protocol": {"default": "any", "description": "enum: `any`, `icmp`, `tcp`, `udp`", "enum": ["any", "icmp", "tcp", "udp"], "type": "string"}, "protect_re_custom_subnet": {"description": "Source subnets matched by a custom Protect RE ACL", "items": {"examples": ["10.1.2.0/24"], "type": "string"}, "type": "array"}, "protect_re_customs": {"description": "Custom Protect RE ACL entries", "items": {"$ref": "#/components/schemas/protect_re_custom"}, "type": "array"}, "protect_re_trusted_hosts": {"description": "Host or subnet entries allowed by the Protect RE policy", "items": {"examples": ["10.242.3.0/24"], "type": "string"}, "type": "array"}, "proxy": {"additionalProperties": false, "description": "Proxy Configuration to talk to Mist", "properties": {"disabled": {"default": false, "description": "Whether this proxy configuration is disabled", "examples": [true], "type": "boolean"}, "url": {"description": "Proxy URL used to reach Mist", "examples": ["https://proxy.corp.com:8080/"], "type": "string"}}, "type": "object"}, "psk": {"description": "Personal pre-shared key configuration for WLAN access", "properties": {"admin_sso_id": {"description": "sso id for psk created from psk portal", "readOnly": true, "type": "string"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the PSK was created"}, "email": {"description": "Notification recipient email address for PSK creation notification and expiration reminders", "type": "string"}, "expire_time": {"default": null, "description": "Expire time for this PSK key (epoch time in seconds). Default `null` (as no expiration)", "examples": [1614990263], "type": ["integer", "null"]}, "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": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the PSK"}, "mac": {"description": "If `usage`==`single`, client MAC address this PSK is bound to; empty when auto-binding is used", "type": "string"}, "macs": {"$ref": "#/components/schemas/psk_macs", "description": "Client MAC addresses or MAC patterns allowed when `usage`==`macs`"}, "max_usage": {"default": 0, "description": "For Org PSK Only. Max concurrent users for this PSK key. Default is 0 (unlimited)", "type": "integer"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the PSK was last modified"}, "name": {"description": "Display name of the PSK", "type": "string"}, "note": {"description": "Admin note or description stored with the PSK", "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", "description": "Organization that owns the org-level PSK"}, "passphrase": {"description": "PSK passphrase, 8-63 characters or 64 hexadecimal characters", "format": "password", "maxLength": 64, "minLength": 8, "type": "string"}, "role": {"description": "Client role applied to users authenticated with this PSK", "maxLength": 32, "minLength": 0, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the site-level PSK"}, "ssid": {"description": "WLAN SSID where this PSK can be used", "type": "string"}, "usage": {"$ref": "#/components/schemas/psk_usage", "description": "Binding mode for this PSK, enum: `macs`, `multi`, `single`"}, "vlan_id": {"$ref": "#/components/schemas/psk_vlan_id", "description": "VLAN ID returned for clients using this PSK"}, "vlan_name": {"description": "VLAN name to be assigned. Optional, `vlan_id` takes precedence if both are provided", "type": "string"}}, "required": ["name", "passphrase", "ssid"], "type": "object"}, "psk_id_list": {"description": "PSK delete request payload", "properties": {"psk_ids": {"$ref": "#/components/schemas/psk_id_list_psk_id", "description": "PSK IDs to delete"}}, "type": "object"}, "psk_id_list_psk_id": {"description": "PSK identifiers included in a delete request", "examples": [["0039c16c-ca87-4d3f-bb94-b97c58199f18", "6562cc8e-5893-418a-acaa-4d7c1af8084f"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "psk_list": {"description": "List of personal PSK configurations", "items": {"$ref": "#/components/schemas/psk"}, "type": "array"}, "psk_macs": {"description": "If `usage`==`macs`, this list contains client MAC addresses, MAC patterns such as `1122*`, or both. This list is capped at 5000 entries", "examples": [["112233abcedf", "aabbcc*"]], "items": {"type": "string"}, "type": "array"}, "psk_portal": {"description": "Self-service portal configuration for issuing personal PSKs", "properties": {"auth": {"$ref": "#/components/schemas/psk_portal_auth", "description": "Portal access method, enum: `sponsor`, `sso`"}, "bg_image_url": {"description": "URL of the background image used by the PSK portal", "type": "string"}, "cleanup_psk": {"default": false, "description": "Whether to clean up existing PSKs when the portal is deleted or its SSID changes", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the PSK portal was created"}, "expire_time": {"description": "PSK lifetime, in minutes, for keys created through this portal", "type": "integer"}, "expiry_notification_time": {"description": "Number of days before PSK expiration to start sending reminder notifications", "type": "integer"}, "hide_psks_created_by_other_admins": {"default": false, "description": "Only if `type`==`admin`, hide PSKs created by other PSK admins", "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the PSK portal"}, "max_usage": {"default": 0, "description": "Maximum concurrent clients for each PSK created through this portal; `0` means unlimited", "minimum": 0, "type": "integer"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the PSK portal was last modified"}, "name": {"description": "Display name of the PSK portal", "type": "string"}, "notification_renew_url": {"description": "Optional renewal URL included in notification emails. Use a custom URL, a Mist-generated URL, or a shortened URL pointing to either", "examples": ["https://custom-sso/url"], "format": "url", "type": "string"}, "notify_expiry": {"description": "Whether to send reminder notifications before PSKs created through this portal expire", "type": "boolean"}, "notify_on_create_or_edit": {"default": false, "description": "Whether to send notifications when a PSK is created or edited through this portal", "type": "boolean"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the PSK portal"}, "passphrase_rules": {"$ref": "#/components/schemas/psk_portal_passphrase_rules", "description": "Generation rules for PSK passphrases created through this portal"}, "required_fields": {"$ref": "#/components/schemas/psk_portal_required_fields", "description": "User information fields requested by the portal when generating a PSK"}, "role": {"description": "Client role assigned to PSKs created through this portal", "type": "string"}, "ssid": {"description": "WLAN SSID for PSKs created through this portal", "type": "string"}, "sso": {"$ref": "#/components/schemas/psk_portal_sso", "description": "Single sign-on configuration used when `auth`==`sso`"}, "template_url": {"description": "URL of the UI customization template for this portal", "type": "string"}, "thumbnail_url": {"description": "URL of the thumbnail image used by the PSK portal", "type": "string"}, "type": {"$ref": "#/components/schemas/psk_portal_type", "description": "Portal mode for personal PSK onboarding, either admin or BYOD"}, "ui_url": {"description": "Public URL where users access the PSK portal", "type": "string"}, "vlan_id": {"$ref": "#/components/schemas/vlan_id_with_variable", "description": "VLAN ID returned for clients using PSKs from this portal"}}, "required": ["name", "ssid"], "type": "object"}, "psk_portal_auth": {"default": "sso", "description": "Portal access method for guest authentication, either `sponsor` or `sso`. enum: `sponsor`, `sso`", "enum": ["sponsor", "sso"], "type": "string"}, "psk_portal_image": {"additionalProperties": false, "description": "PSK portal image upload payload", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Image binary payload to upload for the PSK portal", "type": "string"}, "json": {"description": "Metadata JSON string describing the PSK portal image upload", "type": "string"}}, "type": "object"}, "psk_portal_list": {"description": "List of PSK portal configurations", "items": {"$ref": "#/components/schemas/psk_portal"}, "type": "array"}, "psk_portal_passphrase_rules": {"additionalProperties": false, "description": "Passphrase generation rules for PSKs created through a portal", "properties": {"alphabets_enabled": {"default": true, "description": "Whether generated passphrases may include alphabetic characters", "type": "boolean"}, "length": {"description": "Fixed generated passphrase length used when min and max length are not both valid", "maximum": 63, "minimum": 8, "type": "integer"}, "max_length": {"description": "Maximum generated passphrase length when paired with a valid `min_length`. If `max_length` or `min_length` is invalid, the portal uses `length`; if `length` is unset or invalid, it uses 8. Valid values are integers from 8 through 63, and `max_length` must be greater than `min_length`", "maximum": 63, "minimum": 8, "type": "integer"}, "min_length": {"description": "Minimum generated passphrase length when paired with a valid `max_length`. If `max_length` or `min_length` is invalid, the portal uses `length`; if `length` is unset or invalid, it uses 8. Valid values are integers from 8 through 63, and `max_length` must be greater than `min_length`", "maximum": 63, "minimum": 8, "type": "integer"}, "numerics_enabled": {"default": true, "description": "Whether generated passphrases may include numeric characters", "type": "boolean"}, "symbols": {"description": "Allowed symbol characters for generated passphrases", "examples": ["()[]{}_%@#&$"], "type": "string"}, "symbols_enabled": {"default": true, "description": "Whether generated passphrases may include symbols", "type": "boolean"}}, "type": "object"}, "psk_portal_required_fields": {"description": "User information fields requested by the portal; email is required by default", "items": {"type": "string"}, "type": "array"}, "psk_portal_sso": {"additionalProperties": false, "description": "Single sign-on settings used when `auth`==`sso`", "properties": {"allowed_roles": {"$ref": "#/components/schemas/psk_portal_sso_allowed_roles", "description": "SSO roles allowed to access the PSK portal; if empty, any role is permitted"}, "idp_cert": {"description": "Identity provider signing certificate in PEM format", "type": "string"}, "idp_sign_algo": {"$ref": "#/components/schemas/psk_portal_sso_idp_sign_algo", "description": "SAML assertion signing algorithm expected from the identity provider"}, "idp_sso_url": {"description": "Identity provider SSO URL for SAML login", "type": "string"}, "issuer": {"description": "SAML issuer value for the identity provider", "type": "string"}, "nameid_format": {"description": "SAML NameID format used for the portal login", "type": "string"}, "role_mapping": {"additionalProperties": {"type": "string"}, "description": "Maps PSK portal role names to SSO attribute values", "type": "object"}, "use_sso_role_for_psk_role": {"description": "Whether to use SSO role mapping for the PSK role and ignore the portal-level `role` field", "type": "boolean"}}, "type": "object"}, "psk_portal_sso_allowed_roles": {"description": "SSO roles allowed to access the PSK portal; if empty, any role is permitted", "items": {"type": "string"}, "type": "array"}, "psk_portal_sso_idp_sign_algo": {"default": "sha256", "description": "Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`. enum: `sha1`, `sha256`, `sha384`, `sha512`", "enum": ["sha1", "sha256", "sha384", "sha512"], "type": "string"}, "psk_portal_template": {"description": "Portal UI customization payload", "properties": {"portal_template": {"$ref": "#/components/schemas/psk_portal_template_setting", "description": "Template settings for customizing the PSK portal UI"}}, "type": "object"}, "psk_portal_template_setting": {"additionalProperties": false, "description": "Custom UI settings for the PSK portal template", "properties": {"alignment": {"$ref": "#/components/schemas/portal_template_alignment", "description": "Logo and text alignment for the PSK portal template"}, "color": {"default": "#1074bc", "description": "Primary hex color used by the portal template", "type": "string"}, "logo": {"description": "Custom logo with \"data:image/png;base64,\" format. default null, uses Juniper Mist Logo", "type": ["string", "null"]}, "poweredBy": {"default": false, "description": "Whether to hide \"Powered by Juniper Mist\" and email footers", "type": "boolean"}, "tos": {"description": "Whether to show Terms of Service", "type": "boolean"}, "tosAcceptLabel": {"default": "I accept the Terms of Service", "description": "Terms of Service accept button label", "type": "string"}, "tosError": {"default": "Please review and accept the Terms of Service", "description": "Error message shown when the user has not accepted the Terms of Service", "type": "string"}, "tosLink": {"default": "Terms of Service", "description": "Terms of Service link label displayed in the portal footer", "type": "string"}, "tosText": {"default": "<< provide your Terms of Service here >>", "description": "Terms of Service text displayed in the footer when Terms are enabled", "type": "string"}, "tosUrl": {"description": "Custom URL for the Terms of Service policy", "examples": ["https://company.com/wifi-policy"], "type": "string"}}, "type": "object"}, "psk_portal_type": {"description": "for personal psk portal. enum: `admin`, `byod`", "enum": ["admin", "byod"], "type": "string"}, "psk_usage": {"default": "multi", "description": "enum: `macs`, `multi`, `single`", "enum": ["macs", "multi", "single"], "type": "string"}, "psk_vlan_id": {"description": "VLAN for this PSK key", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "psks": {"description": "List of personal PSK configurations", "items": {"$ref": "#/components/schemas/psk"}, "type": "array", "uniqueItems": true}, "psks_import_file": {"additionalProperties": false, "description": "Multipart upload payload for importing PSKs", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Uploaded CSV or binary file containing PSKs to import", "type": "string"}}, "type": "object"}, "push_policy_push_window": {"additionalProperties": false, "description": "If enabled, new config will only be pushed to device within the specified time window", "properties": {"enabled": {"default": false, "description": "Whether configuration pushes are limited to the configured push window", "type": "boolean"}, "hours": {"$ref": "#/components/schemas/hours", "description": "Day-of-week hour ranges when configuration pushes are allowed"}}, "type": "object"}, "radio_band_24_usage": {"description": "enum: `24`, `5`, `6`, `auto`", "enum": ["24", "5", "6", "auto"], "type": "string"}, "radio_band_antenna_beam_pattern": {"description": "enum: `narrow`, `medium`, `wide`", "enum": ["narrow", "medium", "wide"], "type": "string"}, "radio_band_antenna_mode": {"default": "default", "description": "enum: `1x1`, `2x2`, `3x3`, `4x4`, `default`", "enum": ["1x1", "2x2", "3x3", "4x4", "default"], "examples": ["default"], "type": "string"}, "radio_band_channels": {"default": [], "description": "For RFTemplates. List of channels, null or empty array means auto", "items": {"type": "integer"}, "type": ["array", "null"]}, "radio_band_preamble": {"default": "short", "description": "enum: `auto`, `long`, `short`", "enum": ["auto", "long", "short"], "type": "string"}, "radius_acct_port": {"anyOf": [{"maximum": 65545, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "RADIUS Auth Port, value from 1 to 65535, default is 1813"}, "radius_acct_server": {"additionalProperties": false, "description": "RADIUS accounting server settings", "properties": {"host": {"description": "Address or hostname of the RADIUS accounting server", "examples": ["1.2.3.4"], "type": "string"}, "keywrap_enabled": {"description": "Whether RADIUS keywrap is enabled for messages sent to this accounting server", "type": "boolean"}, "keywrap_format": {"$ref": "#/components/schemas/radius_keywrap_format", "description": "Encoding format for RADIUS keywrap KEK and MACK values"}, "keywrap_kek": {"description": "RADIUS keywrap key encryption key (KEK)", "examples": ["1122334455"], "type": "string"}, "keywrap_mack": {"description": "RADIUS keywrap message authentication code key (MACK)", "examples": ["1122334455"], "type": "string"}, "port": {"$ref": "#/components/schemas/radius_acct_port", "description": "UDP port used by the RADIUS accounting server"}, "secret": {"description": "Shared secret used with this RADIUS accounting server", "examples": ["testing123"], "format": "password", "type": "string"}}, "required": ["host", "secret"], "type": "object"}, "radius_acct_servers": {"description": "List of RADIUS accounting servers", "items": {"$ref": "#/components/schemas/radius_acct_server"}, "type": "array", "uniqueItems": true}, "radius_auth_port": {"anyOf": [{"maximum": 65545, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "RADIUS Auth Port, value from 1 to 65535, default is 1812"}, "radius_auth_server": {"additionalProperties": false, "description": "RADIUS authentication server settings", "properties": {"host": {"description": "Address or hostname of the RADIUS authentication server", "examples": ["1.2.3.4"], "type": "string"}, "keywrap_enabled": {"description": "Whether RADIUS keywrap is enabled for messages sent to this authentication server", "type": "boolean"}, "keywrap_format": {"$ref": "#/components/schemas/radius_keywrap_format", "description": "Encoding format for RADIUS keywrap KEK and MACK values"}, "keywrap_kek": {"description": "RADIUS keywrap key encryption key (KEK)", "examples": ["1122334455"], "type": "string"}, "keywrap_mack": {"description": "RADIUS keywrap message authentication code key (MACK)", "examples": ["1122334455"], "type": "string"}, "port": {"$ref": "#/components/schemas/radius_auth_port", "description": "UDP port used by the RADIUS authentication server"}, "require_message_authenticator": {"default": false, "description": "Whether to require Message-Authenticator in requests", "type": "boolean"}, "secret": {"description": "Shared secret used with this RADIUS authentication server", "examples": ["testing123"], "format": "password", "type": "string"}}, "required": ["host", "secret"], "type": "object"}, "radius_auth_servers": {"description": "List of RADIUS authentication servers", "items": {"$ref": "#/components/schemas/radius_auth_server"}, "type": "array", "uniqueItems": true}, "radius_coa_port": {"anyOf": [{"maximum": 65545, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "RADIUS CoA Port, value from 1 to 65535, default is 3799"}, "radius_config": {"additionalProperties": false, "description": "Junos RADIUS authentication and accounting configuration", "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": {"$ref": "#/components/schemas/radius_acct_servers", "description": "RADIUS accounting servers used by this Junos configuration"}, "auth_servers": {"$ref": "#/components/schemas/radius_auth_servers", "description": "RADIUS authentication servers used by this Junos configuration"}, "auth_servers_retries": {"default": 3, "description": "Number of RADIUS authentication request retries before failover", "type": "integer"}, "auth_servers_timeout": {"default": 5, "description": "RADIUS authentication server timeout, in seconds", "type": "integer"}, "coa_enabled": {"default": false, "description": "Whether RADIUS Change of Authorization (CoA) is enabled", "type": "boolean"}, "coa_port": {"default": 3799, "description": "UDP port used for RADIUS Change of Authorization (CoA)", "maximum": 65535, "minimum": 1, "type": "integer"}, "network": {"description": "Use `network` or `source_ip`. Network where the RADIUS server resides; if the network has a static IP, Mist uses it as the source IP", "type": "string"}, "source_ip": {"description": "Use `network` or `source_ip`. Explicit source IP address for RADIUS traffic", "type": "string"}}, "type": "object"}, "radius_keywrap_format": {"description": "Encoding format for RADIUS keywrap KEK and MACK values. enum: `ascii`, `hex`", "enum": ["ascii", "hex"], "type": "string"}, "radsec": {"additionalProperties": false, "description": "RadSec settings for sending RADIUS traffic over TLS", "properties": {"coa_enabled": {"default": false, "description": "Whether RADIUS Change of Authorization (CoA) is enabled for RadSec traffic", "type": "boolean"}, "enabled": {"description": "Whether RadSec is enabled", "type": "boolean"}, "idle_timeout": {"$ref": "#/components/schemas/radsec_idle_timeout", "description": "Idle timeout, in seconds, for RadSec connections"}, "mxcluster_ids": {"$ref": "#/components/schemas/radsec_mxcluster_ids", "description": "Mist Edge cluster IDs used as RadSec proxies when the WLAN does not use mxtunnel"}, "proxy_hosts": {"$ref": "#/components/schemas/radsec_proxy_hosts", "description": "RadSec proxy hostnames advertised to APs"}, "server_name": {"description": "TLS server name to verify against the CA certificates in Org Setting. Only if not Mist Edge.", "examples": ["radsec.abc.com"], "type": "string"}, "servers": {"$ref": "#/components/schemas/radsec_servers", "description": "External RadSec servers. Only if not Mist Edge."}, "use_mxedge": {"description": "Whether to use organization Mist Edge instances as RadSec proxies", "type": "boolean"}, "use_site_mxedge": {"default": false, "description": "Whether to use site Mist Edge instances when this WLAN does not use mxtunnel", "type": "boolean"}}, "type": "object"}, "radsec_certs_ap": {"description": "RADSec certificates for AP", "items": {"examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}, "type": "array"}, "radsec_idle_timeout": {"anyOf": [{"default": 60, "type": "integer"}, {"type": "string"}], "description": "RadSec idle timeout in seconds. Default is 60"}, "radsec_mxcluster_ids": {"description": "To use Org Mist Edges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org Mist Edge(s) identified by mxcluster_ids", "items": {"examples": ["572586b7-f97b-a22b-526c-8b97a3f609c4"], "format": "uuid", "type": "string"}, "type": "array"}, "radsec_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 Mist Edges) are used irrespective of `use_site_mxedge`", "items": {"examples": ["mxedge1.local"], "type": "string"}, "type": "array"}, "radsec_server": {"additionalProperties": false, "description": "External RadSec server settings", "properties": {"host": {"description": "Address or hostname of the RadSec server", "examples": ["1.1.1.1"], "type": "string"}, "port": {"description": "TCP port used by the RadSec server", "examples": [1812], "maximum": 65535, "minimum": 1, "type": "integer"}}, "type": "object"}, "radsec_servers": {"description": "External RadSec servers. Only if not Mist Edge.", "items": {"$ref": "#/components/schemas/radsec_server"}, "type": "array", "uniqueItems": true}, "random_mac": {"description": "Whether the client is using randomized MAC address or not. enum: `true`, `false`", "enum": ["true", "false"], "type": "string"}, "recaptcha": {"additionalProperties": false, "description": "CAPTCHA settings returned for admin registration", "properties": {"flavor": {"$ref": "#/components/schemas/recaptcha_flavor", "description": "CAPTCHA provider used for registration, such as Google reCAPTCHA or hCaptcha"}, "required": {"description": "Whether CAPTCHA verification is required for registration", "type": "boolean"}, "sitekey": {"description": "Public site key used to render the selected CAPTCHA provider", "type": "string"}}, "type": "object"}, "recaptcha_flavor": {"default": "google", "description": "CAPTCHA provider flavor. enum: `google`, `hcaptcha`", "enum": ["google", "hcaptcha"], "examples": ["hcaptcha"], "type": "string"}, "recover": {"description": "Password recovery request submitted for an administrator account", "properties": {"email": {"description": "Admin email address requesting password recovery", "examples": ["test@mistsys.com"], "maxLength": 64, "type": "string"}, "recaptcha": {"description": "CAPTCHA verification token submitted with the recovery request", "type": "string"}, "recaptcha_flavor": {"$ref": "#/components/schemas/recaptcha_flavor", "description": "CAPTCHA provider flavor used for recovery verification"}}, "required": ["email"], "type": "object"}, "redirect_nacportal_id": {"description": "If `type`==`redirect_nacportal_id`, the ID of the NAC portal to redirect to", "examples": ["1e970fec-0a7a-4d73-a472-3ef3b6a456aa"], "format": "uuid", "type": "string"}, "remote_syslog": {"additionalProperties": false, "description": "Remote syslog forwarding settings", "properties": {"archive": {"$ref": "#/components/schemas/remote_syslog_archive", "description": "Retention settings for generated syslog archive files"}, "cacerts": {"$ref": "#/components/schemas/remote_syslog_cacerts", "description": "CA certificates used to verify TLS syslog servers"}, "console": {"$ref": "#/components/schemas/remote_syslog_console", "description": "Log forwarding filters for console messages sent to remote syslog"}, "enabled": {"default": false, "description": "Whether remote syslog forwarding is enabled", "type": "boolean"}, "files": {"$ref": "#/components/schemas/remote_syslog_files", "description": "Local syslog file definitions to generate and forward"}, "network": {"description": "Source network used for syslog traffic. If `source_address` is configured, Mist uses the VLAN first; otherwise it uses `source_ip`", "examples": ["default"], "type": "string"}, "send_to_all_servers": {"default": false, "description": "Whether each log entry is sent to all configured remote syslog servers", "type": "boolean"}, "servers": {"$ref": "#/components/schemas/remote_syslog_servers", "description": "Remote syslog server destinations"}, "time_format": {"$ref": "#/components/schemas/remote_syslog_time_format", "description": "Timestamp format used in forwarded syslog messages"}, "users": {"$ref": "#/components/schemas/remote_syslog_users", "description": "User-specific syslog logging rules"}}, "type": "object"}, "remote_syslog_archive": {"additionalProperties": false, "description": "Syslog file archive retention settings", "properties": {"files": {"$ref": "#/components/schemas/remote_syslog_archive_files", "description": "Number of archived syslog files to retain"}, "size": {"description": "Maximum size of each archived syslog file, such as 5m", "examples": ["5m"], "type": "string"}}, "type": "object"}, "remote_syslog_archive_files": {"anyOf": [{"type": "string"}, {"type": "integer"}], "description": "Number of archived syslog files to retain", "examples": [20]}, "remote_syslog_cacerts": {"description": "CA certificates used to verify TLS syslog servers", "examples": [["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----", "-----BEGIN CERTIFICATE-----\\nBhMCRVMxFDASBgNVBAoMC1N0YXJ0Q29tIENBMSwwKgYDVn-----END CERTIFICATE-----"]], "items": {"type": "string"}, "type": "array"}, "remote_syslog_console": {"additionalProperties": false, "description": "Console log forwarding filters for remote syslog", "properties": {"contents": {"$ref": "#/components/schemas/remote_syslog_contents", "description": "Syslog facilities and severities forwarded from console logs"}}, "type": "object"}, "remote_syslog_content": {"additionalProperties": false, "description": "Syslog message content selector for remote logging", "properties": {"facility": {"$ref": "#/components/schemas/remote_syslog_facility", "description": "Syslog facility to match for this selector"}, "severity": {"$ref": "#/components/schemas/remote_syslog_severity", "description": "Syslog severity to match for this selector"}}, "type": "object"}, "remote_syslog_contents": {"description": "List of syslog content selectors", "items": {"$ref": "#/components/schemas/remote_syslog_content"}, "type": "array"}, "remote_syslog_facility": {"default": "any", "description": "enum: `any`, `authorization`, `change-log`, `config`, `conflict-log`, `daemon`, `dfc`, `external`, `firewall`, `ftp`, `interactive-commands`, `kernel`, `ntp`, `pfe`, `security`, `user`", "enum": ["any", "authorization", "change-log", "config", "conflict-log", "daemon", "dfc", "external", "firewall", "ftp", "interactive-commands", "kernel", "ntp", "pfe", "security", "user"], "examples": ["config"], "type": "string"}, "remote_syslog_file_config": {"additionalProperties": false, "description": "Generated syslog file output settings", "properties": {"archive": {"$ref": "#/components/schemas/remote_syslog_archive", "description": "Retention settings for this generated syslog file"}, "contents": {"$ref": "#/components/schemas/remote_syslog_contents", "description": "Syslog facilities and severities written to this file"}, "enable_tls": {"description": "Only if `protocol`==`tcp`, enable TLS for this syslog file destination", "type": "boolean"}, "explicit_priority": {"description": "Whether to include explicit syslog priority values in file output", "type": "boolean"}, "file": {"description": "Generated syslog file name", "examples": ["file-name"], "type": "string"}, "match": {"description": "Expression used to filter log messages written to this file", "examples": ["!alarm|ntp|errors.crc_error[chan]"], "type": "string"}, "structured_data": {"description": "Whether to include structured syslog data in file output", "type": "boolean"}}, "type": "object"}, "remote_syslog_files": {"description": "Generated syslog file output definitions", "items": {"$ref": "#/components/schemas/remote_syslog_file_config"}, "type": "array"}, "remote_syslog_server": {"additionalProperties": false, "description": "Remote syslog server destination settings", "properties": {"contents": {"$ref": "#/components/schemas/remote_syslog_contents", "description": "Syslog facilities and severities sent to this server"}, "explicit_priority": {"description": "Whether to include explicit syslog priority values in messages sent to this server", "type": "boolean"}, "facility": {"$ref": "#/components/schemas/remote_syslog_facility", "description": "Default syslog facility for messages sent to this server"}, "host": {"description": "Address or hostname of the remote syslog server", "examples": ["syslogd.internal"], "type": "string"}, "match": {"description": "Expression used to filter log messages sent to this server", "examples": ["!alarm|ntp|errors.crc_error[chan]"], "type": "string"}, "port": {"$ref": "#/components/schemas/remote_syslog_server_port", "description": "Network port used by the remote syslog server"}, "protocol": {"$ref": "#/components/schemas/remote_syslog_server_protocol", "description": "Transport protocol used for this remote syslog server"}, "routing_instance": {"description": "Routing instance used to reach this remote syslog server", "examples": ["routing-instance-name"], "type": "string"}, "server_name": {"description": "TLS server name used when verifying the remote syslog server certificate", "examples": ["syslogd.internal"], "type": "string"}, "severity": {"$ref": "#/components/schemas/remote_syslog_severity", "description": "Default syslog severity for messages sent to this server"}, "source_address": {"description": "Source address for syslog traffic. If configured, Mist uses the VLAN first; otherwise it uses `source_ip`", "type": "string"}, "structured_data": {"description": "Whether to include structured syslog data in messages sent to this server", "type": "boolean"}, "tag": {"description": "Syslog tag value added to messages sent to this server", "type": "string"}}, "type": "object"}, "remote_syslog_server_port": {"anyOf": [{"default": 514, "maximum": 65545, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "Syslog Service Port, value from 1 to 65535"}, "remote_syslog_server_protocol": {"default": "udp", "description": "Transport protocol used for this remote syslog server. enum: `tcp`, `udp`", "enum": ["tcp", "udp"], "type": "string"}, "remote_syslog_servers": {"description": "Remote syslog server destination list", "examples": [[{"facility": "config", "host": "syslogd.internal", "port": 514, "protocol": "udp", "severity": "info", "tag": ""}]], "items": {"$ref": "#/components/schemas/remote_syslog_server"}, "type": "array"}, "remote_syslog_severity": {"default": "any", "description": "enum: `alert`, `any`, `critical`, `emergency`, `error`, `info`, `notice`, `warning`", "enum": ["alert", "any", "critical", "emergency", "error", "info", "notice", "warning"], "type": "string"}, "remote_syslog_time_format": {"description": "enum: `millisecond`, `year`, `year millisecond`", "enum": ["millisecond", "year", "year millisecond"], "examples": ["millisecond"], "type": "string"}, "remote_syslog_user": {"additionalProperties": false, "description": "User-specific syslog logging rule", "properties": {"contents": {"$ref": "#/components/schemas/remote_syslog_contents", "description": "Syslog facilities and severities logged for this user rule"}, "match": {"description": "Expression used to filter user log messages", "examples": ["\"!alarm|ntp|errors.crc_error[chan]\""], "type": "string"}, "user": {"description": "Account name or wildcard matched by this syslog rule", "examples": ["*"], "type": "string"}}, "type": "object"}, "remote_syslog_users": {"description": "User-specific syslog logging rules", "items": {"$ref": "#/components/schemas/remote_syslog_user"}, "type": "array"}, "replace_device": {"description": "Request payload for replacing an inventory device with a claimed, unassigned device", "properties": {"discard": {"$ref": "#/components/schemas/replace_device_discard", "description": "Existing device attributes that should not be copied to the replacement device"}, "inventory_mac": {"description": "MAC address of the claimed, unassigned inventory device that will replace the old device", "examples": ["5c5b35000301"], "type": "string"}, "mac": {"description": "Device MAC address being replaced", "examples": ["5c5b35000101"], "type": "string"}, "site_id": {"description": "Site containing the device being replaced", "examples": ["4ac1dcf4-9d8b-7211-65c4-057819f0862b"], "type": "string"}, "tunterm_port_config": {"$ref": "#/components/schemas/tunterm_port_config", "description": "Tunnel termination Ethernet port configuration for a Mist Edge replacement"}}}, "replace_device_discard": {"description": "Attributes that should not be copied to the replacement device", "items": {"type": "string"}, "type": "array"}, "resolution": {"default": "default", "description": "Location resolution mode for map or placement calculations. enum: `default`, `fine`", "enum": ["default", "fine"], "type": "string"}, "resp_attrs": {"description": "List of RADIUS AVP returned by the Authentication Server", "examples": [["Tunnel-Type=VLAN", "Tunnel-Medium-Type=IEEE-802", "Tunnel-Private-Group-Id=750", "User-Name=anonymous"]], "items": {"type": "string"}, "type": "array", "uniqueItems": true}, "response_anomaly_search": {"additionalProperties": false, "description": "Paginated anomaly search response", "properties": {"end": {"description": "Search window end timestamp for anomaly results, in epoch seconds", "examples": [1711035686], "type": "integer"}, "limit": {"description": "Maximum number of anomaly results requested per page", "examples": [10], "type": "integer"}, "page": {"description": "Current page number in the anomaly search results", "examples": [1], "type": "integer"}, "results": {"$ref": "#/components/schemas/response_anomaly_search_results", "description": "Anomaly records returned for this page"}, "start": {"description": "Search window start timestamp for anomaly results, in epoch seconds", "examples": [1710949286], "type": "integer"}, "total": {"description": "Number of anomaly records matching the search", "examples": [232], "type": "integer"}}, "required": ["start", "end", "limit", "page", "results"], "type": "object"}, "response_anomaly_search_results": {"description": "Anomaly records returned by a search response", "items": {"$ref": "#/components/schemas/anomaly"}, "type": "array", "uniqueItems": true}, "response_assign_success": {"additionalProperties": false, "description": "Assignment operation success response", "properties": {"success": {"$ref": "#/components/schemas/strings", "description": "Messages describing successful assignment results"}}, "required": ["success"], "type": "object"}, "response_async_claim_create": {"additionalProperties": false, "description": "Response to an async inventory claim request", "properties": {"claim_id": {"description": "Unique identifier for the async claim job, used to poll status", "format": "uuid", "type": "string"}, "inventory_pending": {"$ref": "#/components/schemas/response_claim_license_inventory_pending", "description": "Inventory devices queued for async claim processing"}}, "type": "object"}, "response_async_claim_status": {"additionalProperties": false, "description": "Async inventory claim job status", "properties": {"claim_id": {"description": "Unique identifier of the async claim job", "format": "uuid", "type": "string"}, "completed": {"$ref": "#/components/schemas/response_async_license_completed", "description": "Device MAC addresses that completed async claim processing"}, "details": {"$ref": "#/components/schemas/response_async_license_details", "description": "Per-device status details for async claim processing; present when `detail=true`"}, "failed": {"description": "Number of devices that failed claim processing", "type": "integer"}, "incompleted": {"$ref": "#/components/schemas/response_async_license_incompleted", "description": "Device MAC addresses not yet completed in async claim processing"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the async claim job"}, "processed": {"description": "Number of devices processed so far", "type": "integer"}, "scheduled_at": {"description": "Epoch timestamp when the async claim was scheduled", "type": "integer"}, "status": {"$ref": "#/components/schemas/response_async_license_status", "description": "Current async claim processing state"}, "succeed": {"description": "Number of devices that successfully completed claim processing", "type": "integer"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp of the last status report"}, "total": {"description": "Total number of devices included in the claim", "type": "integer"}}, "type": "object"}, "response_async_claims_list": {"additionalProperties": false, "description": "List of async inventory claim jobs for the organization", "properties": {"claims": {"description": "Async claim job status records", "items": {"$ref": "#/components/schemas/response_async_claim_status"}, "type": "array"}}, "type": "object"}, "response_async_license": {"additionalProperties": false, "description": "Asynchronous license claim progress response", "properties": {"completed": {"$ref": "#/components/schemas/response_async_license_completed", "description": "Device MAC addresses that completed asynchronous license claim processing"}, "details": {"$ref": "#/components/schemas/response_async_license_details", "description": "Per-device status details for asynchronous license claim processing"}, "failed": {"description": "Number of devices that failed license claim processing", "type": "integer"}, "incompleted": {"$ref": "#/components/schemas/response_async_license_incompleted", "description": "Device MAC addresses not yet completed in asynchronous license claim processing"}, "processed": {"description": "Number of devices processed so far by asynchronous license claim", "type": "integer"}, "scheduled_at": {"description": "Epoch timestamp when the asynchronous license claim was scheduled", "type": "integer"}, "status": {"$ref": "#/components/schemas/response_async_license_status", "description": "Current asynchronous license claim processing state"}, "succeed": {"description": "Number of devices that successfully completed license claim processing", "type": "integer"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when this asynchronous license status was reported"}, "total": {"description": "Number of devices included in the license claim", "type": "integer"}}, "type": "object"}, "response_async_license_completed": {"description": "Device MAC addresses that completed asynchronous license claim processing", "items": {"type": "string"}, "type": "array"}, "response_async_license_detail": {"additionalProperties": false, "description": "Per-device asynchronous license claim status", "properties": {"mac": {"description": "Device MAC address for this license claim detail", "type": "string"}, "status": {"description": "Claim processing state for this device", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when this device claim status was reported"}}, "type": "object"}, "response_async_license_details": {"description": "Per-device asynchronous license claim status details", "items": {"$ref": "#/components/schemas/response_async_license_detail"}, "type": "array"}, "response_async_license_incompleted": {"description": "Device MAC addresses not yet completed in asynchronous license claim processing", "items": {"type": "string"}, "type": "array"}, "response_async_license_status": {"description": "Processing state for an asynchronous license claim. enum: `prepared`, `ongoing`, `done`", "enum": ["prepared", "ongoing", "done"], "type": "string"}, "response_auto_map_assignment": {"additionalProperties": false, "description": "Auto map assignment start response", "properties": {"devices": {"$ref": "#/components/schemas/response_auto_map_assignment_devices", "description": "Per-device validation results for auto map assignment, keyed by device MAC address"}, "estimated_runtime": {"description": "Estimated runtime for the process in seconds", "type": "integer"}, "reason": {"description": "Provides the reason for the status", "type": "string"}, "started": {"description": "Indicates whether the auto map assignment process has started", "type": "boolean"}, "valid": {"description": "Indicates whether the auto map assignment request is valid", "type": "boolean"}}, "type": "object"}, "response_auto_map_assignment_apply": {"additionalProperties": false, "description": "Result returned after applying accepted auto map assignments", "properties": {"accepted_maps": {"description": "List of map IDs that were successfully accepted", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "message": {"description": "Human-readable description of the operation result", "type": "string"}}, "required": ["accepted_maps", "message"], "type": "object"}, "response_auto_map_assignment_clear": {"additionalProperties": false, "description": "Result returned after clearing auto map assignment candidates", "properties": {"message": {"description": "Human-readable description of the operation result", "type": "string"}, "rejected_maps": {"description": "List of map IDs that were successfully rejected", "items": {"format": "uuid", "type": "string"}, "type": "array"}}, "required": ["message", "rejected_maps"], "type": "object"}, "response_auto_map_assignment_device": {"additionalProperties": false, "description": "Per-device validation result for auto map assignment", "properties": {"reason": {"description": "Provides the reason for the status if the AP is invalid", "type": "string"}, "valid": {"description": "Indicates whether the device meets requirements for auto map assignment", "type": "boolean"}}, "type": "object"}, "response_auto_map_assignment_devices": {"additionalProperties": {"$ref": "#/components/schemas/response_auto_map_assignment_device"}, "description": "Contains the validation status of each device. The property key is the device MAC address.", "type": "object"}, "response_auto_map_assignment_info": {"additionalProperties": false, "description": "Auto map assignment status response", "properties": {"est_time_left": {"description": "Only when `status`==`in_progress`, estimated seconds remaining", "type": "number"}, "start_time": {"description": "Unix timestamp when auto map assignment was started", "type": "number"}, "status": {"$ref": "#/components/schemas/response_auto_map_assignment_info_status", "description": "Current auto map assignment processing state"}, "stop_time": {"description": "Only when `status`==`completed`, Unix timestamp when auto map assignment stopped", "type": "number"}, "time_updated": {"description": "Unix timestamp when status was last updated", "type": "number"}}, "required": ["status"], "type": "object"}, "response_auto_map_assignment_info_status": {"description": "The status of auto map assignment for a given site. enum:\n * `not_started`: Auto map assignment has not been requested\n * `in_progress`: Auto map assignment is currently processing\n * `completed`: The auto map assignment process has completed\n * `error`: There was an error in the auto map assignment process", "enum": ["not_started", "in_progress", "completed", "error"], "type": "string"}, "response_auto_orientation": {"additionalProperties": false, "description": "Auto orientation start response", "properties": {"devices": {"$ref": "#/components/schemas/response_auto_orientation_devices", "description": "Per-device validation results for auto orientation, keyed by device MAC address"}, "estimated_runtime": {"description": "Estimated runtime for the process in seconds", "type": "integer"}, "reason": {"description": "Provides the reason for the status.", "type": "string"}, "started": {"description": "Indicates whether the auto orient process has started.", "type": "boolean"}, "valid": {"description": "Indicates whether the auto orient request is valid.", "type": "boolean"}, "wifi_interrupting": {"description": "Indicates whether the auto orient process will interrupt WiFi traffic.", "type": "boolean"}}, "type": "object"}, "response_auto_orientation_device": {"additionalProperties": false, "description": "Per-device validation result for auto orientation", "properties": {"reason": {"description": "Provides the reason for the status if the AP is invalid.", "type": "string"}, "valid": {"description": "Indicates whether the auto orient request is valid for the device.", "type": "boolean"}}, "type": "object"}, "response_auto_orientation_devices": {"additionalProperties": {"$ref": "#/components/schemas/response_auto_orientation_device"}, "description": "Contains the validation status of each device. The property key is the device MAC address.", "type": "object"}, "response_auto_orientation_info": {"additionalProperties": false, "description": "Auto orientation status response", "properties": {"est_time_left": {"description": "Only when `status`==`inprogress`, estimate of the time to completion", "type": "number"}, "start_time": {"description": "Timestamp when auto orient process was last queued for this map", "type": "number"}, "status": {"$ref": "#/components/schemas/response_auto_orientation_info_status", "description": "Current auto orientation processing state"}, "stop_time": {"description": "Timestamp when auto orient completed or was manually stopped", "type": "number"}}, "type": "object"}, "response_auto_orientation_info_status": {"description": "The status of auto orient for a given map. enum:\n * `pending`: Auto orient has not been requested for this map\n * `inprogress`: Auto orient is currently processing\n * `done`: The auto orient process has completed\n * `error`: There was an error in the auto orient process", "enum": ["pending", "inprogress", "done", "error"], "type": "string"}, "response_auto_placement_info": {"additionalProperties": false, "description": "Auto-placement status response with progress and validation details", "properties": {"end_time": {"description": "Timestamp 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": "Timestamp when autoplacement process was last queued for this map", "type": "integer"}, "status": {"$ref": "#/components/schemas/auto_placement_info_status", "description": "Current autoplacement processing state"}}, "type": "object"}, "response_auto_zone": {"additionalProperties": false, "description": "Auto zones status and suggested zone response", "properties": {"status": {"$ref": "#/components/schemas/response_auto_zone_status", "description": "Current auto zones service state for the map"}, "zones": {"$ref": "#/components/schemas/response_auto_zone_zones", "description": "Suggested zones awaiting review for the map"}}, "type": "object"}, "response_auto_zone_status": {"description": "Status of auto-zone generation for a map. enum: `in_progress`, `awaiting_review`, `not_started`, `error`. `not_started` means the service has not run or results were cleared, `in_progress` means generation is active, `awaiting_review` means suggested zones are ready for review, and `error` means generation failed", "enum": ["in_progress", "awaiting_review", "not_started", "error"], "type": "string"}, "response_auto_zone_zone": {"additionalProperties": false, "description": "Suggested zone returned by the auto zones service", "properties": {"name": {"description": "Human-readable name of the suggested zone", "examples": ["zone1"], "type": "string"}, "vertices": {"$ref": "#/components/schemas/response_auto_zone_zone_vertices", "description": "Polygon vertices defining the suggested zone on the map image"}}, "type": "object"}, "response_auto_zone_zone_vertex": {"additionalProperties": false, "description": "Pixel coordinate for a suggested zone vertex", "properties": {"x": {"description": "Horizontal pixel coordinate of the vertex", "examples": [10], "type": "integer"}, "y": {"description": "Vertical pixel coordinate of the vertex", "examples": [42], "type": "integer"}}, "type": "object"}, "response_auto_zone_zone_vertices": {"description": "List of points comprising the suggested zone polygon in map pixels", "items": {"$ref": "#/components/schemas/response_auto_zone_zone_vertex"}, "type": "array"}, "response_auto_zone_zones": {"description": "Suggested zones returned by the auto zones service", "items": {"$ref": "#/components/schemas/response_auto_zone_zone"}, "type": "array"}, "response_autoplacement": {"additionalProperties": false, "description": "Auto-placement start response returned after scheduling the run", "properties": {"devices": {"$ref": "#/components/schemas/response_autoplacement_devices", "description": "Per-device validation results for autoplacement, keyed by AP MAC address"}, "estimated_runtime": {"description": "Estimated runtime for the process in seconds.", "readOnly": true, "type": "integer"}, "reason": {"description": "Provides the reason for the status.", "readOnly": true, "type": "string"}, "started": {"description": "Indicates whether the autoplacement process has started.", "readOnly": true, "type": "boolean"}, "valid": {"description": "Indicates whether the autoplacement request is valid.", "readOnly": true, "type": "boolean"}, "wifi_interrupting": {"description": "Indicates whether the auto placement process will interrupt WiFi traffic.", "type": "boolean"}}, "type": "object"}, "response_autoplacement_device": {"additionalProperties": false, "description": "Per-AP validation result for autoplacement", "properties": {"reason": {"description": "Provides the reason for the status if the AP is invalid.", "readOnly": true, "type": "string"}, "valid": {"description": "Indicates whether the ap is valid.", "readOnly": true, "type": "boolean"}}, "type": "object"}, "response_autoplacement_devices": {"additionalProperties": {"$ref": "#/components/schemas/response_autoplacement_device"}, "description": "Property key is the AP MAC address. Contains the validation status of each device.", "readOnly": true, "type": "object"}, "response_bgp_search_list_results": {"description": "BGP statistics records returned by a search response", "items": {"$ref": "#/components/schemas/bgp_stats"}, "type": "array"}, "response_call_troubleshoot_summary": {"additionalProperties": false, "description": "Site call troubleshooting summary response", "properties": {"mac": {"description": "Client MAC address for the summarized call troubleshooting result", "examples": ["983a78ea4a44"], "type": "string"}, "meeting_id": {"description": "Meeting identifier for the summarized call troubleshooting result", "examples": ["b784d744-9a7c-4fad-9af0-f78858a319b1"], "format": "uuid", "type": "string"}, "results": {"$ref": "#/components/schemas/call_troubleshoot_summaries", "description": "Summary troubleshooting results returned for matching calls"}}, "type": "object"}, "response_certificate": {"additionalProperties": false, "description": "If the current Org CA certificate is set to expire within 30 days, a pending certificate will be returned along with the expected auto-renewal timestamp.", "properties": {"cert": {"description": "Current organization CA certificate in PEM format", "type": "string"}, "pending_cert": {"description": "Pending auto-renewed organization CA certificate returned when the current certificate nears expiry", "type": "string"}, "pending_cert_expiry": {"description": "Epoch timestamp when the pending certificate is expected to replace the current certificate", "type": "integer"}}, "required": ["cert"], "type": "object"}, "response_claim_license": {"additionalProperties": false, "description": "Result of claiming licenses or activation codes", "properties": {"inventory_added": {"$ref": "#/components/schemas/response_claim_license_inventory_added", "description": "Inventory devices added by the claim operation"}, "inventory_duplicated": {"$ref": "#/components/schemas/response_claim_license_inventory_duplicated", "description": "Inventory devices already present during the claim operation"}, "inventory_pending": {"$ref": "#/components/schemas/response_claim_license_inventory_pending", "description": "Inventory devices pending asynchronous claim processing"}, "license_added": {"$ref": "#/components/schemas/response_claim_license_license_added", "description": "License entitlements added by the claim operation"}, "license_duplicated": {"$ref": "#/components/schemas/response_claim_license_license_duplicated", "description": "License entitlements already present during the claim operation"}, "license_error": {"$ref": "#/components/schemas/response_claim_license_license_error", "description": "License claim errors returned by order number"}}, "required": ["license_added", "license_duplicated", "license_error", "inventory_added", "inventory_duplicated"], "type": "object"}, "response_claim_license_inventory_added": {"description": "Inventory devices added by the claim operation", "items": {"$ref": "#/components/schemas/response_claim_license_inventory_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_inventory_duplicated": {"description": "Inventory devices already present during the claim operation", "items": {"$ref": "#/components/schemas/response_claim_license_inventory_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_inventory_item": {"description": "Inventory device returned by a license claim", "properties": {"mac": {"description": "Device MAC address for the claimed inventory item", "type": "string"}, "magic": {"description": "Activation code or claim code associated with the inventory item", "type": "string"}, "model": {"description": "Device model for the claimed inventory item", "type": "string"}, "serial": {"description": "Device serial number for the claimed inventory item", "type": "string"}, "type": {"description": "Device type for the claimed inventory item", "type": "string"}}, "required": ["serial", "model", "type", "magic", "mac"]}, "response_claim_license_inventory_pending": {"description": "Inventory devices pending asynchronous claim processing", "items": {"$ref": "#/components/schemas/response_claim_license_inventory_pending_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_inventory_pending_item": {"additionalProperties": false, "description": "Inventory device pending asynchronous claim processing", "properties": {"mac": {"description": "Device MAC address pending asynchronous inventory claim", "type": "string"}}, "type": "object"}, "response_claim_license_license_added": {"description": "License entitlements added by the claim operation", "items": {"$ref": "#/components/schemas/response_claim_license_license_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_license_duplicated": {"description": "License entitlements already present during the claim operation", "items": {"$ref": "#/components/schemas/response_claim_license_license_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_license_error": {"description": "License claim errors returned by order number", "items": {"$ref": "#/components/schemas/response_claim_license_license_error_item"}, "type": "array", "uniqueItems": true}, "response_claim_license_license_error_item": {"description": "License order that could not be claimed", "properties": {"order": {"description": "License order number or claim identifier that failed", "type": "string"}, "reason": {"description": "Explanation of why the license order could not be claimed", "type": "string"}}, "required": ["order", "reason"]}, "response_claim_license_license_item": {"description": "License entitlement returned by a claim operation", "properties": {"end": {"description": "Epoch timestamp when the license entitlement ends", "type": "integer"}, "quantity": {"description": "Number of license units included in the entitlement", "type": "integer"}, "start": {"description": "Epoch timestamp when the license entitlement starts", "type": "integer"}, "type": {"description": "License SKU or subscription type", "type": "string"}}, "required": ["type", "start", "end", "quantity"]}, "response_claim_mx_edge": {"additionalProperties": false, "description": "Mist Edge claim response", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier assigned to the claimed Mist Edge"}, "magic": {"description": "Claim magic token returned for the Mist Edge", "type": "string"}}, "required": ["id", "magic"], "type": "object"}, "response_client_events_search": {"additionalProperties": false, "description": "Paginated client event search response", "properties": {"end": {"description": "Search window end timestamp for client events, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of client event results requested", "type": "integer"}, "next": {"description": "URL for the next page of client event results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_client_events_search_results", "description": "Client event records returned for this page"}, "start": {"description": "Search window start timestamp for client events, in epoch seconds", "type": "integer"}, "total": {"description": "Number of client event records matching the search", "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "response_client_events_search_results": {"description": "Client event records returned by a search response", "items": {"$ref": "#/components/schemas/events_client"}, "type": "array", "uniqueItems": true}, "response_client_nac_search": {"additionalProperties": false, "description": "Paginated NAC client search response", "properties": {"end": {"description": "Search window end timestamp for NAC clients, in epoch seconds", "examples": [1513362753], "type": "integer"}, "limit": {"description": "Maximum number of NAC client results requested", "examples": [3], "type": "integer"}, "next": {"description": "URL for the next page of NAC client results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_client_nac_search_results", "description": "NAC client records returned for this page"}, "start": {"description": "Search window start timestamp for NAC clients, in epoch seconds", "examples": [1513276353], "type": "integer"}, "total": {"description": "Number of NAC client records matching the search", "examples": [2], "type": "integer"}}, "type": "object"}, "response_client_nac_search_results": {"description": "NAC client records returned by a search response", "items": {"$ref": "#/components/schemas/client_nac"}, "type": "array"}, "response_client_search": {"additionalProperties": false, "description": "Paginated wireless client search response", "properties": {"end": {"description": "Search window end timestamp for wireless clients, in epoch seconds", "type": "number"}, "limit": {"description": "Maximum number of wireless client results requested", "type": "integer"}, "next": {"description": "URL for the next page of wireless client results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_client_search_results", "description": "Wireless client records returned for this page"}, "start": {"description": "Search window start timestamp for wireless clients, in epoch seconds", "type": "number"}, "total": {"description": "Number of wireless client records matching the search", "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "response_client_search_results": {"description": "Wireless client records returned by a search response", "items": {"$ref": "#/components/schemas/client_wireless"}, "type": "array", "uniqueItems": true}, "response_client_sessions_search": {"additionalProperties": false, "description": "Paginated wireless client session search response", "properties": {"end": {"description": "Search window end timestamp for wireless client sessions, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of wireless client session results requested", "type": "integer"}, "next": {"description": "URL for the next page of wireless client session results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_client_sessions_search_results", "description": "Wireless client session records returned for this page"}, "start": {"description": "Search window start timestamp for wireless client sessions, in epoch seconds", "type": "integer"}, "total": {"description": "Number of wireless client session records matching the search", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_client_sessions_search_item": {"additionalProperties": false, "description": "Wireless client session record", "properties": {"ap": {"description": "Access point MAC address associated with the client session", "readOnly": true, "type": "string"}, "band": {"description": "Radio band used by the client session", "readOnly": true, "type": "string"}, "client_manufacture": {"description": "Manufacturer reported for the client device", "readOnly": true, "type": "string"}, "connect": {"description": "Epoch timestamp when the client session connected", "readOnly": true, "type": "number"}, "disconnect": {"description": "Epoch timestamp when the client session disconnected", "readOnly": true, "type": "number"}, "duration": {"description": "Length of the client session, in seconds", "readOnly": true, "type": "number"}, "mac": {"description": "Client MAC address for the session", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client session"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client session"}, "ssid": {"description": "WLAN SSID used by the client session", "readOnly": true, "type": "string"}, "tags": {"$ref": "#/components/schemas/response_client_sessions_search_item_tags", "description": "Event or classification tags attached to the client session"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when the client session record was observed"}, "wlan_id": {"description": "WLAN identifier associated with the client session", "format": "uuid", "type": "string"}}, "required": ["ap", "band", "client_manufacture", "connect", "disconnect", "duration", "mac", "org_id", "site_id", "ssid", "timestamp", "wlan_id"], "type": "object"}, "response_client_sessions_search_item_tags": {"description": "Tags attached to a wireless client session", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "response_client_sessions_search_results": {"description": "Wireless client session records returned by a search response", "items": {"$ref": "#/components/schemas/response_client_sessions_search_item"}, "type": "array"}, "response_config_history_search": {"additionalProperties": false, "description": "Paginated device config history search response", "properties": {"end": {"description": "Search window end timestamp for config history, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of config history entries requested", "type": "integer"}, "next": {"description": "URL for the next page of config history results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_config_history_search_results", "description": "Device config history entries returned for this page"}, "start": {"description": "Search window start timestamp for config history, in epoch seconds", "type": "integer"}, "total": {"description": "Number of config history entries matching the search", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_config_history_search_item": {"additionalProperties": false, "description": "Device config history entry", "properties": {"channel_24": {"description": "2.4 GHz channel configured in this history entry", "type": "integer"}, "channel_5": {"description": "5 GHz channel configured in this history entry", "type": "integer"}, "radio_macs": {"$ref": "#/components/schemas/strings", "description": "Radio MAC addresses included in this config history entry"}, "radios": {"$ref": "#/components/schemas/response_config_history_search_item_radios", "description": "Radio configuration details included in this history entry"}, "secpolicy_violated": {"description": "Whether the device configuration violated a security policy", "type": "boolean"}, "ssids": {"$ref": "#/components/schemas/strings", "description": "WLAN SSIDs included in this config history entry"}, "ssids_24": {"$ref": "#/components/schemas/strings", "description": "2.4 GHz WLAN SSIDs included in this config history entry"}, "ssids_5": {"$ref": "#/components/schemas/strings", "description": "5 GHz WLAN SSIDs included in this config history entry"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when this config history entry was recorded"}, "version": {"description": "Configuration version associated with this history entry", "type": "string"}, "wlans": {"$ref": "#/components/schemas/response_config_history_search_item_wlans", "description": "WLAN configuration details included in this history entry"}}, "required": ["channel_24", "channel_5", "secpolicy_violated", "timestamp", "version"], "type": "object"}, "response_config_history_search_item_radio": {"additionalProperties": false, "description": "Radio config history detail", "properties": {"band": {"description": "Radio band for this config history detail", "type": "string"}, "channel": {"description": "Configured channel for this radio", "type": "integer"}}, "required": ["band", "channel"], "type": "object"}, "response_config_history_search_item_radios": {"description": "Radio config history details", "items": {"$ref": "#/components/schemas/response_config_history_search_item_radio"}, "type": "array", "uniqueItems": true}, "response_config_history_search_item_wlan": {"additionalProperties": false, "description": "WLAN config history detail", "properties": {"auth": {"description": "Configured authentication method for this WLAN", "type": "string"}, "bands": {"$ref": "#/components/schemas/strings", "description": "Radio bands where this WLAN was configured"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the WLAN configuration"}, "ssid": {"description": "WLAN SSID for this config history detail", "type": "string"}, "vlan_ids": {"$ref": "#/components/schemas/strings", "description": "VLAN IDs configured for this WLAN"}}, "required": ["auth", "id", "ssid"], "type": "object"}, "response_config_history_search_item_wlans": {"description": "WLAN config history details", "items": {"$ref": "#/components/schemas/response_config_history_search_item_wlan"}, "type": "array", "uniqueItems": true}, "response_config_history_search_results": {"description": "Device config history entries returned by a search response", "items": {"$ref": "#/components/schemas/response_config_history_search_item"}, "type": "array", "uniqueItems": true}, "response_count": {"additionalProperties": false, "description": "Distinct count response for time-bounded search results", "properties": {"distinct": {"description": "Field used to group the count results", "type": "string"}, "end": {"description": "Search window end timestamp for the count request, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of distinct count results requested", "type": "integer"}, "results": {"$ref": "#/components/schemas/count_results", "description": "Count results grouped by the distinct field"}, "start": {"description": "Search window start timestamp for the count request, in epoch seconds", "type": "integer"}, "total": {"description": "Number of distinct result buckets returned", "type": "integer"}}, "required": ["distinct", "end", "limit", "results", "start", "total"], "type": "object"}, "response_count_marvis_actions": {"additionalProperties": false, "description": "Distinct count response for Marvis action suggestions", "properties": {"distinct": {"description": "Field used to group Marvis action count results", "examples": ["status"], "type": "string"}, "limit": {"description": "Maximum number of Marvis action count results requested", "examples": [1000], "type": "integer"}, "results": {"$ref": "#/components/schemas/response_count_marvis_actions_results", "description": "Marvis action count results grouped by the distinct field"}, "total": {"description": "Number of Marvis action count result buckets returned", "examples": [3], "type": "integer"}}, "type": "object"}, "response_count_marvis_actions_result": {"additionalProperties": {"type": "string"}, "description": "Marvis action count result for one distinct value", "properties": {"count": {"description": "Number of Marvis actions matching this distinct value", "examples": [24], "type": "integer"}}, "type": "object"}, "response_count_marvis_actions_results": {"description": "Marvis action count results grouped by a distinct field", "examples": [[{"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": {"$ref": "#/components/schemas/response_count_marvis_actions_result"}, "type": "array"}, "response_detail_string": {"additionalProperties": false, "description": "Response containing a human-readable detail message", "properties": {"detail": {"description": "Human-readable detail message returned by the API", "type": "string"}}, "type": "object"}, "response_device_bios_upgrade": {"additionalProperties": false, "description": "Device BIOS upgrade status response", "properties": {"status": {"description": "Current BIOS upgrade status for the device", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when the BIOS upgrade status was reported"}}, "type": "object"}, "response_device_config_cli": {"additionalProperties": false, "description": "Device configuration rendered as CLI commands", "properties": {"cli": {"$ref": "#/components/schemas/strings", "description": "Command lines generated for the device configuration in CLI syntax"}}, "required": ["cli"], "type": "object"}, "response_device_config_cmd": {"additionalProperties": false, "description": "Device configuration command response", "properties": {"cmd": {"description": "Configuration command returned for the device", "type": "string"}}, "required": ["cmd"], "type": "object"}, "response_device_events_search": {"additionalProperties": false, "description": "Paginated response for device or system event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the event search window", "type": "integer"}, "limit": {"description": "Maximum number of event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of event records", "type": "string"}, "results": {"$ref": "#/components/schemas/device_events", "description": "Device or system event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the event search window", "type": "integer"}, "total": {"description": "Number of event records matching the search filters across all pages", "type": "integer"}}, "required": ["results", "start", "end", "limit", "total"], "type": "object"}, "response_device_metrics": {"additionalProperties": false, "description": "Time-series insight metric response for a device", "properties": {"end": {"description": "Epoch timestamp for the end of the metric query window", "type": "integer"}, "interval": {"description": "Aggregation interval in seconds for each metric sample", "type": "integer"}, "limit": {"description": "Maximum number of metric samples returned in this page", "type": "integer"}, "page": {"description": "Returned page number for paginated metric samples", "type": "integer"}, "results": {"$ref": "#/components/schemas/response_device_metrics_results", "description": "Metric values for the requested insight metric, aligned by position with the `rt` timestamps"}, "rt": {"$ref": "#/components/schemas/strings", "description": "Timestamps for the metric samples, aligned by position with the `results` values"}, "start": {"description": "Epoch timestamp for the start of the metric query window", "type": "integer"}}, "required": ["end", "interval", "results", "start"], "type": "object"}, "response_device_metrics_results": {"description": "Device metric result values aligned with the response timestamps", "items": {"$ref": "#/components/schemas/response_device_metrics_results_items"}, "type": "array"}, "response_device_metrics_results_items": {"description": "Device metric result value, returned as a string or integer", "oneOf": [{"type": "string"}, {"type": "integer"}]}, "response_device_radio_channels": {"additionalProperties": false, "description": "Country and regulatory-domain channel capabilities for AP radios", "properties": {"band24_40mhz_allowed": {"description": "Whether 40 MHz channels are allowed on the 2.4 GHz band", "type": "boolean"}, "band24_channels": {"$ref": "#/components/schemas/ap_channel_band24_channels", "description": "Allowed 2.4 GHz channels for this country or regulatory domain"}, "band24_enabled": {"description": "Whether the 2.4 GHz band is enabled for this country or regulatory domain", "type": "boolean"}, "band5_channels": {"$ref": "#/components/schemas/ap_channel_band5_channels", "description": "Allowed 5 GHz channels for this country or regulatory domain"}, "band5_enabled": {"description": "Whether the 5 GHz band is enabled for this country or regulatory domain", "type": "boolean"}, "band6_channels": {"$ref": "#/components/schemas/ap_channel_band6_channels", "description": "Allowed 6 GHz channels for this country or regulatory domain"}, "band6_enabled": {"description": "Whether the 6 GHz band is enabled for this country or regulatory domain", "type": "boolean"}, "certified": {"description": "Whether AP operation is certified for this country or regulatory domain", "type": "boolean"}, "code": {"description": "Country code in ISO 3166-1 numeric format", "type": "integer"}, "dfs_ok": {"description": "Whether DFS channels are allowed in this country or regulatory domain", "type": "boolean"}, "key": {"description": "Two-character ISO 3166-1 country code", "type": "string"}, "name": {"description": "Country or regulatory-domain display name", "type": "string"}, "uses": {"description": "Regulatory ruleset used for AP channel validation", "type": "string"}}, "required": ["key", "dfs_ok", "band5_enabled", "band24_enabled", "band24_40mhz_allowed", "certified", "band5_channels", "band24_channels", "code", "name", "uses"], "type": "object"}, "response_device_search": {"additionalProperties": false, "description": "Paginated response for organization or site device search results", "properties": {"end": {"description": "Epoch timestamp for the end of the device search window", "type": "integer"}, "limit": {"description": "Maximum number of device records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of device records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_device_search_results", "description": "AP, switch, or gateway records matching the device search filters"}, "start": {"description": "Epoch timestamp for the start of the device search window", "type": "integer"}, "total": {"description": "Number of device records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_device_search_results": {"description": "Device search records for APs, switches, or gateways", "items": {"$ref": "#/components/schemas/response_device_search_results_items"}, "type": "array", "uniqueItems": true}, "response_device_search_results_items": {"description": "Device search record for an AP, switch, or gateway", "oneOf": [{"$ref": "#/components/schemas/ap_search"}, {"$ref": "#/components/schemas/switch_search"}, {"$ref": "#/components/schemas/gateway_search"}]}, "response_device_upgrade": {"additionalProperties": false, "description": "Single-device upgrade status response", "properties": {"status": {"$ref": "#/components/schemas/upgrade_info_status", "description": "Current status of the requested device upgrade"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp when the device upgrade status was reported"}}, "required": ["timestamp", "status"], "type": "object"}, "response_discovered_switch_metrics": {"additionalProperties": false, "description": "Paginated response for discovered switch metric search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the metric search window", "type": "number"}, "limit": {"description": "Maximum number of discovered switch metric records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of discovered switch metric records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_discovered_switch_metrics_results", "description": "Discovered switch metric records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the metric search window", "type": "number"}, "total": {"description": "Number of discovered switch metric records matching the search filters across all pages", "type": "integer"}}, "required": ["results", "start", "end", "limit", "total"], "type": "object"}, "response_discovered_switch_metrics_results": {"description": "Discovered switch metric records returned by a search response", "items": {"$ref": "#/components/schemas/discovered_switch_metric"}, "type": "array"}, "response_discovered_switches": {"additionalProperties": false, "description": "Paginated response for discovered switch search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the discovered switch search window", "type": "number"}, "limit": {"description": "Maximum number of discovered switch records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of discovered switch records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_discovered_switches_results", "description": "Discovered switch records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the discovered switch search window", "type": "number"}, "total": {"description": "Number of discovered switch records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_discovered_switches_results": {"description": "Discovered switch records returned by a search response", "items": {"$ref": "#/components/schemas/discovered_switch"}, "type": "array", "uniqueItems": true}, "response_dswitches_metrics": {"additionalProperties": false, "description": "Metrics summary returned for discovered switch compliance checks", "properties": {"inactive_wired_vlans": {"$ref": "#/components/schemas/dswitches_metrics_inactive_wired_vlans", "description": "Metric for inactive wired VLANs on discovered switches"}, "poe_compliance": {"$ref": "#/components/schemas/dswitches_metrics_poe_compliance", "description": "Metric for PoE compliance across APs connected to discovered switches"}, "switch_ap_affinity": {"$ref": "#/components/schemas/dswitches_metrics_switch_ap_affinity", "description": "Metric comparing AP counts against the switch affinity threshold"}, "version_compliance": {"$ref": "#/components/schemas/dswitches_metrics_version_compliance", "description": "Metric for discovered switch software version compliance"}}, "required": ["version_compliance", "switch_ap_affinity", "inactive_wired_vlans", "poe_compliance"], "type": "object"}, "response_events_devices": {"additionalProperties": false, "description": "Paginated response for site device event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the device event search window", "type": "integer"}, "limit": {"description": "Maximum number of device event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of device event records", "type": "string"}, "results": {"$ref": "#/components/schemas/device_events", "description": "Device event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the device event search window", "type": "integer"}, "total": {"description": "Number of device event records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_events_fastroam": {"additionalProperties": false, "description": "Paginated response for fast roaming event results", "properties": {"end": {"description": "Epoch timestamp for the end of the roaming event search window", "type": "integer"}, "limit": {"description": "Maximum number of roaming event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of roaming event records; null when no next page exists", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_fastroam_results", "description": "Fast roaming event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the roaming event search window", "type": "integer"}}, "required": ["start", "end", "limit", "results"], "type": "object"}, "response_events_fastroam_results": {"description": "Fast roaming event records returned by a search response", "items": {"$ref": "#/components/schemas/event_fastroam"}, "type": "array", "uniqueItems": true}, "response_events_nac_client_search": {"additionalProperties": false, "description": "Paginated response for NAC client event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the NAC client event search window", "examples": [1513176951], "type": "integer"}, "limit": {"description": "Maximum number of NAC client event records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of NAC client event records", "type": "string"}, "results": {"$ref": "#/components/schemas/nac_client_events", "description": "NAC client event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the NAC client event search window", "examples": [1512572151], "type": "integer"}, "total": {"description": "Number of NAC client event records matching the search filters across all pages", "examples": [1], "type": "integer"}}, "type": "object"}, "response_events_orgs_search": {"additionalProperties": false, "description": "Paginated response for organization event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the organization event search window", "examples": [1688035193], "type": "integer"}, "limit": {"description": "Maximum number of organization event records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of organization event records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_orgs_search_results", "description": "Organization event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the organization event search window", "examples": [1687948793], "type": "integer"}, "total": {"description": "Number of organization event records matching the search filters across all pages", "type": "integer"}}, "type": "object"}, "response_events_orgs_search_results": {"description": "Organization event records returned by a search response", "items": {"$ref": "#/components/schemas/org_event"}, "type": "array"}, "response_events_other_devices_search": {"additionalProperties": false, "description": "Paginated response for other-device event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the other-device event search window", "type": "integer"}, "limit": {"description": "Maximum number of other-device event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of other-device event records", "type": "string"}, "results": {"$ref": "#/components/schemas/event_otherdevice", "description": "Other-device event data matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the other-device event search window", "type": "integer"}, "total": {"description": "Number of other-device event records matching the search filters across all pages", "type": "integer"}}, "type": "object"}, "response_events_path_search": {"additionalProperties": false, "description": "Paginated response for service path event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the service path event search window", "examples": [1697096379], "type": "integer"}, "limit": {"description": "Maximum number of service path event records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of service path event records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_path_search_results", "description": "Service path event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the service path event search window", "examples": [1697009979], "type": "integer"}, "total": {"description": "Number of service path event records matching the search filters across all pages", "examples": [2], "type": "integer"}}, "type": "object"}, "response_events_path_search_results": {"description": "Service path event records returned by a search response", "items": {"$ref": "#/components/schemas/service_path_event"}, "type": "array"}, "response_events_rogue_search": {"additionalProperties": false, "description": "Paginated response for rogue AP event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the rogue AP event search window", "type": "integer"}, "limit": {"description": "Maximum number of rogue AP event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of rogue AP event records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_rogue_search_results", "description": "Rogue AP event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the rogue AP event search window", "type": "integer"}, "total": {"description": "Number of rogue AP event records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_events_rogue_search_results": {"description": "Rogue AP event records returned by a search response", "items": {"$ref": "#/components/schemas/events_rogue"}, "type": "array", "uniqueItems": true}, "response_events_rrm": {"additionalProperties": false, "description": "Paginated response for RRM event results", "properties": {"end": {"description": "Epoch timestamp for the end of the RRM event search window", "type": "integer"}, "limit": {"description": "Maximum number of RRM event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of RRM event records; null when no next page exists", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_rrm_results", "description": "RRM event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the RRM event search window", "type": "integer"}}, "required": ["end", "limit", "results", "start"], "type": "object"}, "response_events_rrm_results": {"description": "RRM event records returned by a search response", "items": {"$ref": "#/components/schemas/rrm_event"}, "type": "array", "uniqueItems": true}, "response_events_search": {"additionalProperties": false, "description": "Paginated response for wireless client event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the wireless client event search window", "type": "integer"}, "limit": {"description": "Maximum number of wireless client event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of wireless client event records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_search_results", "description": "Wireless client event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the wireless client event search window", "type": "integer"}, "total": {"description": "Number of wireless client event records matching the search filters across all pages", "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "response_events_search_results": {"description": "Wireless client event records returned by a search response", "items": {"$ref": "#/components/schemas/events_client"}, "type": "array", "uniqueItems": true}, "response_events_sky_atp_search": {"additionalProperties": false, "description": "Paginated response for Sky ATP event search results", "properties": {"end": {"description": "Epoch timestamp for the end of the Sky ATP event search window", "type": "integer"}, "limit": {"description": "Maximum number of Sky ATP event records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of Sky ATP event records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_events_sky_atp_search_results", "description": "Sky ATP event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the Sky ATP event search window", "type": "integer"}, "total": {"description": "Number of Sky ATP event records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_events_sky_atp_search_results": {"description": "Sky ATP event records returned by a search response", "items": {"$ref": "#/components/schemas/events_skyatp"}, "type": "array", "uniqueItems": true}, "response_guest_search": {"additionalProperties": false, "description": "Paginated response for guest authorization search results", "properties": {"end": {"description": "Epoch timestamp for the end of the guest authorization search window", "type": "integer"}, "limit": {"description": "Maximum number of guest authorization records returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of guest authorization records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_guest_search_results", "description": "Guest authorization records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the guest authorization search window", "type": "integer"}, "total": {"description": "Number of guest authorization records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_guest_search_results": {"description": "Guest authorization records returned by a search response", "items": {"$ref": "#/components/schemas/guest"}, "type": "array", "uniqueItems": true}, "response_http400": {"additionalProperties": false, "description": "Standard HTTP 400 bad request error response", "properties": {"detail": {"description": "Human-readable explanation of the bad request error", "examples": ["JSON parse error - Expecting value: line 5 column 8 (char 56)"], "type": "string"}}, "type": "object"}, "response_http400_webhook": {"additionalProperties": false, "description": "Webhook-specific HTTP 400 bad request error response", "properties": {"detail": {"description": "Human-readable explanation of the invalid webhook request", "examples": ["invalid field: assetfilter_ids"], "type": "string"}, "reason": {"description": "Additional reason explaining why the webhook request was invalid", "examples": ["contains duplicate uuids"], "type": "string"}}, "type": "object"}, "response_http401": {"additionalProperties": false, "description": "Standard HTTP 401 authentication error response", "properties": {"detail": {"description": "Human-readable explanation of the authentication error", "examples": ["Authentication credentials were not provided."], "type": "string"}}, "type": "object"}, "response_http403": {"additionalProperties": false, "description": "Standard HTTP 403 permission error response", "properties": {"detail": {"description": "Human-readable explanation of the permission error", "examples": ["You do not have permission to perform this action."], "type": "string"}}, "type": "object"}, "response_http404": {"additionalProperties": false, "description": "Standard HTTP 404 not found error response", "properties": {"id": {"description": "Missing resource identifier, when the API includes one", "type": "string"}}, "type": "object"}, "response_http429": {"additionalProperties": false, "description": "Standard HTTP 429 rate limit error response", "properties": {"detail": {"description": "Human-readable explanation of the rate limit error", "examples": ["Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold"], "type": "string"}}, "type": "object"}, "response_insight_rogue": {"additionalProperties": false, "description": "Paginated response for rogue or neighbor AP insight results", "properties": {"end": {"description": "Epoch timestamp for the end of the rogue AP insight window", "type": "integer"}, "limit": {"description": "Maximum number of rogue or neighbor AP observations returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of rogue or neighbor AP observations; null when no next page exists", "type": "string"}, "results": {"$ref": "#/components/schemas/response_insight_rogue_results", "description": "Rogue or neighbor AP observations returned for the site insight query"}, "start": {"description": "Epoch timestamp for the start of the rogue AP insight window", "type": "integer"}}, "required": ["end", "limit", "results", "start"], "type": "object"}, "response_insight_rogue_client": {"additionalProperties": false, "description": "Paginated response for rogue client insight results", "properties": {"end": {"description": "Epoch timestamp for the end of the rogue client insight window", "type": "integer"}, "limit": {"description": "Maximum number of rogue client observations returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of rogue client observations", "type": "string"}, "results": {"$ref": "#/components/schemas/response_insight_rogue_client_results", "description": "Rogue client observations returned for the site insight query"}, "start": {"description": "Epoch timestamp for the start of the rogue client insight window", "type": "integer"}}, "required": ["start", "end", "limit", "results"], "type": "object"}, "response_insight_rogue_client_results": {"description": "Rogue client insight observations returned by a query", "items": {"$ref": "#/components/schemas/insight_rogue_client"}, "type": "array", "uniqueItems": true}, "response_insight_rogue_results": {"description": "Rogue or neighbor AP insight observations returned by a query", "items": {"$ref": "#/components/schemas/insight_rogue_ap"}, "type": "array", "uniqueItems": true}, "response_inventory": {"additionalProperties": false, "description": "Result of adding device claim codes to organization inventory", "properties": {"added": {"$ref": "#/components/schemas/response_inventory_added", "description": "Claim codes accepted into organization inventory"}, "duplicated": {"$ref": "#/components/schemas/response_inventory_duplicated", "description": "Claim codes already present in organization inventory"}, "error": {"$ref": "#/components/schemas/response_inventory_error", "description": "Claim codes rejected by the inventory add operation"}, "inventory_added": {"$ref": "#/components/schemas/response_inventory_inventory_added", "description": "Detailed inventory records added by the claim operation"}, "inventory_duplicated": {"$ref": "#/components/schemas/response_inventory_inventory_duplicated", "description": "Detailed inventory records already present during the claim operation"}, "reason": {"$ref": "#/components/schemas/strings", "description": "Error reasons for claim codes that could not be added"}}, "type": "object"}, "response_inventory_added": {"description": "Claim codes accepted into organization inventory", "items": {"examples": ["6JG8E-PTFV2-A9Z2N"], "type": "string"}, "type": "array"}, "response_inventory_duplicated": {"description": "Claim codes already present in organization inventory", "items": {"examples": ["DVH4V-SNMSZ-PDXBR"], "type": "string"}, "type": "array"}, "response_inventory_error": {"description": "Claim codes rejected by the inventory add operation", "items": {"examples": ["PO1025335ohoh"], "type": "string"}, "type": "array"}, "response_inventory_inventory_added": {"description": "Detailed inventory records added by the claim operation", "items": {"$ref": "#/components/schemas/response_inventory_inventory_added_items"}, "minItems": 1, "type": "array", "uniqueItems": true}, "response_inventory_inventory_added_items": {"additionalProperties": false, "description": "Inventory device added by the claim operation", "properties": {"mac": {"description": "Device MAC address for the claimed inventory item", "examples": ["5c5b35000018"], "type": "string"}, "magic": {"description": "Activation code or claim code associated with the inventory item", "examples": ["6JG8EPTFV2A9Z2N"], "type": "string"}, "model": {"description": "Device model for the claimed inventory item", "examples": ["AP41"], "type": "string"}, "serial": {"description": "Device serial number for the claimed inventory item", "examples": ["FXLH2015150025"], "type": "string"}, "type": {"description": "Device type for the claimed inventory item", "examples": ["ap"], "type": "string"}}, "required": ["mac", "magic", "model", "serial", "type"], "type": "object"}, "response_inventory_inventory_duplicated": {"description": "Detailed inventory records already present during the claim operation", "items": {"$ref": "#/components/schemas/response_inventory_inventory_duplicated_items"}, "type": "array", "uniqueItems": true}, "response_inventory_inventory_duplicated_items": {"additionalProperties": false, "description": "Inventory device already present during the claim operation", "properties": {"mac": {"description": "Device MAC address for the duplicate inventory item", "examples": ["5c5b35000012"], "type": "string"}, "magic": {"description": "Activation code or claim code associated with the duplicate inventory item", "examples": ["DVH4VSNMSZPDXBR"], "type": "string"}, "model": {"description": "Device model for the duplicate inventory item", "examples": ["AP41"], "type": "string"}, "serial": {"description": "Device serial number for the duplicate inventory item", "examples": ["FXLH2015150027"], "type": "string"}, "type": {"description": "Device type for the duplicate inventory item", "examples": ["ap"], "type": "string"}}, "required": ["mac", "magic", "model", "serial", "type"], "type": "object"}, "response_iot_endpoints_search": {"additionalProperties": false, "description": "Time-bounded response for IoT endpoint search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the IoT endpoint search window", "type": "number"}, "results": {"$ref": "#/components/schemas/response_iot_endpoints_search_results", "description": "IoT endpoint statistics matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the IoT endpoint search window", "type": "number"}, "total": {"description": "Number of IoT endpoint records matching the search filters", "type": "integer"}}, "required": ["start", "end", "total", "results"], "type": "object"}, "response_iot_endpoints_search_results": {"description": "IoT endpoint statistics returned by a search response", "items": {"$ref": "#/components/schemas/iotendpoint_stats"}, "type": "array", "uniqueItems": true}, "response_location_coverage": {"additionalProperties": false, "description": "Beam coverage overview for a site location map", "properties": {"beams_means": {"$ref": "#/components/schemas/response_location_coverage_beams_means", "description": "Grid beam mean samples as [x, y, mean] values for the coverage view"}, "end": {"description": "Epoch timestamp for the end of the coverage analysis window", "type": "integer"}, "gridsize": {"description": "Grid cell size in meters for coverage samples", "type": "number"}, "result_def": {"$ref": "#/components/schemas/response_location_coverage_result_def", "description": "Column names describing each value position in the coverage result rows"}, "results": {"$ref": "#/components/schemas/response_location_coverage_results", "description": "Coverage result rows whose values follow the `result_def` column order"}, "start": {"description": "Epoch timestamp for the start of the coverage analysis window", "type": "integer"}}, "required": ["start", "end", "beams_means", "gridsize", "result_def", "results"], "type": "object"}, "response_location_coverage_beams_means": {"description": "List of [x, y, mean]s, x/y are in meters (UI would need to use map.ppm to calculate the pixel location from top-left).", "items": {"$ref": "#/components/schemas/response_location_coverage_beams_means_items"}, "type": "array"}, "response_location_coverage_beams_means_items": {"description": "One location coverage beam mean row, encoded as x, y, and mean values", "items": {"type": "number"}, "type": "array"}, "response_location_coverage_result": {"description": "One location coverage result row whose columns follow `result_def`", "items": {"type": "number"}, "type": "array"}, "response_location_coverage_result_def": {"description": "List of names annotating the fields in results", "items": {"type": "string"}, "type": "array"}, "response_location_coverage_results": {"description": "List of results, see result_def.", "items": {"$ref": "#/components/schemas/response_location_coverage_result"}, "type": "array"}, "response_log_search": {"additionalProperties": false, "description": "Paginated response for audit log search results", "properties": {"end": {"description": "Epoch timestamp for the end of the audit log search window", "type": "integer"}, "limit": {"description": "Maximum number of audit log events returned in this page", "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of audit log events", "type": "string"}, "results": {"$ref": "#/components/schemas/log_events", "description": "Audit log events matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the audit log search window", "type": "integer"}, "total": {"description": "Number of audit log events matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_login_failure": {"additionalProperties": false, "description": "Login failure response returned when authentication cannot continue locally", "properties": {"detail": {"description": "Human-readable login failure message returned by the API", "type": "string"}, "forward_url": {"description": "SSO URL where the user should continue login, when provided", "type": "string"}}, "required": ["detail"], "type": "object"}, "response_login_lookup": {"additionalProperties": false, "description": "Login lookup response indicating whether SSO is available for the account", "properties": {"sso_url": {"description": "URL for SSO login when the account must authenticate through an identity provider", "type": "string"}}, "type": "object"}, "response_login_oauth_url": {"additionalProperties": false, "description": "OAuth2 authorization URL response for login", "properties": {"authorization_url": {"description": "OAuth2 provider authorization URL to open for login", "type": "string"}, "client_id": {"description": "OAuth2 client identifier used for the authorization request", "type": "string"}}, "required": ["client_id", "authorization_url"], "type": "object"}, "response_login_success": {"additionalProperties": false, "description": "Login response body, empty on normal success or populated with two-factor state", "properties": {"email": {"description": "Admin email address for a login flow that requires two-factor authentication", "type": "string"}, "two_factor_passed": {"description": "Whether the supplied two-factor code has been accepted for this login", "type": "boolean"}, "two_factor_required": {"description": "Whether this login requires a two-factor code before a session is established", "type": "boolean"}}, "type": "object"}, "response_logout": {"additionalProperties": false, "description": "Logout response with optional SSO forwarding URL", "properties": {"forward_url": {"description": "If configured in SSO as custom_logout_url", "type": "string"}}, "type": "object"}, "response_map_import": {"additionalProperties": false, "description": "Result of importing map files and matching AP placements", "properties": {"aps": {"$ref": "#/components/schemas/response_map_import_aps", "description": "AP placement results produced by the map import"}, "floorplans": {"$ref": "#/components/schemas/response_map_import_floorplans", "description": "Floorplan import results produced by the map import"}, "for_site": {"description": "Whether this map import response is scoped to a site", "readOnly": true, "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the map import result"}, "summary": {"$ref": "#/components/schemas/response_map_import_summary", "description": "Counts summarizing assignments made during the map import"}}, "required": ["site_id", "aps", "floorplans", "summary"], "type": "object"}, "response_map_import_ap": {"additionalProperties": false, "description": "AP placement result from a map import", "properties": {"action": {"$ref": "#/components/schemas/response_map_import_ap_action", "description": "Import action applied to this AP"}, "floorplan_id": {"description": "Floorplan identifier where the AP placement was imported", "format": "uuid", "type": "string"}, "height": {"description": "Mounting height for the AP on the imported floorplan", "format": "double", "type": "number"}, "mac": {"description": "AP MAC address matched from the import file", "type": "string"}, "map_id": {"description": "Map identifier associated with the imported AP placement", "format": "uuid", "type": "string"}, "orientation": {"description": "AP orientation in degrees on the imported floorplan", "type": "integer"}, "reason": {"description": "Explanation of why the AP import action was not completed, when provided", "type": "string"}}, "required": ["mac", "action", "map_id", "floorplan_id", "orientation"], "type": "object"}, "response_map_import_ap_action": {"description": "enum: `assigned-named-placed`, `assigned-placed`, `ignored`, `named-placed`, `placed`", "enum": ["assigned-named-placed", "assigned-placed", "ignored", "named-placed", "placed"], "type": "string"}, "response_map_import_aps": {"description": "AP placement results produced by the map import", "items": {"$ref": "#/components/schemas/response_map_import_ap"}, "type": "array", "uniqueItems": true}, "response_map_import_floorplan": {"additionalProperties": false, "description": "Floorplan result from a map import", "properties": {"action": {"description": "Import action applied to this floorplan", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Floorplan identifier returned by the import"}, "map_id": {"description": "Map identifier associated with the imported floorplan", "format": "uuid", "type": "string"}, "name": {"description": "Floorplan name imported from the map file", "type": "string"}, "reason": {"description": "Explanation of why the floorplan import action was not completed, when provided", "type": "string"}}, "required": ["id", "name", "action", "map_id"], "type": "object"}, "response_map_import_floorplans": {"description": "Floorplan import results produced by the map import", "items": {"$ref": "#/components/schemas/response_map_import_floorplan"}, "type": "array", "uniqueItems": true}, "response_map_import_summary": {"additionalProperties": false, "description": "Counts summarizing assignments made during the map import", "properties": {"num_ap_assigned": {"description": "Number of AP placements assigned during the map import", "type": "integer"}, "num_inv_assigned": {"description": "Number of inventory records assigned to the site during the map import", "type": "integer"}, "num_map_assigned": {"description": "Number of map floorplans assigned during the map import", "type": "integer"}}, "required": ["num_ap_assigned", "num_map_assigned", "num_inv_assigned"], "type": "object"}, "response_ml": {"description": "Machine-learning response records returned as opaque objects", "items": {"additionalProperties": true, "type": "object"}, "type": "array", "uniqueItems": true}, "response_mobile_verify_secret": {"additionalProperties": false, "description": "Mobile SDK invite verification response", "properties": {"name": {"description": "Organization display name associated with the verified SDK invite", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the verified SDK invite"}, "secret": {"description": "Device-specific secret returned for mobile SDK activation", "format": "password", "type": "string"}}, "required": ["name", "org_id", "secret"], "type": "object"}, "response_msp_inventory_device": {"additionalProperties": false, "description": "Inventory device record returned by MSP device MAC lookup", "properties": {"for_site": {"description": "Whether this inventory device is associated with a site", "readOnly": true, "type": "boolean"}, "mac": {"description": "Device MAC address for the inventory device", "readOnly": true, "type": "string"}, "model": {"description": "Device model for the inventory device", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this inventory device"}, "serial": {"description": "Device serial number for the inventory device", "readOnly": true, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for the inventory device"}, "type": {"description": "Device type for the inventory device", "readOnly": true, "type": "string"}}, "required": ["serial", "model", "type", "mac", "org_id", "site_id"], "type": "object"}, "response_mxedge_events_search": {"additionalProperties": false, "description": "Search response for Mist Edge event records", "properties": {"end": {"description": "Epoch timestamp for the end of the Mist Edge event search window", "examples": [1694708579], "type": "integer"}, "limit": {"description": "Maximum number of Mist Edge event records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of Mist Edge event records", "type": "string"}, "page": {"description": "Returned page number for Mist Edge event records", "examples": [3], "type": "integer"}, "results": {"$ref": "#/components/schemas/mxedge_events", "description": "Mist Edge event records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the Mist Edge event search window", "examples": [1694622179], "type": "integer"}}, "type": "object"}, "response_mxedge_search": {"additionalProperties": false, "description": "Search response for Mist Edge records", "properties": {"end": {"description": "Epoch timestamp for the end of the Mist Edge search window", "examples": [1694708579], "type": "integer"}, "limit": {"description": "Maximum number of Mist Edge records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "Pagination cursor or URL for retrieving the next page of Mist Edge records", "type": "string"}, "results": {"$ref": "#/components/schemas/response_mxedge_search_results", "description": "Mist Edge records matching the search filters"}, "start": {"description": "Epoch timestamp for the start of the Mist Edge search window", "examples": [1694622179], "type": "integer"}, "total": {"description": "Number of Mist Edge records matching the search filters across all pages", "examples": [2], "type": "integer"}}, "type": "object"}, "response_mxedge_search_results": {"description": "Mist Edge search records returned by a search response", "items": {"$ref": "#/components/schemas/search_mxedge"}, "type": "array"}, "response_mxedge_upgrade": {"additionalProperties": false, "description": "Mist Edge upgrade details response", "properties": {"channel": {"description": "Upgrade channel used to select Mist Edge package versions", "minLength": 1, "type": "string"}, "counts": {"$ref": "#/components/schemas/mxedge_upgrade_response_counts", "description": "Per-status counts of Mist Edge targets in this upgrade"}, "id": {"$ref": "#/components/schemas/id", "description": "Upgrade identifier for this Mist Edge upgrade request"}, "status": {"description": "Current status of the Mist Edge upgrade", "minLength": 1, "type": "string"}, "strategy": {"description": "Rollout strategy used for the Mist Edge upgrade", "minLength": 1, "type": "string"}, "versions": {"additionalProperties": true, "description": "Per-service target versions for this Mist Edge upgrade", "type": "object"}}, "required": ["status", "strategy", "versions", "channel", "id", "counts"], "type": "object"}, "response_mxedge_upgrades": {"description": "Mist Edge upgrade records returned by list upgrade operations", "items": {"$ref": "#/components/schemas/response_mxedge_upgrade"}, "type": "array"}, "response_mxtunnels_preempt_aps": {"additionalProperties": false, "description": "Result of preempting APs onto preferred MxTunnel peers", "properties": {"preempted_aps": {"$ref": "#/components/schemas/strings", "description": "AP identifiers moved to the preferred MxTunnel peer"}}, "required": ["preempted_aps"], "type": "object"}, "response_nac_crl_files": {"additionalProperties": false, "description": "Response containing uploaded NAC CRL file metadata", "properties": {"results": {"$ref": "#/components/schemas/nac_crl_files", "description": "Uploaded NAC CRL files for the organization"}}, "type": "object"}, "response_org_devices": {"additionalProperties": false, "description": "Response containing organization device records", "properties": {"results": {"$ref": "#/components/schemas/org_devices", "description": "Device records returned by the organization device list operation"}}, "required": ["results"], "type": "object"}, "response_org_devices_summary": {"additionalProperties": false, "description": "Organization device count summary", "properties": {"num_aps": {"description": "Number of APs in the organization", "readOnly": true, "type": "integer"}, "num_gateways": {"description": "Number of gateways in the organization", "readOnly": true, "type": "integer"}, "num_mxedges": {"description": "Number of Mist Edges in the organization", "readOnly": true, "type": "integer"}, "num_switches": {"description": "Number of switches in the organization", "readOnly": true, "type": "integer"}, "num_unassigned_aps": {"description": "Number of APs in organization inventory that are not assigned to a site", "readOnly": true, "type": "integer"}, "num_unassigned_gateways": {"description": "Number of gateways in organization inventory that are not assigned to a site", "readOnly": true, "type": "integer"}, "num_unassigned_switches": {"description": "Number of switches in organization inventory that are not assigned to a site", "readOnly": true, "type": "integer"}}, "type": "object"}, "response_org_inventory_change": {"additionalProperties": false, "description": "Result of an organization inventory assignment or deletion operation", "properties": {"error": {"$ref": "#/components/schemas/strings", "description": "Device identifiers that failed during the inventory operation"}, "op": {"$ref": "#/components/schemas/response_org_inventory_change_op", "description": "Inventory operation applied to the requested device identifiers"}, "reason": {"$ref": "#/components/schemas/strings", "description": "Failure reasons corresponding to entries in the error list"}, "success": {"$ref": "#/components/schemas/strings", "description": "Device identifiers successfully processed by the inventory operation"}}, "required": ["error", "op", "success", "reason"], "type": "object"}, "response_org_inventory_change_op": {"description": "enum: `assign`, `delete`, `downgrade_to_jsi`, `unassign`, `upgrade_to_mist`", "enum": ["assign", "delete", "downgrade_to_jsi", "unassign", "upgrade_to_mist"], "type": "string"}, "response_org_search": {"additionalProperties": false, "description": "Paginated response for MSP organization search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the organization search window", "readOnly": true, "type": "number"}, "limit": {"description": "Maximum number of organization records returned in this page", "readOnly": true, "type": "integer"}, "next": {"description": "URL for retrieving the next page of organization search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_org_search_results", "description": "Organization records matching the MSP search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the organization search window", "readOnly": true, "type": "number"}, "total": {"description": "Number of organization records matching the search filters across all pages", "readOnly": true, "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_org_search_item": {"additionalProperties": false, "description": "Organization record returned by MSP organization search", "properties": {"msp_id": {"$ref": "#/components/schemas/msp_id", "description": "MSP that owns or manages this organization"}, "name": {"description": "Display name of the organization", "readOnly": true, "type": "string"}, "num_aps": {"description": "Number of APs in the organization", "readOnly": true, "type": "integer"}, "num_gateways": {"description": "Number of gateways in the organization", "readOnly": true, "type": "integer"}, "num_sites": {"description": "Number of sites in the organization", "readOnly": true, "type": "integer"}, "num_switches": {"description": "Number of switches in the organization", "readOnly": true, "type": "integer"}, "num_unassigned_aps": {"description": "Number of APs in organization inventory that are not assigned to a site", "readOnly": true, "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier for this search result"}, "sub_ana_entitled": {"description": "Number of SUB-ANA subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_ana_required": {"description": "Number of SUB-ANA subscriptions required by the organization", "readOnly": true, "type": "integer"}, "sub_ast_entitled": {"description": "Number of SUB-AST subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_ast_required": {"description": "Number of SUB-AST subscriptions required by the organization", "readOnly": true, "type": "integer"}, "sub_eng_entitled": {"description": "Number of SUB-ENG subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_eng_required": {"description": "Number of SUB-ENG subscriptions required by the organization", "readOnly": true, "type": "integer"}, "sub_ex12_required": {"description": "Number of SUB-EX12 subscriptions required by the organization", "readOnly": true, "type": "integer"}, "sub_insufficient": {"description": "If this org has sufficient subscription", "readOnly": true, "type": "boolean"}, "sub_man_entitled": {"description": "Number of SUB-MAN subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_man_required": {"description": "Number of SUB-MAN subscriptions required by the organization", "readOnly": true, "type": "integer"}, "sub_me_entitled": {"description": "Number of SUB-ME subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_vna_entitled": {"description": "Number of SUB-VNA subscriptions entitled for the organization", "readOnly": true, "type": "integer"}, "sub_vna_required": {"description": "Number of SUB-VNA subscriptions required by the organization", "readOnly": true, "type": "integer"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the organization search data was sampled"}, "trial_enabled": {"description": "If this org is under trial period", "readOnly": true, "type": "boolean"}, "usage_types": {"$ref": "#/components/schemas/response_org_search_item_usage_types", "description": "Subscription usage types enabled for the organization"}}, "type": "object"}, "response_org_search_item_usage_types": {"description": "Subscription usage type codes enabled for an organization", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "response_org_search_results": {"description": "Organization records returned by MSP organization search", "items": {"$ref": "#/components/schemas/response_org_search_item"}, "type": "array", "uniqueItems": true}, "response_org_site_sle": {"description": "Organization site SLE response for Wi-Fi, wired, or WAN", "oneOf": [{"$ref": "#/components/schemas/org_site_sle_wifi"}, {"$ref": "#/components/schemas/org_site_wired_wifi"}, {"$ref": "#/components/schemas/org_site_wan_wifi"}]}, "response_org_suppress_alarm": {"additionalProperties": false, "description": "Response containing currently suppressed organization alarm entries", "properties": {"results": {"$ref": "#/components/schemas/response_org_suppress_alarm_results", "description": "Suppressed alarm entries currently configured for the organization"}}, "type": "object"}, "response_org_suppress_alarm_item": {"additionalProperties": false, "description": "Suppressed alarm entry for an organization or site alarm scope", "properties": {"duration": {"description": "Number of seconds that alarms remain suppressed. Maximum duration is 86400 * 14 (14 days). Use 0 to remove suppression.", "type": "integer"}, "expire_time": {"description": "Epoch timestamp, in seconds, when the alarm suppression expires", "type": "integer"}, "scheduled_time": {"description": "Epoch timestamp, in seconds, when the alarm suppression starts", "type": "integer"}, "scope": {"$ref": "#/components/schemas/suppressed_alarm_scope", "description": "Alarm suppression scope, either organization-wide or site-specific"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for a site-scoped alarm suppression entry"}}, "type": "object"}, "response_org_suppress_alarm_results": {"description": "Suppressed alarm entries returned for the organization", "items": {"$ref": "#/components/schemas/response_org_suppress_alarm_item"}, "type": "array"}, "response_org_system_events_search": {"additionalProperties": false, "description": "Paginated response for organization system event search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the system event search window", "type": "integer"}, "limit": {"description": "Maximum number of system event records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of system event search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_org_system_events_search_results", "description": "Organization system event records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the system event search window", "type": "integer"}, "total": {"description": "Number of system event records matching the search filters across all pages", "type": "integer"}}, "required": ["results", "start", "end", "limit", "total"], "type": "object"}, "response_org_system_events_search_results": {"description": "Organization system event records returned by search", "items": {"$ref": "#/components/schemas/org_system_event"}, "type": "array", "uniqueItems": true}, "response_past_spectrum_analysis": {"additionalProperties": false, "description": "Paginated response for past site spectrum analysis records", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the spectrum analysis query window", "type": "integer"}, "limit": {"description": "Maximum number of spectrum analysis records returned in this page", "type": "integer"}, "page": {"description": "Current page number returned for the spectrum analysis results", "type": "integer"}, "results": {"$ref": "#/components/schemas/response_past_spectrum_analysis_results", "description": "Spectrum analysis records for the requested site and time window"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the spectrum analysis query window", "type": "integer"}, "total": {"description": "Number of spectrum analysis records available for the given time range", "type": "integer"}}, "type": "object"}, "response_past_spectrum_analysis_channel_usage": {"additionalProperties": false, "description": "Channel usage data for a specific channel", "properties": {"channel": {"description": "Radio channel measured by this channel usage sample", "examples": [36], "type": "integer"}, "noise": {"description": "Measured noise floor, in dBm, for the channel", "examples": [-90.0], "type": "number"}, "non_wifi": {"description": "Percentage of channel usage by non-WiFi signals in the range [0, 1]", "examples": [0.87], "type": "number"}, "wifi": {"description": "Percentage of channel usage by WiFi in the range [0, 1]", "examples": [0.13], "type": "number"}}, "type": "object"}, "response_past_spectrum_analysis_channel_usages": {"description": "Per-channel utilization measurements captured during spectrum analysis", "items": {"$ref": "#/components/schemas/response_past_spectrum_analysis_channel_usage"}, "type": "array"}, "response_past_spectrum_analysis_fft_sample": {"additionalProperties": false, "description": "FFT sample data for a specific frequency", "properties": {"frequency": {"description": "Sample frequency, in MHz, for this FFT point", "examples": [2437.0], "type": "number"}, "rssi": {"description": "Received signal strength, in dBm, for this FFT sample", "examples": [-70.0], "type": "number"}, "signal7": {"description": "Additional signal level, in dBm, reported for this FFT sample", "examples": [-70.0], "type": "number"}}, "type": "object"}, "response_past_spectrum_analysis_fft_samples": {"description": "List of FFT samples for the spectrum analysis", "items": {"$ref": "#/components/schemas/response_past_spectrum_analysis_fft_sample"}, "type": "array"}, "response_past_spectrum_analysis_result": {"additionalProperties": false, "description": "Result of a past spectrum analysis", "properties": {"band": {"description": "Radio band on which the spectrum analysis was run (for example, 24, 5, or 6)", "type": "string"}, "channel_usage": {"$ref": "#/components/schemas/response_past_spectrum_analysis_channel_usages", "description": "Per-channel utilization measurements captured during the analysis"}, "fft_samples": {"$ref": "#/components/schemas/response_past_spectrum_analysis_fft_samples", "description": "FFT signal samples captured during the analysis"}, "mac": {"description": "AP MAC address for the access point that ran the spectrum analysis", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the site where the spectrum analysis was run"}, "timestamp": {"description": "Epoch timestamp, in seconds, when the spectrum analysis was run", "type": "integer"}}, "type": "object"}, "response_past_spectrum_analysis_results": {"description": "Past spectrum analysis records returned for the site", "items": {"$ref": "#/components/schemas/response_past_spectrum_analysis_result"}, "type": "array"}, "response_pcap_ap": {"additionalProperties": false, "description": "AP radio settings used for a packet capture", "properties": {"band": {"description": "Radio band used for the AP packet capture", "type": "integer"}, "bandwidth": {"description": "Channel bandwidth used for the AP packet capture, in MHz", "type": "integer"}, "channel": {"description": "Radio channel used for the AP packet capture", "type": "integer"}, "tcpdump_expression": {"description": "Tcpdump filter expression applied to the AP packet capture, or null when no filter is applied", "type": ["string", "null"]}}, "type": "object"}, "response_pcap_bucket_config": {"additionalProperties": false, "description": "Result of a custom packet capture bucket setup or verification operation", "properties": {"bucket": {"description": "Custom bucket name used for packet capture storage", "type": "string"}, "detail": {"description": "Status or error detail returned for the bucket operation", "type": "string"}}, "type": "object"}, "response_pcap_search": {"additionalProperties": false, "description": "Paginated response for packet capture search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the packet capture search window", "type": "integer"}, "limit": {"description": "Maximum number of packet capture records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of packet capture search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_pcap_search_results", "description": "Packet capture records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the packet capture search window", "type": "integer"}, "total": {"description": "Number of packet capture records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start"], "type": "object"}, "response_pcap_search_item": {"additionalProperties": false, "description": "Packet capture record returned by organization or site packet capture search", "properties": {"ap_macs": {"$ref": "#/components/schemas/strings", "description": "AP MAC addresses associated with the packet capture"}, "aps": {"$ref": "#/components/schemas/response_pcap_search_item_aps", "description": "AP MAC addresses included in the packet capture"}, "duration": {"description": "Packet capture duration in seconds", "examples": [600], "type": "number"}, "format": {"description": "Output format requested for the packet capture", "examples": ["stream"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the packet capture"}, "last_seen": {"description": "Last seen timestamp of the capture", "examples": [1693482149.417], "type": "number"}, "max_num_packets": {"description": "Maximum number of packets requested for the capture", "examples": [1024], "type": "number"}, "mxedges": {"description": "List of Mist Edge IDs included in the capture", "items": {"type": "string"}, "type": "array"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the packet capture"}, "pcap_aps": {"$ref": "#/components/schemas/response_pcap_search_item_pcap_aps", "description": "Per-AP radio capture settings keyed by AP MAC address"}, "pcap_url": {"description": "URL for downloading the generated PCAP file", "type": "string"}, "site_id": {"description": "Site associated with the packet capture, when the capture is site-scoped", "type": ["string", "null"]}, "termination_reason": {"description": "Reason the packet capture session ended", "examples": ["default"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the packet capture record was created"}, "type": {"description": "Packet capture type represented by this record", "type": "string"}, "url": {"description": "Link for accessing the packet capture output or stream", "type": "string"}}, "required": ["timestamp", "type", "url"], "type": "object"}, "response_pcap_search_item_ap": {"description": "AP MAC address included in a packet capture", "examples": ["5c5b35000010"], "type": "string"}, "response_pcap_search_item_aps": {"description": "AP MAC addresses included in a packet capture", "items": {"$ref": "#/components/schemas/response_pcap_search_item_ap"}, "type": "array"}, "response_pcap_search_item_pcap_aps": {"additionalProperties": {"$ref": "#/components/schemas/response_pcap_search_item_pcap_aps_item"}, "description": "Per-AP radio capture settings keyed by AP MAC address", "examples": [{"5c5b35000010": {"band": "6", "bandwidth": "20", "channel": 133, "tcpdump_expression": null}}], "type": "object"}, "response_pcap_search_item_pcap_aps_item": {"additionalProperties": false, "description": "AP radio settings captured for a packet capture record", "properties": {"band": {"description": "Radio band used for this AP capture", "type": "string"}, "bandwidth": {"description": "Channel bandwidth used for this AP capture, in MHz", "type": "string"}, "channel": {"description": "Radio channel used for this AP capture", "type": "integer"}, "tcpdump_expression": {"description": "Tcpdump filter expression applied to this AP capture, or null when no filter is applied", "type": ["string", "null"]}}, "type": "object"}, "response_pcap_search_results": {"description": "Packet capture records returned by search", "items": {"$ref": "#/components/schemas/response_pcap_search_item"}, "type": "array", "uniqueItems": true}, "response_pcap_start": {"additionalProperties": false, "description": "Packet capture session created by a start request", "properties": {"ap_count": {"description": "Number of APs targeted by the packet capture", "type": "integer"}, "aps": {"$ref": "#/components/schemas/strings", "description": "AP MAC addresses targeted by the packet capture"}, "client_mac": {"description": "Client MAC address filter applied to the packet capture, or null when no client filter is used", "type": ["string", "null"]}, "duration": {"description": "Packet capture duration in seconds", "type": "number"}, "enabled": {"description": "Whether the packet capture session is enabled after the start request", "type": "boolean"}, "expiry": {"description": "Epoch timestamp, in seconds, when the capture session expires", "type": "number"}, "format": {"description": "Output format for packet capture data", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the packet capture session"}, "include_mcast": {"description": "Whether multicast traffic is included in the packet capture", "type": "boolean"}, "max_pkt_len": {"description": "Maximum number of bytes captured from each packet", "type": "integer"}, "num_packets": {"description": "Maximum number of packets to capture; use 0 for unlimited", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the packet capture session"}, "raw": {"description": "Whether raw packet data is included in the capture output", "type": "boolean"}, "site_id": {"description": "Site associated with the packet capture session, when site-scoped", "type": ["string", "null"]}, "ssid": {"description": "Wireless network SSID filter applied to the packet capture, or null when no SSID filter is used", "type": ["string", "null"]}, "tcpdump_parser_expression": {"description": "Tcpdump parser expression applied to the packet capture, or null when no parser expression is used", "type": ["string", "null"]}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the packet capture session was created"}, "type": {"description": "Packet capture type requested by the start operation", "type": "string"}}, "required": ["timestamp", "id", "org_id", "site_id", "type"], "type": "object"}, "response_pcap_status": {"additionalProperties": false, "description": "Current status of a packet capture session", "properties": {"ap_mac": {"description": "AP MAC address targeted by the packet capture, or null when no single AP filter is set", "type": ["string", "null"]}, "aps": {"$ref": "#/components/schemas/response_pcap_status_aps", "description": "AP MAC addresses targeted by the packet capture"}, "client_mac": {"description": "Client MAC address filter applied to the packet capture, or null when no client filter is used", "examples": ["60a10a773412"], "type": ["string", "null"]}, "duration": {"description": "Configured packet capture duration, in seconds", "examples": [300], "type": "integer"}, "enabled": {"description": "Whether the packet capture session is currently enabled", "type": "boolean"}, "expiry": {"description": "Epoch timestamp, in seconds, when the capture session expires", "examples": [1695838060.309526], "type": "number"}, "failed": {"$ref": "#/components/schemas/response_pcap_status_failed", "description": "AP MAC addresses where capture configuration failed"}, "format": {"$ref": "#/components/schemas/capture_mxedge_format", "description": "Output format for packet capture data"}, "gateways": {"$ref": "#/components/schemas/response_pcap_status_gateways", "description": "Gateway devices included in the packet capture session"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the packet capture session"}, "includes_mcast": {"description": "Whether multicast traffic is included in the packet capture", "type": "boolean"}, "invalid_mxedges": {"additionalProperties": true, "description": "Map of Mist Edge IDs that could not be configured for capture", "type": "object"}, "max_num_packets": {"description": "Max number of packets configured by user", "examples": [1000], "type": "integer"}, "max_pkt_len": {"description": "Maximum number of bytes captured from each packet", "examples": [512], "type": "integer"}, "mxedge_count": {"description": "Number of Mist Edges in the capture session", "type": "integer"}, "mxedges": {"$ref": "#/components/schemas/response_pcap_status_mxedges", "description": "Mist Edge capture settings keyed by Mist Edge ID"}, "num_packets": {"description": "total number of packets captured by all AP, not applicable for type [client, new_assoc]", "type": "integer"}, "ok": {"$ref": "#/components/schemas/response_pcap_status_ok", "description": "AP MAC addresses successfully configured for packet capture"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the packet capture session"}, "pcap_aps": {"$ref": "#/components/schemas/response_pcap_status_pcap_aps", "description": "Per-AP radio capture settings keyed by AP MAC address"}, "radiotap_tcpdump_expression": {"description": "When `type`==`radiotap`, radiotap_tcpdump_expression expression provided by the user", "type": "string"}, "raw": {"description": "Whether raw packet data is included in the capture output", "type": "boolean"}, "scan_tcpdump_expression": {"description": "When `type`==`scan`, scan_tcpdump_expression provided by the user", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the packet capture session, when site-scoped"}, "ssid": {"description": "Wireless network SSID filter applied to the packet capture, or null when no SSID filter is used", "type": ["string", "null"]}, "started_time": {"description": "Epoch timestamp, in seconds, when the capture session started", "examples": [1435080709], "type": "integer"}, "switches": {"$ref": "#/components/schemas/response_pcap_status_switches", "description": "Switch devices included in the packet capture session"}, "tcpdump_expression": {"description": "tcpdump expression provided by the user (common)", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the packet capture status was reported"}, "type": {"$ref": "#/components/schemas/pcap_type", "description": "Packet capture type for the current session"}, "tzsp_host": {"description": "Required if `format`==`tzsp`. Remote host accessible to Mist Edges over the network for receiving the captured packets.", "examples": ["192.168.1.2"], "type": "string"}, "tzsp_port": {"description": "If `format`==`tzsp`. Port on remote host for receiving the captured packets", "maximum": 65535, "minimum": 1, "type": "integer"}, "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"}, "response_pcap_status_aps": {"description": "List of target APs to capture packets", "items": {"type": "string"}, "type": "array"}, "response_pcap_status_failed": {"description": "List of APs where configuration attempt failed", "items": {"type": "string"}, "type": "array"}, "response_pcap_status_gateways": {"description": "Information on gateways to capture packets on if a gateway capture type is specified", "items": {"type": "string"}, "type": "array"}, "response_pcap_status_mxedges": {"additionalProperties": {"$ref": "#/components/schemas/response_pcap_status_mxedges_item"}, "description": "Dict of Mist Edges to capture on, property key is the Mist Edge ID", "type": "object"}, "response_pcap_status_mxedges_item": {"additionalProperties": false, "description": "Mist Edge interface settings for a packet capture", "properties": {"interfaces": {"additionalProperties": {"$ref": "#/components/schemas/capture_mxedge_mxedges_interfaces"}, "description": "Dict of interfaces to capture on, property key is the port name", "type": "object"}}, "type": "object"}, "response_pcap_status_ok": {"description": "List of target APs successfully configured to capture packets", "items": {"type": "string"}, "type": "array"}, "response_pcap_status_pcap_aps": {"additionalProperties": {"$ref": "#/components/schemas/response_pcap_ap"}, "description": "Per-AP radio capture settings keyed by AP MAC address", "examples": [{"5c5b35000010": {"band": 6, "bandwidth": 20, "channel": 133, "tcpdump_expression": null}}], "type": "object"}, "response_pcap_status_switches": {"description": "Information on switches to capture packets on if a switch capture type is specified. irb port interface is automatically added to capture as needed to ensure all desired packets are captured.", "items": {"type": "string"}, "type": "array"}, "response_pma_dashboards": {"description": "List of PMA dashboard metadata records", "items": {"$ref": "#/components/schemas/pma_dashboard"}, "type": "array"}, "response_port_stats_search": {"additionalProperties": false, "description": "Paginated response for switch and gateway port statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the port statistics reporting window", "type": "integer"}, "limit": {"description": "Maximum number of port statistics records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of port statistics search results", "type": "string"}, "results": {"$ref": "#/components/schemas/stats_switch_ports", "description": "Switch and gateway port statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the port statistics reporting window", "type": "integer"}, "total": {"description": "Number of port statistics records matching the search filters across all pages", "type": "integer"}}, "required": ["limit", "results", "total"], "type": "object"}, "response_psk_portal_logs_search": {"additionalProperties": false, "description": "Paginated response for organization PSK Portal log search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the PSK Portal log search window", "examples": [1428954000], "type": "integer"}, "limit": {"description": "Maximum number of PSK Portal log entries returned in this page", "examples": [100], "type": "integer"}, "next": {"description": "URL for retrieving the next page of PSK Portal log search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_psk_portal_logs_search_item_list", "description": "PSK Portal log entries matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the PSK Portal log search window", "examples": [1428939600], "type": "integer"}, "total": {"description": "Number of PSK Portal log entries matching the search filters across all pages", "examples": [135], "type": "integer"}}, "type": "object"}, "response_psk_portal_logs_search_item": {"additionalProperties": false, "description": "PSK Portal log entry returned by organization log search", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Audit log identifier for this PSK Portal log entry"}, "message": {"description": "Human-readable message describing the PSK Portal action", "examples": ["Rotate PSK test@mist.com"], "type": "string"}, "name_id": {"description": "SSO NameID value associated with the PSK Portal action", "examples": ["test@mist.com"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the PSK Portal log entry"}, "psk_id": {"description": "Identifier of the PSK associated with the log entry", "examples": ["608fe603-f9f0-4ce9-9473-04ef6c6ea749"], "format": "uuid", "type": "string"}, "psk_name": {"description": "Display name of the PSK associated with the log entry", "examples": ["test@mist.com"], "type": "string"}, "pskportal_id": {"description": "Identifier of the PSK Portal associated with the log entry", "examples": ["c1742c09-af35-4161-96ef-7dc65c6d5674"], "format": "uuid", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the PSK Portal log entry was recorded"}}, "type": "object"}, "response_psk_portal_logs_search_item_list": {"description": "PSK Portal log entries returned by search", "items": {"$ref": "#/components/schemas/response_psk_portal_logs_search_item"}, "type": "array"}, "response_router_ssr_register_cmd": {"additionalProperties": false, "description": "SSR registration token and commands used to register the router with Mist", "properties": {"conductor_cmd": {"description": "Command to run in the SSR conductor CLI for Mist registration", "type": "string"}, "registration_code": {"description": "Registration token used by the SSR registration commands", "type": "string"}, "router_shell_cmd": {"description": "Shell command to run on the SSR router for Mist registration", "type": "string"}}, "type": "object"}, "response_rrm_channel_scores": {"additionalProperties": false, "description": "Response containing RRM channel score records", "properties": {"results": {"$ref": "#/components/schemas/response_rrm_channel_scores_results", "description": "Per-channel RRM score records for the requested band"}}, "required": ["results"], "type": "object"}, "response_rrm_channel_scores_results": {"description": "RRM channel score records returned for a band", "items": {"$ref": "#/components/schemas/rrm_channel_score"}, "type": "array", "uniqueItems": true}, "response_rrm_consideration": {"additionalProperties": false, "description": "Response containing current RRM considerations for an AP radio band", "properties": {"results": {"$ref": "#/components/schemas/response_rrm_consideration_results", "description": "Channel consideration metrics used by RRM for the AP radio band"}}, "required": ["results"], "type": "object"}, "response_rrm_consideration_results": {"description": "RRM channel consideration records returned for an AP radio band", "items": {"$ref": "#/components/schemas/rrm_consideration"}, "type": "array", "uniqueItems": true}, "response_rrm_neighbors": {"additionalProperties": false, "description": "Paginated response for current RRM neighbor observations", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the RRM neighbor observation window", "type": "integer"}, "limit": {"description": "Maximum number of RRM neighbor records returned in this page", "type": "integer"}, "next": {"description": "Link to query next set of results. value is null if no next page exists.", "type": "string"}, "results": {"$ref": "#/components/schemas/response_rrm_neighbors_results", "description": "RRM neighbor records observed for the requested site and band"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the RRM neighbor observation window", "type": "integer"}}, "required": ["end", "limit", "results", "start"], "type": "object"}, "response_rrm_neighbors_results": {"description": "RRM neighbor records returned for the requested site and band", "items": {"$ref": "#/components/schemas/rrm_neighbors"}, "type": "array", "uniqueItems": true}, "response_running_spectrum_analysis": {"additionalProperties": false, "description": "Running spectrum analysis session for a site", "properties": {"band": {"description": "Radio band currently being scanned by spectrum analysis, such as 24, 5, or 6", "type": "string"}, "channels": {"description": "List of channels being scanned in the spectrum analysis", "items": {"type": "integer"}, "type": "array"}, "device_id": {"description": "Device ID of the AP that is running spectrum analysis", "format": "uuid", "type": "string"}, "duration": {"description": "Length of the running spectrum analysis session, in seconds", "type": "integer"}, "format": {"description": "Output format for the running spectrum analysis data, such as json or stream", "type": "string"}, "started_time": {"description": "Timestamp when the spectrum analysis was started", "type": "integer"}, "width": {"description": "Channel width used during the spectrum analysis scan, in MHz", "type": "integer"}}, "type": "object"}, "response_search": {"additionalProperties": false, "description": "Paginated response for MSP organization search results", "properties": {"limit": {"description": "Maximum number of MSP search results returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of MSP search results", "type": "string"}, "page": {"description": "Current page number returned for the MSP search results", "type": "integer"}, "results": {"$ref": "#/components/schemas/response_search_results", "description": "MSP search result entries matching the query"}, "total": {"description": "Number of MSP search results matching the query across all pages", "type": "integer"}}, "required": ["limit", "page", "results", "total"], "type": "object"}, "response_search_bgps": {"additionalProperties": false, "description": "Paginated response for BGP peer statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the BGP statistics search window", "type": "number"}, "limit": {"description": "Maximum number of BGP peer statistics records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of BGP peer statistics results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_bgp_search_list_results", "description": "BGP peer statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the BGP statistics search window", "type": "number"}, "total": {"description": "Number of BGP peer statistics records matching the search filters across all pages", "type": "integer"}}, "type": "object"}, "response_search_item": {"additionalProperties": false, "description": "MSP search result entry", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the matching MSP search result"}, "text": {"description": "Display text for the MSP search result", "type": "string"}, "type": {"description": "Category of MSP search result, such as `orgs`", "type": "string"}}, "required": ["id", "text", "type"], "type": "object"}, "response_search_results": {"description": "MSP search result entries returned by search", "items": {"$ref": "#/components/schemas/response_search_item"}, "type": "array", "uniqueItems": true}, "response_search_var": {"additionalProperties": false, "description": "Paginated response for organization variable search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the variable search window", "type": "integer"}, "limit": {"description": "Maximum number of variable records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of variable search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_search_var_results", "description": "Organization variable records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the variable search window", "type": "integer"}, "total": {"description": "Number of variable records matching the search filters across all pages", "type": "integer"}}, "type": "object"}, "response_search_var_item": {"additionalProperties": false, "description": "Organization variable record returned by search", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the organization variable was created"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the organization variable was last modified"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the variable"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the variable, when the source is site-scoped"}, "src": {"description": "Source scope for the variable, such as `site` or `deviceprofile`", "type": "string"}, "var": {"description": "Name of the variable matched by the search", "type": "string"}}, "type": "object"}, "response_search_var_results": {"description": "Organization variable records returned by search", "items": {"$ref": "#/components/schemas/response_search_var_item"}, "type": "array"}, "response_self_audit_logs": {"additionalProperties": false, "description": "Paginated response for audit logs for the current admin across organizations", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the self audit log search window", "type": "integer"}, "limit": {"description": "Maximum number of self audit log entries returned in this page", "type": "integer"}, "page": {"description": "Current page number returned for self audit log results", "type": "integer"}, "results": {"$ref": "#/components/schemas/response_self_audit_logs_results", "description": "Audit log entries for the current admin matching the filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the self audit log search window", "type": "integer"}, "total": {"description": "Number of self audit log entries matching the filters across all pages", "type": "integer"}}, "required": ["end", "limit", "page", "results", "start", "total"], "type": "object"}, "response_self_audit_logs_results": {"description": "Audit log entries returned for the current admin", "items": {"$ref": "#/components/schemas/audit_log"}, "type": "array", "uniqueItems": true}, "response_self_oauth_link_failure": {"additionalProperties": false, "description": "OAuth2 account-linking failure response", "properties": {"error": {"description": "OAuth2 error code returned during account linking", "type": "string"}, "error_description": {"description": "Human-readable description of the OAuth2 account-linking failure", "type": "string"}}, "required": ["error", "error_description"], "type": "object"}, "response_self_oauth_link_success": {"additionalProperties": false, "description": "OAuth2 account-linking success response", "properties": {"action": {"description": "Completed OAuth2 account-linking action", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Linked OAuth2 account identifier returned by the provider"}}, "required": ["action", "id"], "type": "object"}, "response_self_oauth_url": {"additionalProperties": false, "description": "OAuth2 authorization URL response for linking the current Mist account", "properties": {"authorization_url": {"description": "OAuth2 provider authorization URL used to link the Mist account", "type": "string"}, "linked": {"description": "Whether the Mist account is already linked with this OAuth2 provider", "type": "boolean"}}, "required": ["linked", "authorization_url"], "type": "object"}, "response_self_subscription": {"additionalProperties": false, "description": "Subscription record visible to the current account", "properties": {"org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with this subscription record"}}, "required": ["org_id"], "type": "object"}, "response_self_subscriptions": {"description": "Subscription records visible to the current account", "items": {"$ref": "#/components/schemas/response_self_subscription"}, "type": "array", "uniqueItems": true}, "response_set_devices_map": {"additionalProperties": false, "description": "Result of assigning APs to a site map", "properties": {"locked": {"$ref": "#/components/schemas/response_set_devices_map_locked", "description": "AP MAC addresses that were locked and not moved to the requested map"}, "moved": {"$ref": "#/components/schemas/response_set_devices_map_moved", "description": "AP MAC addresses successfully associated with the requested map"}}, "type": "object"}, "response_set_devices_map_locked": {"description": "AP MAC addresses that were locked during map assignment", "items": {"examples": ["5c5b35584a6f"], "type": "string"}, "type": "array"}, "response_set_devices_map_moved": {"description": "AP MAC addresses moved during map assignment", "items": {"examples": ["5c5b35000001"], "type": "string"}, "type": "array"}, "response_site_device_upgrade": {"additionalProperties": false, "description": "Site device upgrade job details", "properties": {"canary_phases": {"$ref": "#/components/schemas/response_site_device_upgrade_canary_phases", "description": "Canary deployment phase percentages configured for the upgrade"}, "current_phase": {"description": "Current canary or rrm phase in progress", "type": "integer"}, "enable_p2p": {"default": false, "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": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the site device upgrade job"}, "max_failure_percentage": {"description": "Percentage of failures allowed", "type": "integer"}, "max_failures": {"$ref": "#/components/schemas/upgrade_devices_max_failures", "description": "Per-phase failure thresholds configured for a canary upgrade"}, "p2p_cluster_size": {"default": 10, "description": "size to split the devices for p2p", "type": "integer"}, "p2p_parallelism": {"default": 1, "description": "number of parallel p2p download batches to create", "type": "integer"}, "reboot_at": {"description": "reboot start time in epoch", "type": "integer"}, "start_time": {"description": "Firmware download start time in epoch", "type": "integer"}, "status": {"$ref": "#/components/schemas/upgrade_device_status", "description": "Current status of the site device upgrade job"}, "strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Device upgrade strategy used by this job"}, "target_version": {"description": "Version to upgrade to", "minLength": 1, "type": "string"}, "targets": {"$ref": "#/components/schemas/upgrade_devices_targets", "description": "Device targets grouped by upgrade and download status"}, "upgrade_plan": {"$ref": "#/components/schemas/upgrade_devices_plans", "description": "Phase-to-device upgrade plan for non-big-bang strategies"}}, "required": ["id"], "type": "object"}, "response_site_device_upgrade_canary_phases": {"default": [1, 10, 50, 100], "description": "phases for canary deployment. Each phase represents percentage of devices that need to be upgraded in that phase.", "items": {"type": "integer"}, "type": "array"}, "response_site_device_upgrades": {"description": "Site device upgrade jobs returned by list operations", "items": {"$ref": "#/components/schemas/response_site_device_upgrades_item"}, "type": "array"}, "response_site_device_upgrades_item": {"additionalProperties": false, "description": "Site device upgrade job summary", "properties": {"counts": {"$ref": "#/components/schemas/upgrade_site_devices_counts", "description": "Device counts grouped by upgrade status for this job"}, "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": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the site device upgrade job"}, "max_failure_percentage": {"description": "Percentage of failures allowed", "type": "integer"}, "max_failures": {"$ref": "#/components/schemas/upgrade_devices_max_failures", "description": "Per-phase failure thresholds configured for a canary upgrade"}, "reboot_at": {"description": "reboot start time in epoch", "type": "integer"}, "start_time": {"description": "Firmware download start time in epoch", "type": "integer"}, "status": {"$ref": "#/components/schemas/upgrade_device_status", "description": "Current status of the site device upgrade job"}, "strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Device upgrade strategy used by this job"}, "target_version": {"description": "Version to upgrade to", "minLength": 1, "type": "string"}, "upgrade_plan": {"additionalProperties": true, "description": "a dictionary of rrm phase number to devices part of that phase", "type": "object"}}, "required": ["id"], "type": "object"}, "response_site_search": {"additionalProperties": false, "description": "Paginated response for organization site search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the site search window", "type": "integer"}, "limit": {"description": "Maximum number of site records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of site search results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_site_search_results", "description": "Site records matching the organization search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the site search window", "type": "integer"}, "total": {"description": "Number of site records matching the search filters across all pages", "type": "integer"}}, "required": ["results", "start", "end", "limit", "total"], "type": "object"}, "response_site_search_item": {"additionalProperties": false, "description": "Site record returned by organization site search", "properties": {"auto_upgrade_enabled": {"description": "Whether automatic firmware upgrade is enabled for the site", "type": "boolean"}, "auto_upgrade_version": {"description": "Desired automatic firmware upgrade version track for the site", "readOnly": true, "type": "string"}, "country_code": {"description": "Country code configured for the site, or null if unset", "readOnly": true, "type": ["string", "null"]}, "honeypot_enabled": {"description": "Whether honeypot detection is enabled for the site", "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the site search result"}, "name": {"description": "Display name of the site", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the site"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for this search result"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, for this site search result"}, "timezone": {"description": "Time zone configured for the site", "readOnly": true, "type": "string"}, "vna_enabled": {"description": "Whether Virtual Network Assistant is enabled for the site", "type": "boolean"}, "wifi_enabled": {"description": "Whether Wi-Fi service is enabled for the site", "type": "boolean"}}, "required": ["honeypot_enabled", "wifi_enabled", "vna_enabled", "timezone", "timestamp", "org_id", "site_id", "name", "id", "auto_upgrade_version", "auto_upgrade_enabled"], "type": "object"}, "response_site_search_results": {"description": "Site records returned by organization site search", "items": {"$ref": "#/components/schemas/response_site_search_item"}, "type": "array", "uniqueItems": true}, "response_sso_failure_search": {"additionalProperties": false, "description": "Response containing recent SSO authentication failure records", "properties": {"results": {"$ref": "#/components/schemas/response_sso_failure_search_results", "description": "SSO authentication failure records returned by the request"}}, "required": ["results"], "type": "object"}, "response_sso_failure_search_item": {"additionalProperties": false, "description": "SSO authentication failure record", "properties": {"detail": {"description": "Failure details reported for the SSO authentication attempt", "type": "string"}, "saml_assertion_xml": {"description": "SAML assertion XML captured for the failed SSO authentication attempt", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Epoch timestamp, in seconds, when the SSO authentication failure occurred"}}, "required": ["timestamp", "detail", "saml_assertion_xml"], "type": "object"}, "response_sso_failure_search_results": {"description": "SSO authentication failure records returned by the request", "items": {"$ref": "#/components/schemas/response_sso_failure_search_item"}, "type": "array", "uniqueItems": true}, "response_ssr_export_id_tokens": {"additionalProperties": false, "description": "Response containing SSR ID tokens exported for device onboarding", "properties": {"results": {"$ref": "#/components/schemas/response_ssr_export_id_tokens_results", "description": "Exported SSR ID token records for the requested devices"}}, "type": "object"}, "response_ssr_export_id_tokens_results": {"description": "Exported SSR ID token records", "items": {"$ref": "#/components/schemas/response_ssr_export_id_tokens_results_item"}, "type": "array"}, "response_ssr_export_id_tokens_results_item": {"additionalProperties": false, "description": "SSR ID token record for a device", "properties": {"mac": {"description": "SSR device MAC address for the exported ID token", "type": "string"}, "token": {"description": "ID token to import into Conductor for SSR device onboarding", "type": "string"}}, "type": "object"}, "response_ssr_upgrade": {"additionalProperties": false, "description": "SSR firmware upgrade job summary", "properties": {"channel": {"description": "Firmware release channel used for the SSR upgrade", "minLength": 1, "type": "string"}, "counts": {"$ref": "#/components/schemas/response_ssr_upgrade_counts", "description": "Device counts grouped by SSR upgrade status"}, "device_type": {"description": "Type of devices targeted by the SSR upgrade", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the SSR upgrade job"}, "status": {"description": "Current status of the SSR upgrade job", "minLength": 1, "type": "string"}, "strategy": {"description": "Upgrade strategy used by the SSR upgrade job", "minLength": 1, "type": "string"}, "versions": {"additionalProperties": {"type": "string"}, "description": "SSR firmware versions included in the upgrade job", "type": "object"}}, "required": ["status", "strategy", "versions", "channel", "id", "counts", "device_type"], "type": "object"}, "response_ssr_upgrade_counts": {"additionalProperties": false, "description": "Device counts grouped by SSR upgrade status", "properties": {"failed": {"description": "Number of SSR devices that failed the upgrade", "type": "integer"}, "queued": {"description": "Number of SSR devices queued for upgrade", "type": "integer"}, "success": {"description": "Number of SSR devices successfully upgraded", "type": "integer"}, "upgrading": {"description": "Number of SSR devices currently upgrading", "type": "integer"}}, "required": ["queued", "upgrading", "success", "failed"], "type": "object"}, "response_ssr_upgrade_status": {"additionalProperties": false, "description": "Detailed status for an SSR firmware upgrade job", "properties": {"channel": {"description": "Firmware release channel used for the SSR upgrade", "minLength": 1, "type": "string"}, "device_type": {"description": "Type of devices targeted by the SSR upgrade", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the SSR upgrade job"}, "status": {"description": "Current status of the SSR upgrade job", "minLength": 1, "type": "string"}, "targets": {"$ref": "#/components/schemas/response_ssr_upgrade_status_targets", "description": "SSR device IDs grouped by upgrade status"}, "versions": {"additionalProperties": true, "description": "SSR firmware versions included in the upgrade job", "type": "object"}}, "required": ["status", "versions", "channel", "id", "targets"], "type": "object"}, "response_ssr_upgrade_status_targets": {"additionalProperties": false, "description": "SSR device IDs grouped by upgrade status", "properties": {"failed": {"$ref": "#/components/schemas/strings", "description": "SSR device IDs that failed the upgrade"}, "queued": {"$ref": "#/components/schemas/strings", "description": "SSR device IDs queued for upgrade"}, "success": {"$ref": "#/components/schemas/strings", "description": "SSR device IDs successfully upgraded"}, "upgrading": {"$ref": "#/components/schemas/strings", "description": "SSR device IDs currently upgrading"}}, "required": ["queued", "upgrading", "success", "failed"], "type": "object"}, "response_ssr_upgrades": {"description": "SSR firmware upgrade jobs returned by list operations", "items": {"$ref": "#/components/schemas/response_ssr_upgrade"}, "type": "array"}, "response_stats_assets": {"additionalProperties": false, "description": "Paginated response for asset statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the asset statistics search window", "type": "integer"}, "limit": {"description": "Maximum number of asset statistics records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of asset statistics results", "type": "string"}, "results": {"$ref": "#/components/schemas/stats_assets", "description": "Asset statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the asset statistics search window", "type": "integer"}, "total": {"description": "Number of asset statistics records matching the search filters across all pages", "type": "integer"}}, "required": ["start", "end", "limit", "total", "results"], "type": "object"}, "response_stats_calls": {"additionalProperties": false, "description": "Paginated response for site call statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the call statistics search window", "type": "number"}, "limit": {"description": "Maximum number of call statistics records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of call statistics results", "type": "string"}, "results": {"$ref": "#/components/schemas/stats_calls", "description": "Call statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the call statistics search window", "type": "number"}, "total": {"description": "Number of call statistics records matching the search filters across all pages", "type": "integer"}}, "type": "object"}, "response_stats_calls_summary": {"additionalProperties": false, "description": "Aggregated site call statistics summary", "properties": {"bad_minutes": {"description": "Total call minutes classified as bad across all quality categories", "examples": [5566.0], "type": "number"}, "bad_minutes_client": {"description": "Call minutes classified as bad due to client-side issues", "examples": [526.0], "type": "number"}, "bad_minutes_site_wan": {"description": "Call minutes classified as bad due to site WAN issues", "examples": [3612.0], "type": "number"}, "bad_minutes_wireless": {"description": "Call minutes classified as bad due to wireless issues", "examples": [1428.0], "type": "number"}, "num_aps": {"description": "Number of APs represented in the call statistics summary", "examples": [1], "type": "integer"}, "num_users": {"description": "Number of users represented in the call statistics summary", "examples": [3], "type": "integer"}, "total_minutes": {"description": "Total call minutes represented in the summary", "examples": [5566.0], "type": "number"}}, "type": "object"}, "response_switch_metrics": {"additionalProperties": false, "description": "Switch metrics returned for the requested site or switch scope", "properties": {"active_ports_summary": {"$ref": "#/components/schemas/response_switch_metrics_active_ports_summary", "description": "Summary metric for active switch ports"}, "config_success": {"$ref": "#/components/schemas/response_switch_metrics_config_success", "description": "Configuration success metric for switches in the requested scope"}, "version_compliance": {"$ref": "#/components/schemas/response_switch_metrics_version_compliance", "description": "Software version compliance metric for switches in the requested scope"}}, "type": "object"}, "response_switch_metrics_active_ports_summary": {"additionalProperties": false, "description": "Active-port summary metric for switches in the requested scope", "properties": {"details": {"$ref": "#/components/schemas/switch_metrics_active_ports_summary_details", "description": "Port counts used to calculate the active-port summary metric"}, "score": {"description": "Reported metric score for active switch ports", "type": "integer"}, "total_switch_count": {"description": "Number of switches included in the active-port summary metric", "type": "integer"}}, "type": "object"}, "response_switch_metrics_config_success": {"additionalProperties": false, "description": "Configuration success metric for switches in the requested scope", "properties": {"details": {"$ref": "#/components/schemas/response_switch_metrics_config_success_details", "description": "Configuration success counts used to calculate the metric"}, "score": {"description": "Reported metric score for switch configuration success", "type": "integer"}, "total_switch_count": {"description": "Number of switches included in the configuration success metric", "type": "integer"}}, "type": "object"}, "response_switch_metrics_config_success_details": {"additionalProperties": false, "description": "Detail values for the switch configuration success metric", "properties": {"config_success_count": {"description": "Number of switches with successful configuration status", "type": "integer"}}, "type": "object"}, "response_switch_metrics_version_compliance": {"additionalProperties": false, "description": "Version compliance metric for switches in the requested scope", "properties": {"details": {"$ref": "#/components/schemas/response_switch_metrics_version_compliance_details", "description": "Version groupings used to calculate the compliance metric"}, "score": {"description": "Reported metric score for switch software version compliance", "type": "integer"}, "total_switch_count": {"description": "Number of switches included in the version compliance metric", "type": "integer"}}, "type": "object"}, "response_switch_metrics_version_compliance_details": {"additionalProperties": false, "description": "Detail values for the switch software version compliance metric", "properties": {"major_versions": {"$ref": "#/components/schemas/switch_metrics_compliance_major_versions", "description": "Software version groupings found among the evaluated switches"}}, "type": "object"}, "response_switch_port_search": {"additionalProperties": false, "description": "Paginated response for switch and gateway port statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the port statistics reporting window", "examples": [1513177200], "type": "integer"}, "limit": {"description": "Maximum number of port statistics records returned in this page", "examples": [10], "type": "integer"}, "next": {"description": "URL for retrieving the next page of switch and gateway port statistics results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_switch_port_search_results", "description": "Switch and gateway port statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the port statistics reporting window", "examples": [1511967600], "type": "integer"}, "total": {"description": "Number of port statistics records matching the search filters across all pages", "examples": [100], "type": "integer"}}, "required": ["limit", "total", "results"], "type": "object"}, "response_switch_port_search_results": {"description": "Switch and gateway port statistics records returned by search", "items": {"$ref": "#/components/schemas/stats_switch_port"}, "type": "array"}, "response_synthetictest": {"additionalProperties": false, "description": "Result returned after a site synthetic test is queued", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique value for the queued synthetic test request"}, "message": {"description": "Human-readable queuing result returned by the API", "examples": ["Successfully queued synthetic test for the site."], "type": "string"}, "status": {"description": "Queue status for the synthetic test request", "examples": ["success"], "type": "string"}}, "type": "object"}, "response_synthetictest_search": {"additionalProperties": false, "description": "Paginated response for site synthetic test search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the synthetic test search window", "type": "integer"}, "limit": {"description": "Maximum number of synthetic test results returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of synthetic test results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_synthetictest_search_results", "description": "Synthetic test result records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the synthetic test search window", "type": "integer"}, "total": {"description": "Number of synthetic test results matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_synthetictest_search_results": {"description": "Synthetic test result records returned by search", "items": {"$ref": "#/components/schemas/synthetictest_info"}, "type": "array"}, "response_troubleshoot": {"additionalProperties": false, "description": "Organization troubleshooting response for the requested time window", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the troubleshooting window", "examples": [1655151856], "type": "integer"}, "results": {"$ref": "#/components/schemas/response_troubleshoot_results", "description": "Troubleshooting findings returned for the requested target and window"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the troubleshooting window", "examples": [1655065456], "type": "integer"}}, "type": "object"}, "response_troubleshoot_item": {"additionalProperties": false, "description": "Troubleshooting finding with reason and remediation guidance", "properties": {"category": {"description": "Entity category associated with the troubleshooting finding", "examples": ["client"], "type": "string"}, "reason": {"description": "Issue reason identified by the troubleshooting analysis", "examples": ["slow association"], "type": "string"}, "recommendation": {"description": "Recommended remediation guidance for the troubleshooting finding", "examples": ["Ensure the IP helper-address is configured on the VLAN interface."], "type": "string"}, "text": {"description": "Human-readable explanation of the troubleshooting finding", "examples": ["Clients of the AP had slow association 8% of the time on Bhavabhi and 5 GHz. ..."], "type": "string"}}, "type": "object"}, "response_troubleshoot_results": {"description": "Troubleshooting findings returned by the organization troubleshoot API", "items": {"$ref": "#/components/schemas/response_troubleshoot_item"}, "type": "array"}, "response_tunnel_search": {"additionalProperties": false, "description": "Paginated response for organization tunnel statistics search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the tunnel statistics search window", "type": "integer"}, "limit": {"description": "Maximum number of tunnel statistics records returned in this page", "type": "integer"}, "next": {"description": "URL for retrieving the next page of tunnel statistics results", "type": "string"}, "results": {"$ref": "#/components/schemas/response_tunnel_search_results", "description": "Tunnel statistics records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the tunnel statistics search window", "type": "integer"}, "total": {"description": "Number of tunnel statistics records matching the search filters across all pages", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "response_tunnel_search_item": {"description": "Tunnel statistics record; shape depends on the requested tunnel type", "oneOf": [{"$ref": "#/components/schemas/stats_mxtunnel"}, {"$ref": "#/components/schemas/stats_wan_tunnel"}]}, "response_tunnel_search_results": {"description": "Tunnel statistics records returned by search", "items": {"$ref": "#/components/schemas/response_tunnel_search_item"}, "type": "array"}, "response_two_factor_json": {"additionalProperties": false, "description": "Response body containing a generated two-factor authentication secret", "properties": {"two_factor_secret": {"description": "Generated secret key used to enroll a two-factor authentication app", "examples": ["NRMTSTRWNBVECY3GJVYEY3DDJFRGSNCZGJUDO4RVN5FDM3DUMJSA"], "format": "password", "type": "string"}}, "type": "object"}, "response_two_factor_octet": {"description": "If `by`==`qrcode`, returns the secret as a qrcode image", "type": "string"}, "response_upgrade_id": {"additionalProperties": false, "description": "Response containing an upgrade job identifier", "properties": {"upgrade_id": {"description": "Unique value identifying the queued upgrade job", "examples": ["4316c116-0acb-4c43-8f06-6723154e741e"], "format": "uuid", "type": "string"}}, "required": ["upgrade_id"], "type": "object"}, "response_upgrade_org_devices": {"additionalProperties": false, "description": "Organization AP upgrade job details", "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": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the organization upgrade job"}, "strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Execution strategy used for the organization upgrade job"}, "target_version": {"description": "Firmware version targeted by the organization AP upgrade", "examples": ["0.14.29411"], "type": "string"}, "upgrades": {"$ref": "#/components/schemas/upgrade_org_devices_upgrade_infos", "description": "Per-site upgrade jobs created for the organization upgrade"}}, "type": "object"}, "response_verify_token_success": {"additionalProperties": false, "description": "Successful registration token verification response", "properties": {"detail": {"description": "Result message returned with the verification response", "type": "string"}, "invite_not_applied": {"description": "Whether the invitation was verified but not applied automatically", "type": "boolean"}, "min_length": {"description": "Required minimum password length from the applicable password policy", "type": "integer"}, "return_to": {"description": "URL to redirect the user to after successful registration verification", "type": "string"}}, "type": "object"}, "response_virtual_chassis_config": {"additionalProperties": false, "description": "Combined virtual chassis status, topology, and member statistics", "properties": {"config_type": {"description": "Provisioning mode of the virtual chassis configuration", "readOnly": true, "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the virtual chassis device record"}, "locating": {"description": "Whether locate mode is active for the virtual chassis device", "readOnly": true, "type": "boolean"}, "mac": {"description": "Device MAC address for the virtual chassis device record", "type": "string"}, "members": {"$ref": "#/components/schemas/stats_switch_module_stat", "description": "Virtual chassis member module statistics and topology details"}, "model": {"description": "Switch model for the virtual chassis device record", "readOnly": true, "type": "string"}, "num_routing_engines": {"description": "Number of routing engines in the virtual chassis", "examples": [1], "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier for the virtual chassis device"}, "serial": {"description": "Device serial number reported for the virtual chassis", "readOnly": true, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site containing the virtual chassis"}, "status": {"description": "Connection status of the virtual chassis device", "readOnly": true, "type": "string"}, "type": {"description": "Device type for the virtual chassis record", "type": "string"}, "vc_mac": {"description": "Virtual Chassis MAC address used to identify the VC device", "readOnly": true, "type": "string"}}, "type": "object"}, "response_wired_coa": {"additionalProperties": false, "description": "Response returned after triggering wired client CoA reauthentication", "properties": {"device_mac": {"description": "MAC address of the switch or gateway hosting the wired client session", "examples": ["5c5b35000002"], "type": "string"}, "port_id": {"description": "Interface identifier for the wired client session", "examples": ["ge-0/0/0"], "type": "string"}, "session": {"description": "RADIUS session identifier used for the CoA request", "examples": ["0a2a11b8-4b30-40d8-a6d1-e91ea540d86f"], "format": "uuid", "type": "string"}}, "type": "object"}, "response_zone_search": {"additionalProperties": false, "description": "Paginated response for site zone visit search results", "properties": {"end": {"description": "Epoch timestamp, in seconds, for the end of the zone visit search window", "examples": [1541705289.769911], "type": "number"}, "limit": {"description": "Maximum number of zone visit records returned in this page", "examples": [1], "type": "integer"}, "next": {"description": "URL for retrieving the next page of zone visit search results", "examples": ["/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": {"$ref": "#/components/schemas/response_zone_search_results", "description": "Zone visit records matching the search filters"}, "start": {"description": "Epoch timestamp, in seconds, for the start of the zone visit search window", "examples": [1541618889.769886], "type": "number"}, "total": {"description": "Number of zone visit records matching the search filters across all pages", "examples": [5892], "type": "integer"}}, "type": "object"}, "response_zone_search_item": {"additionalProperties": false, "description": "Zone visit record for a client, asset, or SDK client", "properties": {"enter": {"description": "Epoch timestamp, in seconds, when the zone visit started", "examples": [1541705254], "type": "integer"}, "scope": {"description": "Zone scope represented by this visit record", "examples": ["map"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the zone visit event was recorded"}, "user": {"description": "Client, asset, or SDK client identifier for the visit", "examples": ["c4b301c81166"], "type": "string"}}, "type": "object"}, "response_zone_search_results": {"description": "Zone visit records returned by search", "items": {"$ref": "#/components/schemas/response_zone_search_item"}, "type": "array"}, "rf_client_type": {"description": "enum: `asset`, `client`, `sdkclient`", "enum": ["asset", "client", "sdkclient"], "type": "string"}, "rf_diag": {"description": "RF diagnostic recording request", "properties": {"duration": {"default": 180, "description": "Recording length, in seconds; maximum and default are 180", "maximum": 180, "type": "integer"}, "mac": {"description": "If `type`==`client` or `asset`, MAC address of the device being recorded", "type": "string"}, "name": {"description": "Recording name; the SDK client name is a good default for SDK-client recordings", "type": "string"}, "sdkclient_id": {"description": "If `type`==`sdkclient`, SDK client identifier for this recording", "format": "uuid", "type": "string"}, "type": {"$ref": "#/components/schemas/rf_client_type", "description": "Target device category for the RF diagnostic recording"}}, "required": ["name", "type"], "type": "object"}, "rf_diag_info": {"description": "RF diagnostic recording response entries", "items": {"$ref": "#/components/schemas/rf_diag_info_item"}, "type": "array", "uniqueItems": true}, "rf_diag_info_item": {"additionalProperties": false, "description": "RF diagnostic recording metadata and output links", "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": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the RF diagnostic recording"}, "mac": {"description": "If `type`==`client` or `asset`, MAC address of the recorded device", "type": "string"}, "map_id": {"description": "Map identifier associated with the recording", "format": "uuid", "type": "string"}, "name": {"description": "Recording name returned for the RF diagnostic recording", "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", "description": "Target device category for the recording"}, "url": {"description": "JSON file URL for frame data captured by the recording", "type": "string"}}, "required": ["name", "type", "map_id", "url", "raw_events", "start_time", "end_time", "duration", "frame_count", "ready"], "type": "object"}, "rf_diag_info_list": {"description": "List response containing RF diagnostic recording entry arrays", "items": {"$ref": "#/components/schemas/rf_diag_info"}, "type": "array"}, "rf_template": {"description": "RF template used by the current RRM calculation", "properties": {"ant_gain_24": {"description": "External antenna gain for the 2.4 GHz radio", "type": "integer"}, "ant_gain_5": {"description": "External antenna gain for the 5 GHz radio", "type": "integer"}, "ant_gain_6": {"description": "External antenna gain for the 6 GHz radio", "type": "integer"}, "band_24": {"$ref": "#/components/schemas/rftemplate_radio_band24", "description": "2.4 GHz radio settings in this RF template"}, "band_24_usage": {"$ref": "#/components/schemas/radio_band_24_usage", "description": "Radio usage mode for the 2.4 GHz-capable radio in this RF template"}, "band_5": {"$ref": "#/components/schemas/rftemplate_radio_band5", "description": "5 GHz radio settings in this RF template"}, "band_5_on_24_radio": {"$ref": "#/components/schemas/rftemplate_radio_band5", "description": "5 GHz settings used when the 2.4 GHz radio operates in 5 GHz mode"}, "band_6": {"$ref": "#/components/schemas/rftemplate_radio_band6", "description": "6 GHz radio settings in this RF template"}, "country_code": {"description": "Optional, country code to use. If specified, this gets applied to all sites using the RF Template", "type": "string"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the RF template was created"}, "for_site": {"description": "Whether the RF template is scoped to a site rather than the organization", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the RF template"}, "model_specific": {"additionalProperties": {"$ref": "#/components/schemas/rf_template_model_specific_property"}, "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": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the RF template was last modified"}, "name": {"description": "The name of the RF template", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this RF template"}, "scanning_enabled": {"description": "Whether scanning radio is enabled", "type": "boolean"}}, "required": ["name"], "type": "object"}, "rf_template_model_specific_property": {"additionalProperties": false, "description": "AP model-specific RF overrides for an RF template", "properties": {"ant_gain_24": {"default": 0, "description": "Model-specific external antenna gain for the 2.4 GHz radio", "type": "integer"}, "ant_gain_5": {"default": 0, "description": "Model-specific external antenna gain for the 5 GHz radio", "type": "integer"}, "ant_gain_6": {"default": 0, "description": "Model-specific external antenna gain for the 6 GHz radio", "type": "integer"}, "band_24": {"$ref": "#/components/schemas/rftemplate_radio_band24", "description": "Model-specific 2.4 GHz radio settings that override RF template defaults"}, "band_24_usage": {"$ref": "#/components/schemas/radio_band_24_usage", "description": "Model-specific radio usage mode for the 2.4 GHz-capable radio"}, "band_5": {"$ref": "#/components/schemas/rftemplate_radio_band5", "description": "Model-specific 5 GHz radio settings that override RF template defaults"}, "band_5_on_24_radio": {"$ref": "#/components/schemas/rftemplate_radio_band5", "description": "Model-specific 5 GHz settings used when the 2.4 GHz radio operates in 5 GHz mode"}, "band_6": {"$ref": "#/components/schemas/rftemplate_radio_band6", "description": "Model-specific 6 GHz radio settings that override RF template defaults"}}, "type": "object"}, "rf_templates": {"description": "List of RF templates", "items": {"$ref": "#/components/schemas/rf_template"}, "type": "array"}, "rftemplate_radio_band24": {"additionalProperties": false, "description": "Radio Band AP settings", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 2.4 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 2.4 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 2.4 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth24", "description": "Channel width configured for the 2.4 GHz radio"}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 2.4 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [3], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 3, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 3, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 2.4 GHz radio"}}, "type": "object"}, "rftemplate_radio_band5": {"additionalProperties": false, "description": "Radio Band AP settings", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 5 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 5 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 5 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth5", "description": "Channel width configured for the 5 GHz radio"}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 5 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [6], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 17, "minimum": 5, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 17, "minimum": 5, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 5 GHz radio"}}, "type": "object"}, "rftemplate_radio_band6": {"additionalProperties": false, "description": "Radio Band AP settings", "properties": {"allow_rrm_disable": {"default": false, "description": "Whether RRM may disable the 6 GHz radio when optimizing RF settings", "type": "boolean"}, "ant_gain": {"default": 0, "description": "External antenna gain for the 6 GHz radio", "maximum": 10, "minimum": 0, "type": ["integer", "null"]}, "antenna_mode": {"$ref": "#/components/schemas/radio_band_antenna_mode", "description": "Radio chain mode for the 6 GHz radio"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth6", "description": "Channel width configured for the 6 GHz radio"}, "channels": {"$ref": "#/components/schemas/radio_band_channels", "description": "Allowed channel list for the 6 GHz radio; null or an empty array uses automatic selection"}, "disabled": {"default": false, "description": "Whether to disable the radio", "type": "boolean"}, "power": {"default": null, "description": "Radio Tx power, in dBm. Can be an integer 0-25 for static power configuration, or `null` or unset for auto power mode", "examples": [7], "maximum": 25, "minimum": 0, "type": ["integer", "null"]}, "power_max": {"description": "When power=null/unset, max tx power to use, HW-specific values will be used if not set", "maximum": 17, "minimum": 5, "type": ["integer", "null"]}, "power_min": {"description": "When power=null/unset, min tx power to use, HW-specific values will be used if not set", "maximum": 18, "minimum": 5, "type": ["integer", "null"]}, "preamble": {"$ref": "#/components/schemas/radio_band_preamble", "description": "802.11 preamble mode used by the 6 GHz radio"}, "standard_power": {"default": false, "description": "For 6GHz Only, standard-power operation, AFC (Automatic Frequency Coordination) will be performed, and we'll fall back to Low Power Indoor if AFC failed", "type": "boolean"}}, "type": "object"}, "rogue_details": {"additionalProperties": false, "description": "Rogue AP detail response", "properties": {"manufacture": {"description": "Vendor or manufacturer name reported for the rogue AP", "type": "string"}, "seen_as_client": {"description": "Whether this rogue AP was also observed as a client", "type": "boolean"}}, "required": ["seen_as_client", "manufacture"], "type": "object"}, "rogue_type": {"description": "enum: `honeypot`, `lan`, `others`, `spoof`", "enum": ["honeypot", "lan", "others", "spoof"], "type": "string"}, "root_password_string": {"additionalProperties": false, "description": "Temporary root password response for device ZTP recovery", "properties": {"root_password": {"description": "Temporary root password returned for ZTP recovery", "format": "password", "minLength": 1, "type": "string"}}, "required": ["root_password"], "type": "object"}, "route_summary_stats": {"additionalProperties": false, "description": "Route table capacity and usage summary", "properties": {"fib_routes": {"description": "Number of routes installed in the forwarding information base", "type": "integer"}, "max_unicast_routes_supported": {"description": "Supported maximum number of unicast routes", "type": "integer"}, "rib_routes": {"description": "Number of routes present in the routing information base", "type": "integer"}, "total_routes": {"description": "Aggregate number of routes reported by the device", "type": "integer"}}, "type": "object"}, "routing_policy_local_preference": {"anyOf": [{"type": "string"}, {"maximum": 4294967295, "minimum": 1, "type": "integer"}], "description": "Optional, for an import policy, local_preference can be changed, value in range 1-4294967294. Can be a Variable (e.g. `{{bgp_as}}`)"}, "routing_policy_term_action_community": {"description": "When used as export policy, optional", "items": {"examples": ["3900190"], "type": "string"}, "type": "array"}, "routing_policy_term_action_prepend_as_path": {"description": "When used as export policy, optional. By default, the local AS will be prepended, to change it. Can be a Variable (e.g. `{{as_path}}`)", "items": {"examples": ["65000 400"], "type": "string"}, "type": "array"}, "routing_policy_term_matching_as_path": {"description": "BGP AS path values used as routing-policy match criteria", "items": {"$ref": "#/components/schemas/bgp_as"}, "type": "array"}, "routing_policy_term_matching_community": {"description": "BGP community values used as routing-policy match criteria", "items": {"examples": ["3900062"], "type": "string"}, "type": "array"}, "routing_policy_term_matching_prefix": {"description": "zero or more criteria/filter can be specified to match the term, all criteria have to be met", "items": {"examples": ["192.168.0.0/16-30"], "type": "string"}, "type": "array"}, "rrm": {"additionalProperties": false, "description": "Current RRM channel-planning state for a site", "properties": {"band_24": {"additionalProperties": {"$ref": "#/components/schemas/rrm_band"}, "description": "RRM proposed channel, power, and usage settings for 2.4 GHz radios; property key is AP ID", "type": "object"}, "band_24_metric": {"$ref": "#/components/schemas/rrm_band_metric", "description": "Aggregate RRM metrics for the 2.4 GHz band"}, "band_5": {"additionalProperties": {"$ref": "#/components/schemas/rrm_band"}, "description": "RRM proposed channel, power, and usage settings for 5 GHz radios; property key is AP ID", "type": "object"}, "band_5_metric": {"$ref": "#/components/schemas/rrm_band_metric", "description": "Aggregate RRM metrics for the 5 GHz band"}, "band_6": {"additionalProperties": {"$ref": "#/components/schemas/rrm_band"}, "description": "RRM proposed channel, power, and usage settings for 6 GHz radios; property key is AP ID", "type": "object"}, "band_6_metric": {"$ref": "#/components/schemas/rrm_band_metric", "description": "Aggregate RRM metrics for the 6 GHz band"}, "rftemplate": {"$ref": "#/components/schemas/rf_template", "description": "RF template used by the current RRM calculation"}, "rftemplate_id": {"description": "RF template identifier used by the current RRM calculation", "format": "uuid", "type": "string"}, "rftemplate_name": {"description": "RF template name used by the current RRM calculation", "type": "string"}, "status": {"$ref": "#/components/schemas/rrm_status", "description": "Current RRM calculation status"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the current RRM data was generated"}}, "required": ["band_24", "band_24_metric", "band_5", "band_5_metric", "rftemplate", "rftemplate_id", "rftemplate_name", "status", "timestamp"], "type": "object"}, "rrm_band": {"additionalProperties": false, "description": "RRM proposed and current radio settings for an AP band", "properties": {"bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth", "description": "Proposed channel width for the radio band, in MHz"}, "channel": {"description": "Proposed RF channel for the radio band", "type": "integer"}, "curr_bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth", "description": "Current channel width for the radio band, in MHz"}, "curr_channel": {"description": "Current RF channel for the radio band", "type": "integer"}, "curr_power": {"description": "Current transmit power for the radio band", "type": "integer"}, "curr_usage": {"description": "Current radio usage band for the AP radio", "minLength": 1, "type": "string"}, "power": {"description": "Proposed transmit power for the radio band", "type": "integer"}, "usage": {"description": "Proposed radio usage band for the AP radio", "minLength": 1, "type": "string"}}, "type": "object"}, "rrm_band_metric": {"additionalProperties": false, "description": "Aggregate RRM metrics for a radio band", "properties": {"avg_aps_per_channel": {"description": "Average number of APs per channel", "type": "number"}, "channel_distribution_uniformity": {"description": "Distribution of channel across the Access Points", "type": "number"}, "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": {"$ref": "#/components/schemas/rrm_band_metric_interference"}, "description": "Property key is the channel number", "examples": [{"149": {"radar": 0.3}, "153": {"radar": 0.2}}], "type": "object"}, "naps_by_channel": {"$ref": "#/components/schemas/rrm_band_metric_naps_by_channel", "description": "Number of APs grouped by channel for this band"}, "naps_by_power": {"$ref": "#/components/schemas/rrm_band_metric_naps_by_power", "description": "Number of APs grouped by transmit power for this band"}, "neighbors": {"description": "Average number of neighbors", "type": "number"}, "noise": {"description": "Average noise in dBm", "type": "number"}}, "required": ["cochannel_neighbors", "density", "neighbors", "noise"], "type": "object"}, "rrm_band_metric_interference": {"additionalProperties": false, "description": "Interference metrics observed for one channel", "properties": {"radar": {"description": "Interference value attributed to radar on the channel", "type": "number"}}, "type": "object"}, "rrm_band_metric_naps_by_channel": {"additionalProperties": {"type": "number"}, "description": "Property key is the channel number, value is number of APs on that channel", "type": "object"}, "rrm_band_metric_naps_by_power": {"additionalProperties": {"type": "number"}, "description": "Property key is the power level, value is number of APs on that power level", "type": "object"}, "rrm_channel_score": {"additionalProperties": false, "description": "RRM utilization score for a channel", "properties": {"channel": {"description": "RF channel number represented by this score record", "type": "integer"}, "util_score": {"description": "Utilization score for the channel, 0-1, lower means cleaner RF", "type": "number"}, "util_score_noise_floor": {"description": "Score contribution from noise, 0-1, lower means cleaner RF", "type": "number"}, "util_score_non_wifi": {"description": "Score contribution from non-wifi utilization, 0-1, lower means cleaner RF", "type": "number"}, "util_score_other": {"description": "Score contribution from RxOtherBss utilization (wifi packets destined for other radios), 0-1, lower means cleaner RF", "type": "number"}, "util_score_radar": {"description": "Score contribution from radar detections, 0-1, lower means cleaner RF", "type": "number"}, "util_score_undecodable_wifi": {"description": "Score contribution from undecodable wifi utilization (wifi packets which can't be decoded), 0-1, lower means cleaner RF", "type": "number"}, "util_score_unknown_wifi": {"description": "Score contribution from unknown wifi utilization (wifi packets of unknown type), 0-1, lower means cleaner RF", "type": "number"}}, "required": ["channel", "util_score", "util_score_noise_floor", "util_score_non_wifi", "util_score_other", "util_score_radar", "util_score_undecodable_wifi", "util_score_unknown_wifi"], "type": "object"}, "rrm_consideration": {"additionalProperties": false, "description": "RRM consideration metrics for one candidate channel", "properties": {"channel": {"description": "Candidate RF channel evaluated by RRM", "type": "integer"}, "noise": {"description": "Observed noise floor for the candidate channel, in dBm", "type": "number"}, "other_rssi": {"description": "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"}, "rssi": {"description": "Avg RSSI heard from APs (that belongs to the same site)", "type": "number"}, "util_score": {"description": "utilization score, 0-1, lower means less utilization (cleaner RF)", "type": "number"}, "util_score_non_wifi": {"description": "non-Wi-Fi 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"], "type": "object"}, "rrm_event": {"additionalProperties": false, "description": "RRM event record for radio setting changes or RF conditions", "properties": {"ap": {"description": "MAC address of the AP associated with the RRM event", "examples": ["5c5b350e0001"], "type": "string"}, "band": {"$ref": "#/components/schemas/dot11_band", "description": "Radio band affected by the RRM event"}, "bandwidth": {"$ref": "#/components/schemas/dot11_bandwidth", "description": "Channel width after the RRM event, in MHz"}, "channel": {"description": "RF channel after the RRM event", "type": "integer"}, "event": {"$ref": "#/components/schemas/rrm_event_type", "description": "RRM event type that caused or records the change"}, "power": {"description": "Transmit power after the RRM event", "type": "integer"}, "pre_bandwidth": {"$ref": "#/components/schemas/rrm_event_pre_bandwidth", "description": "Channel width before the RRM event, in MHz"}, "pre_channel": {"description": "RF channel before the RRM event; 0 means no previous value was available", "type": "integer"}, "pre_power": {"description": "Transmit power before the RRM event; 0 means no previous value was available", "type": "number"}, "pre_usage": {"description": "Radio usage band before the RRM event", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the RRM event occurred"}, "usage": {"description": "Radio usage band after the RRM event", "type": "string"}}, "required": ["ap", "band", "bandwidth", "channel", "event", "power", "pre_bandwidth", "pre_channel", "pre_power", "pre_usage", "timestamp", "usage"], "type": "object"}, "rrm_event_pre_bandwidth": {"description": "(previously) channel width for the band , 0 means no previously available. enum: `0`, `20`, `40`, `80`, `160`", "enum": [0, 20, 40, 80, 160], "type": "integer"}, "rrm_event_type": {"description": "enum: `interference-ap-co-channel`, `interference-ap-non-wifi`, `neighbor-ap-down`, `neighbor-ap-recovered`, `radar-detected`, `rrm-radar`, `scheduled-site_rrm`, `triggered-site_rrm`", "enum": ["interference-ap-co-channel", "interference-ap-non-wifi", "neighbor-ap-down", "neighbor-ap-recovered", "radar-detected", "rrm-radar", "scheduled-site_rrm", "triggered-site_rrm"], "type": "string"}, "rrm_neighbors": {"additionalProperties": false, "description": "RRM neighbor observations for one AP", "properties": {"mac": {"description": "AP MAC address whose neighbors are reported", "examples": ["5c5b35000001"], "type": "string"}, "neighbors": {"$ref": "#/components/schemas/rrm_neighbors_neighbors", "description": "Neighbor AP observations heard by this AP"}}, "type": "object"}, "rrm_neighbors_neighbor": {"additionalProperties": false, "description": "Neighbor AP observed by RRM", "properties": {"mac": {"description": "Neighbor AP MAC address observed by RRM", "examples": ["5c5b35000311"], "type": "string"}, "rssi": {"description": "Observed RSSI for the neighbor AP, in dBm", "examples": [-66], "type": "integer"}}, "type": "object"}, "rrm_neighbors_neighbors": {"description": "Neighbor AP observations heard by an AP", "items": {"$ref": "#/components/schemas/rrm_neighbors_neighbor"}, "type": "array"}, "rrm_status": {"description": "enum: `ready`, `unknown`, `updating`", "enum": ["ready", "unknown", "updating"], "type": "string"}, "rssi_zone": {"description": "RSSI-based zone configuration for a site", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the RSSI zone was created"}, "devices": {"$ref": "#/components/schemas/rssi_zone_devices", "description": "AP devices and RSSI thresholds that define the zone"}, "for_site": {"description": "Whether the RSSI zone is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the RSSI zone"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the RSSI zone was last modified"}, "name": {"description": "Display name of the RSSI zone", "examples": ["zone name"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier for the RSSI zone"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site containing the RSSI zone"}}, "required": ["devices"], "type": "object"}, "rssi_zone_device": {"additionalProperties": false, "description": "AP device and RSSI threshold used by an RSSI zone", "properties": {"device_id": {"$ref": "#/components/schemas/device_id", "description": "Identifier of the AP device used by this RSSI zone"}, "rssi": {"description": "Minimum RSSI threshold for considering the device inside the zone", "examples": [0], "type": "integer"}}, "required": ["device_id", "rssi"], "type": "object"}, "rssi_zone_devices": {"description": "List of devices and the respective RSSI values to be considered in the zone", "items": {"$ref": "#/components/schemas/rssi_zone_device"}, "type": "array", "uniqueItems": true}, "rssi_zones": {"description": "RSSI zone configurations returned by list operations", "items": {"$ref": "#/components/schemas/rssi_zone"}, "type": "array"}, "rx_bps": {"description": "Rate of receiving traffic, bits/seconds, last known", "examples": [60003], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "rx_bytes": {"description": "Amount of traffic received since connection", "examples": [8515104416], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "rx_pkts": {"description": "Amount of packets received since connection", "examples": [57770567], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "rx_rate": {"description": "Receive data rate reported for a wireless or mesh link, in Mbps", "format": "float", "readOnly": true, "type": ["number", "null"]}, "rx_retries": {"description": "Amount of rx retries", "readOnly": true, "type": ["integer", "null"]}, "saml_metadata": {"additionalProperties": false, "description": "Read-only SAML and SCIM metadata generated for an SSO configuration", "properties": {"acs_url": {"description": "If `idp_type`==`saml`, Assertion Consumer Service URL that receives SAML responses for this Mist SSO configuration", "examples": ["https://api.mist.com/api/v1/saml/llDfa13f/login"], "readOnly": true, "type": "string"}, "entity_id": {"description": "If `idp_type`==`saml`, service provider entity ID for this Mist SSO configuration", "examples": ["https://api.mist.com/api/v1/saml/llDfa13f/login"], "readOnly": true, "type": "string"}, "logout_url": {"description": "If `idp_type`==`saml`, Single Logout URL used by the identity provider to end the Mist SSO session", "examples": ["https://api.mist.com/api/v1/saml/llDfa13f/logout"], "readOnly": true, "type": "string"}, "metadata": {"description": "If `idp_type`==`saml`, service provider metadata XML for configuring the identity provider", "examples": ["urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"], "readOnly": true, "type": "string"}, "scim_base_url": {"description": "If `idp_type`==`oauth` and `scim_enabled`==`true`, SCIM base URL that the identity provider uses to send provisioning requests to Mist", "examples": ["https://scim.nac-staging.mistsys.com/S_41b2525a-e8b8-4809-8168-f1d8dcbe9735/azure/4d72b1dc-7503-4717-81ea-80d0125b886e"], "type": "string"}}, "type": "object"}, "scan_data_item_band": {"description": "5GHz or 2.4GHz band, associated with the BSSID scanned. enum: `2.4`, `5`", "enum": ["2.4", "5"], "minLength": 1, "type": "string"}, "sdk_invite_sms": {"description": "Request body for sending an SDK invite by SMS", "properties": {"number": {"description": "Destination phone number for the SDK invite SMS", "type": "string"}}, "required": ["number"], "type": "object"}, "sdkinvite": {"description": "SDK invite configuration used to onboard mobile SDK clients to an organization", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the SDK invite was created, in epoch seconds"}, "enabled": {"default": true, "description": "Whether the SDK invite can currently be used", "type": "boolean"}, "expire_time": {"description": "Expiration time for the SDK invite, in epoch seconds", "type": "integer"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the SDK invite"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the SDK invite was last modified, in epoch seconds"}, "name": {"description": "Display name shown for the SDK invite in the mobile experience", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the SDK invite"}, "quota": {"description": "Number of times this SDK invite can be used", "type": "integer"}, "quota_limited": {"default": false, "description": "Whether use of the SDK invite is limited by the quota value", "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the SDK invite, when scoped to a site"}}, "required": ["name"], "type": "object"}, "sdkinvite_list": {"description": "SDK invite configurations returned by list operations", "items": {"$ref": "#/components/schemas/sdkinvite"}, "type": "array"}, "sdkstats_wireless_client": {"additionalProperties": false, "description": "Detailed statistics for an individual SDK client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the SDK client"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the SDK client was last observed, in epoch seconds"}, "map_id": {"description": "Map identifier for the SDK client's location, if known", "format": "uuid", "type": ["string", "null"]}, "name": {"description": "Display name provided for the SDK client", "type": "string"}, "network_connection": {"$ref": "#/components/schemas/stats_sdkclient_network_connection", "description": "Current network connection details for the SDK client"}, "uuid": {"description": "Application UUID for the SDK client", "format": "uuid", "type": "string"}, "vbeacons": {"$ref": "#/components/schemas/sdkstats_wireless_client_vbeacons", "description": "Virtual beacons currently associated with the SDK client and when each association began"}, "x": {"description": "Horizontal map coordinate of the SDK client location, in pixels, if known", "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the SDK client location, in pixels, if known", "format": "double", "type": "number"}, "zones": {"$ref": "#/components/schemas/sdkstats_wireless_client_zones", "description": "Current zone memberships for the SDK client and when the client entered each zone"}}, "required": ["id", "uuid"], "type": "object"}, "sdkstats_wireless_client_vbeacon": {"additionalProperties": false, "description": "Virtual beacon currently associated with an SDK client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Virtual beacon identifier currently associated with the SDK client"}, "since": {"description": "Time when the SDK client began matching the virtual beacon, in epoch seconds", "type": "number"}}, "required": ["id", "since"], "type": "object"}, "sdkstats_wireless_client_vbeacons": {"description": "Virtual beacon associations for the SDK client, including when each began", "items": {"$ref": "#/components/schemas/sdkstats_wireless_client_vbeacon"}, "type": "array", "uniqueItems": true}, "sdkstats_wireless_client_zone": {"additionalProperties": false, "description": "Zone currently containing an SDK client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Zone identifier that currently contains the SDK client"}, "since": {"description": "Time when the SDK client entered the zone, in epoch seconds", "type": "number"}}, "required": ["id", "since"], "type": "object"}, "sdkstats_wireless_client_zones": {"description": "Zone memberships for the SDK client, including when each membership began", "items": {"$ref": "#/components/schemas/sdkstats_wireless_client_zone"}, "type": "array", "uniqueItems": true}, "sdktemplate": {"description": "Visual customization template for the mobile SDK experience", "properties": {"bg_image": {"description": "Background image URL displayed by the SDK template", "type": "string"}, "btn_flr_bgcolor": {"description": "Floor button background color used by the SDK template, as a hex color", "type": "string"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the SDK template was created, in epoch seconds"}, "default": {"description": "Whether this template is the default among available SDK templates", "type": "boolean"}, "for_site": {"description": "Whether the SDK template is scoped to a site", "readOnly": true, "type": "boolean"}, "header_txt": {"description": "Header text displayed by the SDK template", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the SDK template"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the SDK template was last modified, in epoch seconds"}, "name": {"description": "Display name used to identify the SDK template", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the SDK template"}, "search_txtcolor": {"description": "Text color used for search controls in the SDK template, as a hex color", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the SDK template, when scoped to a site"}, "welcome_msg": {"description": "Welcome message displayed by the SDK template", "type": "string"}}, "required": ["name"], "type": "object"}, "sdktemplates": {"description": "SDK visual customization templates returned by list operations", "items": {"$ref": "#/components/schemas/sdktemplate"}, "type": "array"}, "search_events_wan_client": {"additionalProperties": false, "description": "Paginated response for WAN client event searches", "properties": {"end": {"description": "Upper bound timestamp of the WAN client event search window, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of WAN client event results returned by this page", "type": "integer"}, "next": {"description": "URL for the next page of WAN client event results, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/events_client_wan", "description": "WAN client event result data returned by the search response"}, "start": {"description": "Lower bound timestamp of the WAN client event search window, in epoch seconds", "type": "integer"}, "total": {"description": "Count of WAN client event results matching the search", "type": "integer"}}, "type": "object"}, "search_mxedge": {"additionalProperties": false, "description": "Mist Edge record returned by search APIs", "properties": {"distro": {"description": "Linux distribution codename running on the Mist Edge", "type": "string"}, "last_seen": {"description": "Time when the Mist Edge was last observed, in epoch seconds", "type": "number"}, "model": {"description": "Mist Edge hardware or VM model", "examples": ["ME-VM"], "type": "string"}, "mxcluster_id": {"$ref": "#/components/schemas/id", "description": "Cluster identifier associated with the Mist Edge"}, "mxedge_id": {"$ref": "#/components/schemas/id", "description": "Mist Edge identifier for the search record"}, "name": {"description": "Display name of the Mist Edge", "examples": ["me-vm-1"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the Mist Edge"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the Mist Edge, when assigned to a site"}, "tunterm_version": {"description": "Tunnel termination service version running on the Mist Edge", "type": "string"}, "uptime": {"description": "Number of seconds the Mist Edge has been running since last boot", "type": "integer"}}, "type": "object"}, "search_org_devices_mxtunnel_status": {"description": "Mist Tunnel status filter for organization device search. enum: `down`, `up`", "enum": ["down", "up"], "type": "string"}, "search_org_sw_or_gw_ports_type": {"default": "all", "description": "enum: `switch`, `gateway`, `all`", "enum": ["switch", "gateway", "all"], "type": "string"}, "search_org_user_macs_labels": {"description": "Labels associated with org user MAC search results", "items": {"type": "string"}, "type": "array"}, "search_site_devices_desc_sort": {"description": "enum: `mac`, `model`, `sku`, `timestamp`", "enum": ["mac", "model", "sku", "timestamp"], "type": "string"}, "search_site_devices_mxtunnel_status": {"description": "Mist Tunnel status filter for site device search. enum: `down`, `up`", "enum": ["down", "up"], "type": "string"}, "search_site_devices_sort": {"default": "timestamp", "description": "enum: `mac`, `model`, `sku`, `timestamp`", "enum": ["mac", "model", "sku", "timestamp"], "type": "string"}, "search_wan_client": {"additionalProperties": false, "description": "Paginated response for WAN client searches", "properties": {"end": {"description": "Upper bound timestamp of the WAN client search window, in epoch seconds", "type": "integer"}, "limit": {"description": "Maximum number of WAN client records returned by this page", "type": "integer"}, "next": {"description": "URL for the next page of WAN client records, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/stats_wan_clients", "description": "WAN client records returned by the search response"}, "start": {"description": "Lower bound timestamp of the WAN client search window, in epoch seconds", "type": "integer"}, "total": {"description": "Count of WAN client records matching the search", "type": "integer"}}, "type": "object"}, "search_wan_usage": {"additionalProperties": false, "description": "Paginated response for WAN usage searches", "properties": {"end": {"description": "Upper bound timestamp of the WAN usage search window, in epoch seconds", "type": "number"}, "limit": {"description": "Maximum number of WAN usage records returned by this page", "type": "integer"}, "results": {"$ref": "#/components/schemas/search_wan_usage_results", "description": "WAN usage records returned by the search response"}, "start": {"description": "Lower bound timestamp of the WAN usage search window, in epoch seconds", "type": "number"}}, "type": "object"}, "search_wan_usage_results": {"description": "WAN usage records returned by a search response", "items": {"$ref": "#/components/schemas/wan_usages"}, "type": "array"}, "search_webhook_delivery": {"additionalProperties": false, "description": "Paginated response for webhook delivery searches", "properties": {"end": {"description": "Upper bound timestamp of the webhook delivery search window, in epoch seconds", "examples": [1688035193], "type": "integer"}, "limit": {"description": "Maximum number of webhook delivery records returned by this page", "examples": [10], "type": "integer"}, "next": {"description": "URL for the next page of webhook delivery records, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/search_webhook_delivery_results", "description": "Webhook delivery records returned by the search response"}, "start": {"description": "Lower bound timestamp of the webhook delivery search window, in epoch seconds", "examples": [1687948793], "type": "integer"}, "total": {"description": "Count of webhook delivery records matching the search", "type": "integer"}}, "type": "object"}, "search_webhook_delivery_results": {"description": "Webhook delivery records returned by a search response", "items": {"$ref": "#/components/schemas/webhook_delivery"}, "type": "array"}, "search_wired_client": {"additionalProperties": false, "description": "Paginated response for wired client searches", "properties": {"end": {"description": "Upper bound timestamp of the wired client search window, in epoch seconds", "type": "number"}, "limit": {"description": "Maximum number of wired client records returned by this page", "type": "integer"}, "next": {"description": "URL for the next page of wired client records, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/search_wired_client_results", "description": "Wired client records returned by the search response"}, "start": {"description": "Lower bound timestamp of the wired client search window, in epoch seconds", "type": "number"}, "total": {"description": "Count of wired client records matching the search", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "search_wired_client_results": {"description": "Wired client records returned by a search response", "items": {"$ref": "#/components/schemas/wired_client_response"}, "type": "array", "uniqueItems": true}, "search_wireless_client_session": {"additionalProperties": false, "description": "Paginated response for wireless client session searches", "properties": {"end": {"description": "Upper bound timestamp of the wireless client session search window, in epoch seconds", "type": "number"}, "limit": {"description": "Maximum number of wireless client session records returned by this page", "type": "integer"}, "next": {"description": "URL for the next page of wireless client session records, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/search_wireless_client_session_results", "description": "Wireless client session records returned by the search response"}, "start": {"description": "Lower bound timestamp of the wireless client session search window, in epoch seconds", "type": "number"}, "total": {"description": "Count of wireless client session records matching the search", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "search_wireless_client_session_results": {"description": "Wireless client session records returned by a search response", "items": {"$ref": "#/components/schemas/wireless_client_session"}, "type": "array", "uniqueItems": true}, "search_wxtag_apps": {"description": "Applications that can be referenced by WxTag rules", "items": {"$ref": "#/components/schemas/search_wxtag_apps_item"}, "type": "array"}, "search_wxtag_apps_item": {"additionalProperties": false, "description": "Application metadata available for WxTag matching", "properties": {"group": {"description": "Application category group containing this WxTag app", "examples": ["Emails"], "type": "string"}, "key": {"description": "Stable application key used in WxTag configuration", "examples": ["gmail"], "type": "string"}, "name": {"description": "Display name of the application", "examples": ["Gmail - web/app"], "type": "string"}}, "required": ["key", "name", "group"], "type": "object"}, "secintel_profile": {"description": "SecIntel profile containing category-specific threat intelligence actions", "properties": {"name": {"description": "Display name of the SecIntel profile", "examples": ["secintel-custom"], "type": "string"}, "profiles": {"$ref": "#/components/schemas/secintel_profile_profiles", "description": "Category-specific SecIntel action settings included in this profile"}}, "type": "object"}, "secintel_profile_profile": {"additionalProperties": false, "description": "SecIntel action setting for a specific feed category", "properties": {"action": {"$ref": "#/components/schemas/secintel_profile_profile_action", "description": "Protection level applied to the SecIntel category"}, "category": {"$ref": "#/components/schemas/secintel_profile_profile_category", "description": "SecIntel feed category configured by this profile entry"}}, "type": "object"}, "secintel_profile_profile_action": {"default": "default", "description": "enum: `default`, `standard`, `strict`", "enum": ["default", "standard", "strict"], "type": "string"}, "secintel_profile_profile_category": {"description": "enum: `CC`, `IH` (Infected Host), `DNS`", "enum": ["CC", "DNS", "IH"], "type": "string"}, "secintel_profile_profiles": {"description": "Category-specific SecIntel action settings", "items": {"$ref": "#/components/schemas/secintel_profile_profile"}, "type": "array"}, "secintel_profiles": {"description": "SecIntel profiles returned by list operations", "items": {"$ref": "#/components/schemas/secintel_profile"}, "type": "array"}, "secpolicy": {"description": "Security Policy is designed to audit / catch discrepancies between \"what\u2019s intended to be running\" versus \"what\u2019s actually running\" 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": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the security policy was created, in epoch seconds"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the security policy"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the security policy was last modified, in epoch seconds"}, "name": {"description": "Display name of the security policy", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the security policy"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the security policy, when scoped to a site"}, "wlans": {"$ref": "#/components/schemas/secpolicy_wlans", "description": "WLAN configurations audited by this security policy"}}, "type": "object"}, "secpolicy_list": {"description": "Security policies returned by list operations", "items": {"$ref": "#/components/schemas/secpolicy"}, "type": "array"}, "secpolicy_wlans": {"description": "WLAN configurations audited by a security policy", "items": {"$ref": "#/components/schemas/wlan"}, "type": "array", "uniqueItems": true}, "service": {"description": "Traffic service definition for applications or destinations used by gateway and SSR policies", "properties": {"addresses": {"$ref": "#/components/schemas/service_addresses", "description": "Custom IPv4 or IPv6 subnets matched by this service when `type`==`custom`"}, "app_categories": {"$ref": "#/components/schemas/service_app_categories", "description": "Categories of applications matched by this service when `type`==`app_categories`"}, "app_subcategories": {"$ref": "#/components/schemas/service_app_subcategories", "description": "Application subcategories matched by this service when `type`==`app_categories`"}, "apps": {"$ref": "#/components/schemas/service_apps", "description": "Application identifiers matched by this service when `type`==`apps`"}, "client_limit_down": {"default": 0, "description": "0 means unlimited, value from 0 to 107374182", "examples": [300000], "maximum": 107374182, "minimum": 0, "type": "integer"}, "client_limit_up": {"default": 0, "description": "0 means unlimited, value from 0 to 107374182", "examples": [300000], "maximum": 107374182, "minimum": 0, "type": "integer"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the service definition was created, in epoch seconds"}, "description": {"description": "Free-form description of the service definition", "type": "string"}, "dscp": {"$ref": "#/components/schemas/service_dscp", "description": "QoS DSCP value used for custom SSR traffic classification"}, "failover_policy": {"$ref": "#/components/schemas/service_failover_policy", "description": "Failover behavior for traffic matched by this service"}, "hostnames": {"$ref": "#/components/schemas/service_hostnames", "description": "Domain hostnames matched by this custom service for web filtering"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the service definition"}, "max_jitter": {"$ref": "#/components/schemas/service_max_jitter", "description": "Maximum jitter threshold used for SSR uplink selection when `traffic_type`==`custom`"}, "max_latency": {"$ref": "#/components/schemas/service_max_latency", "description": "Maximum latency threshold used for SSR uplink selection when `traffic_type`==`custom`"}, "max_loss": {"$ref": "#/components/schemas/service_max_loss", "description": "Maximum packet loss threshold used for SSR uplink selection when `traffic_type`==`custom`"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the service definition was last modified, in epoch seconds"}, "name": {"description": "Display name of the service definition", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the service definition"}, "service_limit_down": {"default": 0, "description": "0 means unlimited, value from 0 to 107374182", "examples": [300000], "maximum": 107374182, "minimum": 0, "type": "integer"}, "service_limit_up": {"default": 0, "description": "0 means unlimited, value from 0 to 107374182", "examples": [300000], "maximum": 107374182, "minimum": 0, "type": "integer"}, "sle_enabled": {"default": false, "description": "Whether to enable measure SLE", "type": "boolean"}, "specs": {"$ref": "#/components/schemas/service_specs", "description": "Protocol and port match rules used when `type`==`custom`"}, "ssr_relaxed_tcp_state_enforcement": {"default": false, "description": "Whether SSR relaxes TCP state enforcement for this service", "type": "boolean"}, "traffic_class": {"$ref": "#/components/schemas/service_traffic_class", "description": "Traffic class applied when `traffic_type`==`custom`"}, "traffic_type": {"default": "data_best_effort", "description": "values from [List Traffic Types](/#operations/listTrafficTypes)", "type": "string"}, "type": {"$ref": "#/components/schemas/service_type", "description": "Matching mode that determines which app, URL, or custom fields are used"}, "urls": {"$ref": "#/components/schemas/service_urls", "description": "URL patterns matched by this service when `type`==`urls`"}}, "type": "object"}, "service_addresses": {"description": "If `type`==`custom`, IPv4 and/or IPv6 subnets (e.g. 10.0.0.0/8, fd28::/128)", "examples": [["10.0.0.0/8", "172.21.0.0/16", "2001:db8:abcd:12::/64", "fd28::/128"]], "items": {"type": "string"}, "type": "array"}, "service_app_categories": {"description": "When `type`==`app_categories`, list of application categories are available through [List App Category Definitions](/#operations/listAppCategoryDefinitions)", "examples": [["Sports"]], "items": {"type": "string"}, "type": "array"}, "service_app_subcategories": {"description": "When `type`==`app_categories`, list of application categories are available through [List App Sub Category Definitions](/#operations/listAppSubCategoryDefinitions)", "examples": [["Shopping"]], "items": {"type": "string"}, "type": "array"}, "service_apps": {"description": "When `type`==`apps`, list of applications are available through:\n * [List Applications](/#operations/listApplications)\n * [List Gateway Applications](/#operations/listGatewayApplications)\n * /insight/top_app_by-bytes?wired=true", "examples": [["office365", "okta"]], "items": {"type": "string"}, "type": "array"}, "service_dscp": {"description": "For SSR only, when `traffic_type`==`custom`. 0-63 or variable", "oneOf": [{"type": "string"}, {"maximum": 63, "minimum": 0, "type": "integer"}]}, "service_failover_policy": {"default": "revertible", "description": "enum: `non_revertible`, `none`, `revertible`", "enum": ["non_revertible", "none", "revertible"], "type": "string"}, "service_hostnames": {"description": "If `type`==`custom`, web filtering", "items": {"examples": ["example.com"], "type": "string"}, "type": "array"}, "service_max_jitter": {"description": "For SSR only, when `traffic_type`==`custom`, for uplink selection. 0-2147483647 or variable", "oneOf": [{"type": "string"}, {"maximum": 2147483647, "minimum": 0, "type": "integer"}]}, "service_max_latency": {"description": "For SSR only, when `traffic_type`==`custom`, for uplink selection. 0-2147483647 or variable", "oneOf": [{"type": "string"}, {"maximum": 2147483647, "minimum": 0, "type": "integer"}]}, "service_max_loss": {"description": "For SSR only, when `traffic_type`==`custom`, for uplink selection. 0-100 or variable", "oneOf": [{"type": "string"}, {"maximum": 100, "minimum": 0, "type": "integer"}]}, "service_packet": {"additionalProperties": false, "description": "Service data packet observed from an asset or beacon", "properties": {"service_data": {"description": "ata from service data", "type": "string"}, "service_uuid": {"description": "UUID from service data", "type": "string"}}, "type": "object"}, "service_packets": {"description": "List of service data packets heard from the asset/ beacon", "items": {"$ref": "#/components/schemas/service_packet"}, "type": "array"}, "service_path_event": {"additionalProperties": false, "description": "Event describing a service path state change reported by a gateway or SSR device", "properties": {"mac": {"description": "Device MAC address that reported the service path event", "examples": ["90ec7734b374"], "type": "string"}, "model": {"description": "Device model that reported the service path event", "examples": ["SSR120"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the service path event"}, "policy": {"description": "Service policy name associated with the path event", "examples": ["INTERNET"], "type": "string"}, "port_id": {"description": "Network interface associated with the service path event", "examples": ["ge-1/0/6"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the service path event"}, "text": {"description": "Human-readable message for the service path event", "examples": ["Peer Path Down"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the service path event occurred, in epoch seconds"}, "type": {"description": "Event type for the service path change", "examples": ["GW_SERVICE_PATH_REMOVE"], "type": "string"}, "version": {"description": "Device firmware version that reported the service path event", "examples": ["6.1.5-14.lts"], "type": "string"}, "vpn_name": {"description": "Peer name associated with the service path event", "examples": ["Syracuse_HUB"], "type": "string"}, "vpn_path": {"description": "Peer path name associated with the service path event", "examples": ["Syracuse_HUB-Wan0"], "type": "string"}}, "type": "object"}, "service_policies": {"description": "Service policies returned by derived site configuration", "items": {"$ref": "#/components/schemas/service_policy"}, "type": "array"}, "service_policy": {"additionalProperties": false, "description": "Site-level service policy that allows or denies traffic for tenants and services", "properties": {"action": {"$ref": "#/components/schemas/allow_deny", "description": "Allow or deny action for traffic matched by this service policy"}, "antivirus": {"$ref": "#/components/schemas/service_policy_antivirus", "description": "Malware and virus inspection settings applied by this service policy"}, "appqoe": {"$ref": "#/components/schemas/service_policy_appqoe", "description": "Application QoE settings applied by this service policy"}, "ewf": {"$ref": "#/components/schemas/service_policy_ewf", "description": "Enhanced web filtering rules applied by this service policy"}, "idp": {"$ref": "#/components/schemas/idp_config", "description": "Intrusion detection and prevention settings applied by this service policy"}, "local_routing": {"description": "Whether the policy permits access within the same VRF", "type": "boolean"}, "name": {"description": "Display name of the service policy", "type": "string"}, "path_preference": {"description": "By default, we derive all paths available and use them. Optionally, you can customize by using `path_preference`", "type": "string"}, "secintel": {"$ref": "#/components/schemas/service_policy_secintel", "description": "Threat intelligence settings applied by this service policy"}, "servicepolicy_id": {"description": "Organization-level service policy identifier used to link and override selected attributes", "format": "uuid", "type": "string"}, "services": {"$ref": "#/components/schemas/strings", "description": "Application services or service groups matched by this policy"}, "skyatp": {"$ref": "#/components/schemas/service_policy_skyatp", "description": "Threat inspection settings provided by Sky ATP for this service policy"}, "ssl_proxy": {"$ref": "#/components/schemas/service_policy_ssl_proxy", "description": "TLS inspection settings applied by this service policy"}, "syslog": {"$ref": "#/components/schemas/service_policy_syslog", "description": "Remote logging settings applied by this service policy"}, "tenants": {"$ref": "#/components/schemas/strings", "description": "User or network tenants matched by this service policy"}}, "type": "object"}, "service_policy_aamw": {"additionalProperties": false, "description": "SRX advanced anti-malware settings for a service policy", "properties": {"aamwprofile_id": {"description": "Organization-level advanced anti-malware profile ID; takes precedence over inline `profile` settings", "format": "uuid", "type": "string"}, "enabled": {"default": false, "description": "Whether advanced anti-malware inspection is enabled for the service policy", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_aamw_profile", "description": "Built-in advanced anti-malware inspection profile to apply"}}, "type": "object"}, "service_policy_aamw_profile": {"default": "standard", "description": "enum: `docsonly`, `executables`, `standard`", "enum": ["docsonly", "executables", "standard"], "type": "string"}, "service_policy_antivirus": {"additionalProperties": false, "description": "SRX antivirus inspection settings for a service policy", "properties": {"avprofile_id": {"description": "Organization-level antivirus profile ID; takes precedence over inline `profile` settings", "format": "uuid", "type": "string"}, "enabled": {"default": false, "description": "Whether antivirus inspection is enabled for the service policy", "type": "boolean"}, "profile": {"description": "Antivirus profile name to apply, such as `default`, `noftp`, `httponly`, or an AV profile key", "type": "string"}}, "type": "object"}, "service_policy_appqoe": {"additionalProperties": false, "description": "SRX application QoE settings for a service policy", "properties": {"enabled": {"default": false, "description": "Whether application QoE is enabled for the service policy", "type": "boolean"}}, "type": "object"}, "service_policy_ewf": {"description": "Enhanced web filtering rules applied by a service policy", "items": {"$ref": "#/components/schemas/service_policy_ewf_rule"}, "type": "array"}, "service_policy_ewf_rule": {"additionalProperties": false, "description": "Enhanced web filtering rule applied by a service policy", "properties": {"alert_only": {"description": "Whether matching enhanced web filtering traffic is logged without being blocked", "type": "boolean"}, "block_message": {"description": "Message returned when enhanced web filtering blocks a request", "examples": ["Access to this URL Category has been blocked"], "type": "string"}, "enabled": {"default": false, "description": "Whether this enhanced web filtering rule is enabled", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_ewf_rule_profile", "description": "Enhanced web filtering profile applied by this rule"}}, "type": "object"}, "service_policy_ewf_rule_profile": {"default": "strict", "description": "enum: `critical`, `standard`, `strict`", "enum": ["critical", "standard", "strict"], "type": "string"}, "service_policy_secintel": {"additionalProperties": false, "description": "SRX SecIntel settings for a service policy", "properties": {"enabled": {"default": false, "description": "Whether SecIntel inspection is enabled for the service policy", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_secintel_profile", "description": "Protection level applied by SecIntel inspection"}, "secintelprofile_id": {"description": "Organization-level SecIntel profile ID; takes precedence over inline `profile` settings", "type": "string"}}, "type": "object"}, "service_policy_secintel_profile": {"default": "default", "description": "enum: `default`, `standard`, `strict`", "enum": ["default", "standard", "strict"], "type": "string"}, "service_policy_skyatp": {"additionalProperties": false, "description": "SRX Sky ATP threat inspection settings for a service policy", "properties": {"dns_dga_detection": {"$ref": "#/components/schemas/service_policy_skyatp_dns_dga_detection", "description": "Detection settings for DNS DGA threats provided by Sky ATP"}, "dns_tunnel_detection": {"$ref": "#/components/schemas/service_policy_skyatp_dns_tunnel_detection", "description": "Detection settings for DNS tunneling threats provided by Sky ATP"}, "http_inspection": {"$ref": "#/components/schemas/service_policy_skyatp_http_inspection", "description": "Web traffic inspection settings provided by Sky ATP"}, "iot_device_policy": {"$ref": "#/components/schemas/service_policy_skyatp_iot_device_policy", "description": "Device threat policy settings provided by Sky ATP for IoT clients"}}, "type": "object"}, "service_policy_skyatp_dns_dga_detection": {"additionalProperties": false, "description": "Sky ATP DNS DGA detection settings", "properties": {"enabled": {"description": "Whether Sky ATP DNS DGA detection is enabled", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_skyatp_dns_dga_detection_profile", "description": "Sky ATP DNS DGA detection profile to apply"}}, "type": "object"}, "service_policy_skyatp_dns_dga_detection_profile": {"description": "enum: `default`, `standard`, `strict`", "enum": ["default", "standard", "strict"], "type": "string"}, "service_policy_skyatp_dns_tunnel_detection": {"additionalProperties": false, "description": "Sky ATP DNS tunneling detection settings", "properties": {"enabled": {"description": "Whether Sky ATP DNS tunneling detection is enabled", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_skyatp_dns_tunnel_detection_profile", "description": "Sky ATP DNS tunneling detection profile to apply"}}, "type": "object"}, "service_policy_skyatp_dns_tunnel_detection_profile": {"description": "enum: `default`, `standard`, `strict`", "enum": ["default", "standard", "strict"], "type": "string"}, "service_policy_skyatp_http_inspection": {"additionalProperties": false, "description": "Sky ATP HTTP inspection settings", "properties": {"enabled": {"description": "Whether Sky ATP HTTP inspection is enabled", "type": "boolean"}, "profile": {"$ref": "#/components/schemas/service_policy_skyatp_http_inspection_profile", "description": "Sky ATP HTTP inspection profile to apply"}}, "type": "object"}, "service_policy_skyatp_http_inspection_profile": {"description": "Sky ATP HTTP inspection profile to apply. enum: `standard`, `strict`", "enum": ["standard", "strict"], "type": "string"}, "service_policy_skyatp_iot_device_policy": {"additionalProperties": false, "description": "Sky ATP IoT device policy settings", "properties": {"enabled": {"description": "Whether Sky ATP IoT device policy inspection is enabled", "type": "boolean"}}, "type": "object"}, "service_policy_ssl_proxy": {"additionalProperties": false, "description": "SRX SSL proxy inspection settings for a service policy", "properties": {"ciphers_category": {"$ref": "#/components/schemas/ssl_proxy_ciphers_category", "description": "Allowed cipher strength category for SSL proxy inspection"}, "enabled": {"default": false, "description": "Whether SSL proxy inspection is enabled for the service policy", "type": "boolean"}}, "type": "object"}, "service_policy_syslog": {"additionalProperties": false, "description": "Syslog logging settings for a service policy", "properties": {"enabled": {"default": false, "description": "Whether syslog logging is enabled for the service policy", "type": "boolean"}, "server_names": {"description": "Names of syslog servers that receive logs for this service policy", "examples": [["dc_syslog_server"]], "items": {"type": "string"}, "type": "array"}}, "type": "object"}, "service_spec": {"additionalProperties": false, "description": "Protocol and port match rule for a custom service", "properties": {"port_range": {"description": "Port number, port range, or variable", "examples": ["8080,8443"], "type": "string"}, "protocol": {"default": "any", "description": "`https`/ `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254", "examples": ["tcp"], "type": "string"}}, "type": "object"}, "service_specs": {"description": "When `type`==`custom`, optional, if it doesn't exist, http and https is assumed", "items": {"$ref": "#/components/schemas/service_spec"}, "type": "array"}, "service_stat": {"additionalProperties": {"$ref": "#/components/schemas/service_stat_property"}, "description": "Service version information keyed by service name", "type": "object"}, "service_stat_property": {"additionalProperties": false, "description": "Version information for gateway service packages", "properties": {"ash_version": {"description": "Version of the ASH service package", "type": "string"}, "cia_version": {"description": "Version of the CIA service package", "type": "string"}, "ember_version": {"description": "Version of the Ember service package", "type": "string"}, "ipsec_client_version": {"description": "Version of the IPsec client package", "type": "string"}, "mist_agent_version": {"description": "Version of the Mist agent package", "type": "string"}, "package_version": {"description": "Version of the service package", "type": "string"}, "testing_tools_version": {"description": "Version of the testing tools package", "type": "string"}, "wheeljack_version": {"description": "Version of the Wheeljack service package", "type": "string"}}, "type": "object"}, "service_traffic_class": {"default": "best_effort", "description": "when `traffic_type`==`custom`. enum: `best_effort`, `high`, `low`, `medium`", "enum": ["best_effort", "high", "low", "medium"], "type": "string"}, "service_type": {"default": "custom", "description": "enum: `app_categories`, `apps`, `custom`, `urls`", "enum": ["app_categories", "apps", "custom", "urls"], "type": "string"}, "service_urls": {"description": "When `type`==`urls`, no need for spec as URL can encode the ports being used", "items": {"type": "string"}, "type": "array"}, "services": {"description": "Service definitions returned by list operations", "items": {"$ref": "#/components/schemas/service"}, "type": "array"}, "setting_ssr": {"additionalProperties": false, "description": "SSR management settings for device onboarding and connectivity", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/setting_ssr_auto_upgrade", "description": "Automatic SSR firmware upgrade settings for newly onboarded devices"}, "conductor_hosts": {"$ref": "#/components/schemas/setting_ssr_conductor_hosts", "description": "IP addresses or hostnames of conductors used by SSR devices"}, "conductor_token": {"description": "Registration token used by SSR devices to connect to the conductor", "type": "string"}, "disable_stats": {"description": "Whether stats collection is disabled on SSR devices", "type": "boolean"}, "proxy": {"$ref": "#/components/schemas/ssr_proxy", "description": "Network proxy settings used by SSR devices to reach Mist"}}, "type": "object"}, "setting_ssr_auto_upgrade": {"additionalProperties": false, "description": "Automatic firmware upgrade settings applied when an SSR device is first onboarded", "properties": {"channel": {"$ref": "#/components/schemas/ssr_upgrade_channel", "description": "Firmware release channel used for SSR auto-upgrade"}, "custom_versions": {"$ref": "#/components/schemas/setting_ssr_auto_upgrade_custom_versions", "description": "Per-model SSR firmware versions used for auto-upgrade"}, "enabled": {"default": false, "description": "Whether SSR auto-upgrade is enabled for newly onboarded devices", "type": "boolean"}, "version": {"description": "Firmware version to deploy (e.g. 6.3.0-107.r1). Optional, used when custom_versions not specified", "examples": ["6.3.0-107.r1"], "type": "string"}}, "type": "object"}, "setting_ssr_auto_upgrade_custom_versions": {"additionalProperties": {"description": "Firmware version to deploy on the specified SSR model", "examples": ["6.3.0-107.r1"], "type": "string"}, "description": "Property key is the SSR model (e.g. \"SSR130\").", "type": "object"}, "setting_ssr_conductor_hosts": {"description": "Conductor IP addresses or hostnames used by SSR devices", "items": {"type": "string"}, "type": "array"}, "shell_node": {"description": "Request body for creating a shell session on a specific HA node", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to create the shell session"}}, "type": "object"}, "simple_alert": {"additionalProperties": false, "description": "Heuristic alert thresholds used when a Marvis subscription is unavailable", "properties": {"arp_failure": {"$ref": "#/components/schemas/simple_alert_arp_failure", "description": "Thresholds for ARP failure heuristic alerts"}, "dhcp_failure": {"$ref": "#/components/schemas/simple_alert_dhcp_failure", "description": "Thresholds for DHCP failure heuristic alerts"}, "dns_failure": {"$ref": "#/components/schemas/simple_alert_dns_failure", "description": "Thresholds for DNS failure heuristic alerts"}}, "type": "object"}, "simple_alert_arp_failure": {"additionalProperties": false, "description": "Thresholds for ARP failure heuristic alerts", "properties": {"client_count": {"default": 10, "description": "Number of distinct clients that must encounter ARP failures before alerting", "type": "integer"}, "duration": {"default": 20, "description": "Time window in minutes for evaluating ARP failures", "maximum": 60, "minimum": 5, "type": "integer"}, "incident_count": {"default": 10, "description": "Number of ARP failure incidents required within the duration window", "type": "integer"}}, "type": "object"}, "simple_alert_dhcp_failure": {"additionalProperties": false, "description": "Thresholds for DHCP failure heuristic alerts", "properties": {"client_count": {"default": 10, "description": "Number of distinct clients that must encounter DHCP failures before alerting", "type": "integer"}, "duration": {"default": 10, "description": "Time window in minutes for evaluating DHCP failures", "maximum": 60, "minimum": 5, "type": "integer"}, "incident_count": {"default": 20, "description": "Number of DHCP failure incidents required within the duration window", "type": "integer"}}, "type": "object"}, "simple_alert_dns_failure": {"additionalProperties": false, "description": "Thresholds for DNS failure heuristic alerts", "properties": {"client_count": {"default": 20, "description": "Number of distinct clients that must encounter DNS failures before alerting", "type": "integer"}, "duration": {"default": 10, "description": "Time window in minutes for evaluating DNS failures", "maximum": 60, "minimum": 5, "type": "integer"}, "incident_count": {"default": 30, "description": "Number of DNS failure incidents required within the duration window", "type": "integer"}}, "type": "object"}, "site": {"description": "Site configuration and metadata within an organization", "properties": {"address": {"description": "full address of the site", "examples": ["1601 S. Deanza Blvd., Cupertino, CA, 95014"], "type": ["string", "null"]}, "alarmtemplate_id": {"description": "Alarm Template ID, this takes precedence over the Org-level alarmtemplate_id", "examples": ["684dfc5c-fe77-2290-eb1d-ef3d677fe168"], "format": "uuid", "type": ["string", "null"]}, "aptemplate_id": {"description": "AP Template ID, used by APs", "examples": ["16bdf952-ade2-4491-80b0-85ce506c760b"], "format": "uuid", "type": ["string", "null"]}, "country_code": {"description": "Country code for the site (for AP config generation), in two-character", "examples": ["US"], "type": "string"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the site was created, in epoch seconds"}, "gatewaytemplate_id": {"description": "Gateway Template ID, used by gateways", "examples": ["6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f"], "format": "uuid", "type": ["string", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the site"}, "latlng": {"$ref": "#/components/schemas/lat_lng", "description": "Latitude and longitude for the site location"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the site was last modified, in epoch seconds"}, "name": {"description": "Display name of the site", "examples": ["Mist Office"], "type": "string"}, "networktemplate_id": {"description": "Network Template ID, this takes precedence over Site Settings", "examples": ["12ae9bd2-e0ab-107b-72e8-a7a005565ec2"], "format": "uuid", "type": ["string", "null"]}, "notes": {"description": "Optional, any notes about the site", "type": ["string", "null"]}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the site"}, "rftemplate_id": {"description": "RF Template ID, this takes precedence over Site Settings", "examples": ["bb8a9017-1e36-5d6c-6f2b-551abe8a76a2"], "format": "uuid", "type": ["string", "null"]}, "routertemplate_id": {"description": "Router Template ID, used by gateways", "examples": ["6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f"], "format": "uuid", "type": ["string", "null"]}, "secpolicy_id": {"description": "Security policy identifier applied to this site", "examples": ["3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef"], "format": "uuid", "type": ["string", "null"]}, "sitegroup_ids": {"$ref": "#/components/schemas/site_sitegroup_ids", "description": "Site group identifiers for groups that include this site"}, "sitetemplate_id": {"description": "Site template identifier applied to this site", "format": "uuid", "type": ["string", "null"]}, "timezone": {"default": "UTC", "description": "IANA time zone name for the site", "examples": ["America/Los_Angeles"], "type": "string"}, "tzoffset": {"default": 0, "description": "Time zone offset value derived from the site's timezone", "type": "integer"}}, "required": ["name"], "type": "object"}, "site_app": {"additionalProperties": false, "description": "Application summary returned by the site applications endpoint", "properties": {"group": {"description": "Application category group for the site app", "minLength": 1, "type": "string"}, "key": {"description": "Stable application key for the site app", "minLength": 1, "type": "string"}, "name": {"description": "Display name of the site app", "minLength": 1, "type": "string"}}, "required": ["key", "name", "group"], "type": "object"}, "site_apps": {"description": "Application summaries returned for a site", "items": {"$ref": "#/components/schemas/site_app"}, "type": "array", "uniqueItems": true}, "site_apps_count_distinct": {"description": "enum: `ap`, `app`, `category`, `device_mac`, `port_id`, `service`, `src_ip`, `ssid`, `wcid`, `wlan_id app`", "enum": ["ap", "app", "category", "device_mac", "port_id", "service", "src_ip", "ssid", "wcid", "wlan_id app"], "type": "string"}, "site_assets_count_distinct": {"default": "map_id", "description": "enum: `by`, `device_name`, `eddystone_uid_instance`, `eddystone_uid_namespace`, `eddystone_url`, `ibeacon_major`, `ibeacon_minor`, `ibeacon_uuid`, `mac`, `map_id`, `name`", "enum": ["by", "device_name", "eddystone_uid_instance", "eddystone_uid_namespace", "eddystone_url", "ibeacon_major", "ibeacon_minor", "ibeacon_uuid", "mac", "map_id", "name"], "type": "string"}, "site_auto_upgrade_version": {"default": "stable", "description": "desired version. enum: `beta`, `custom`, `stable`", "enum": ["beta", "custom", "stable"], "examples": ["beta"], "type": "string"}, "site_client_events_count_distinct": {"description": "enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`", "enum": ["band", "channel", "proto", "ssid", "type", "wlan_id"], "type": "string"}, "site_client_sessions_count_distinct": {"default": "mac", "description": "enum: `ap`, `client_family`, `client_manufacture`, `client_model`, `client_os`, `mac`, `ssid`, `wlan_id`", "enum": ["ap", "client_family", "client_manufacture", "client_model", "client_os", "mac", "ssid", "wlan_id"], "type": "string"}, "site_clients_count_distinct": {"default": "device", "description": "enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`", "enum": ["ap", "device", "hostname", "ip", "model", "os", "ssid", "vlan"], "type": "string"}, "site_device_events_count_distinct": {"default": "model", "description": "enum: `mac`, `model`, `type`, `type_code`", "enum": ["mac", "model", "type", "type_code"], "type": "string"}, "site_device_last_config_count_distinct": {"default": "mac", "description": "enum: `mac`, `name`, `site_id`, `version`", "enum": ["mac", "name", "site_id", "version"], "type": "string"}, "site_devices_count_distinct": {"default": "model", "description": "enum: `hostname`, `lldp_mgmt_addr`, `lldp_port_id`, `lldp_system_desc`, `lldp_system_name`, `map_id`, `model`, `mxedge_id`, `mxtunnel_status`, `version`", "enum": ["hostname", "lldp_mgmt_addr", "lldp_port_id", "lldp_system_desc", "lldp_system_name", "map_id", "model", "mxedge_id", "mxtunnel_status", "version"], "type": "string"}, "site_discovered_switches_count_distinct": {"default": "system_name", "description": "enum: `mgmt_addr`, `model`, `system_name`, `version`", "enum": ["mgmt_addr", "model", "system_name", "version"], "type": "string"}, "site_engagement": {"additionalProperties": false, "description": "Engagement analytics dwell-time rules for classifying site visits. If hours is omitted, rules apply every day from 00:00 to 23:59. Multiple ranges for the same day are not supported.", "properties": {"dwell_tag_names": {"$ref": "#/components/schemas/site_engagement_dwell_tag_names", "description": "Display labels for dwell-time visit categories"}, "dwell_tags": {"$ref": "#/components/schemas/site_engagement_dwell_tags", "description": "Visit duration ranges used to assign engagement categories"}, "hours": {"$ref": "#/components/schemas/hours", "description": "Schedule during which engagement analytics rules apply"}, "max_dwell": {"default": 43200, "description": "Maximum dwell time in seconds considered by engagement analytics", "examples": [43200], "maximum": 68400, "minimum": 1, "type": "integer"}, "min_dwell": {"description": "Minimum dwell time in seconds for engagement analytics", "minimum": 0, "type": "integer"}}, "type": "object"}, "site_engagement_dwell_tag_names": {"additionalProperties": false, "description": "Display labels for engagement dwell-time categories", "properties": {"bounce": {"default": "Visitor", "description": "Display label for bounce visits", "examples": ["Bounce"], "type": "string"}, "engaged": {"default": "Associates", "description": "Display label for engaged visits", "examples": ["Engaged"], "type": "string"}, "passerby": {"default": "Passerby", "description": "Display label for passerby visits", "examples": ["Passer By"], "type": "string"}, "stationed": {"default": "Assets", "description": "Display label for stationed visits", "examples": ["Stationed"], "type": "string"}}, "type": "object"}, "site_engagement_dwell_tags": {"additionalProperties": false, "description": "Visit duration ranges in seconds used to assign engagement tags", "properties": {"bounce": {"default": "301-14400", "description": "Visit duration range for bounce visits, in seconds", "type": ["string", "null"]}, "engaged": {"default": "14401-28800", "description": "Visit duration range for engaged visits, in seconds", "type": ["string", "null"]}, "passerby": {"default": "1-300", "description": "Visit duration range for passerby visits, in seconds", "type": ["string", "null"]}, "stationed": {"default": "28801-42000", "description": "Visit duration range for stationed visits, in seconds", "type": ["string", "null"]}}, "type": "object"}, "site_guests_count_distinct": {"default": "auth_method", "description": "enum: `auth_method`, `company`, `ssid`", "enum": ["auth_method", "company", "ssid"], "type": "string"}, "site_id": {"description": "Unique identifier of a Mist site", "examples": ["441a1214-6928-442a-8e92-e1d34b8ec6a6"], "format": "uuid", "readOnly": true, "type": "string"}, "site_mxedge_events_count_distinct": {"default": "mxedge_id", "description": "enum: `mxcluster_id`, `mxedge_id`, `package`, `type`", "enum": ["mxcluster_id", "mxedge_id", "package", "type"], "type": "string"}, "site_mxtunnel": {"additionalProperties": false, "description": "Site Mist Tunnel configuration for tunneling AP user VLANs to Mist Edge tunnel peers", "properties": {"additional_mxtunnels": {"$ref": "#/components/schemas/site_mxtunnel_additional_mxtunnels", "description": "Additional named Mist Tunnel definitions configured for the site"}, "ap_subnets": {"$ref": "#/components/schemas/site_mxtunnel_ap_subnets", "description": "AP source subnets allowed to establish Mist Tunnels"}, "auto_preemption": {"$ref": "#/components/schemas/auto_preemption", "description": "Preemption behavior for restoring preferred tunnel peers after failover"}, "clusters": {"$ref": "#/components/schemas/site_mxtunnel_clusters", "description": "Tunnel peer clusters used by APs for this site Mist Tunnel"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the site Mist Tunnel configuration was created"}, "enabled": {"description": "Whether site Mist Tunnel tunneling is enabled", "type": "boolean"}, "for_site": {"description": "Whether this Mist Tunnel configuration is scoped to a 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", "examples": [60], "maximum": 300, "minimum": 1, "type": "integer"}, "hello_retries": {"default": 7, "description": "Number of missed hello heartbeats before an AP tries another tunnel peer", "examples": [3], "maximum": 30, "minimum": 2, "type": "integer"}, "hosts": {"$ref": "#/components/schemas/site_mxtunnel_hosts", "description": "Tunnel peer hostnames or IP addresses reachable from APs"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the site Mist Tunnel configuration"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the site Mist Tunnel configuration was last modified"}, "mtu": {"default": 0, "description": "0 to enable MTU, 552-1500 to start MTU with a lower MTU", "examples": [1100], "maximum": 1500, "minimum": 0, "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the site Mist Tunnel configuration"}, "protocol": {"$ref": "#/components/schemas/mxtunnel_protocol", "description": "Encapsulation protocol used for the site Mist Tunnel"}, "radsec": {"$ref": "#/components/schemas/site_mxtunnel_radsec", "description": "TLS-secured RADIUS proxy settings for the site Mist Tunnel"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site that owns this Mist Tunnel configuration"}, "vlan_ids": {"$ref": "#/components/schemas/mxtunnel_vlan_ids", "description": "List of VLAN IDs carried by this site Mist Tunnel"}}, "type": "object"}, "site_mxtunnel_additional_mxtunnel": {"additionalProperties": false, "description": "Additional named Mist Tunnel configuration for a site", "properties": {"clusters": {"$ref": "#/components/schemas/site_mxtunnel_additional_mxtunnel_clusters", "description": "Tunnel peer clusters used by APs for this additional Mist Tunnel"}, "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", "examples": [60], "maximum": 300, "minimum": 1, "type": "integer"}, "hello_retries": {"default": 7, "description": "Number of missed hello heartbeats before an AP tries another tunnel peer", "examples": [3], "maximum": 30, "minimum": 2, "type": "integer"}, "protocol": {"$ref": "#/components/schemas/site_mxtunnel_protocol", "description": "Encapsulation protocol used for this additional Mist Tunnel"}, "vlan_ids": {"$ref": "#/components/schemas/site_mxtunnel_additional_mxtunnel_vlan_ids", "description": "List of VLAN IDs carried by this additional Mist Tunnel"}}, "type": "object"}, "site_mxtunnel_additional_mxtunnel_clusters": {"description": "Tunnel peer cluster definitions APs use for an additional Mist Tunnel", "items": {"$ref": "#/components/schemas/site_mxtunnel_cluster"}, "type": "array"}, "site_mxtunnel_additional_mxtunnel_vlan_ids": {"description": "VLAN IDs carried by an additional site Mist Tunnel", "examples": [[300, 310, 320]], "items": {"type": "integer"}, "type": "array"}, "site_mxtunnel_additional_mxtunnels": {"additionalProperties": {"$ref": "#/components/schemas/site_mxtunnel_additional_mxtunnel"}, "description": "Additional named Mist Tunnel definitions keyed by tunnel name", "type": "object"}, "site_mxtunnel_ap_subnets": {"description": "List of subnets where we allow AP to establish Mist Tunnels from", "items": {"examples": ["0.0.0.0/0"], "type": "string"}, "type": "array"}, "site_mxtunnel_cluster": {"additionalProperties": false, "description": "Mist Tunnel peer cluster definition for a site", "properties": {"name": {"description": "Peer cluster name used in the site Mist Tunnel configuration", "examples": ["primary"], "type": "string"}, "tunterm_hosts": {"$ref": "#/components/schemas/site_mxtunnel_cluster_tunterm_hosts", "description": "Tunnel termination hostnames or IP addresses in this peer cluster"}}, "type": "object"}, "site_mxtunnel_cluster_tunterm_hosts": {"description": "Tunnel termination hostnames or IP addresses in a site Mist Tunnel cluster", "examples": [["mxedge1", "mxedge2.local"]], "items": {"type": "string"}, "type": "array"}, "site_mxtunnel_clusters": {"description": "Tunnel peer cluster definitions APs use for the site Mist Tunnel", "items": {"$ref": "#/components/schemas/site_mxtunnel_cluster"}, "type": "array"}, "site_mxtunnel_hosts": {"description": "Tunnel peer hostnames or IP addresses reachable from APs", "items": {"type": "string"}, "type": "array"}, "site_mxtunnel_protocol": {"description": "Encapsulation protocol used for this additional Mist Tunnel. enum: `ip`, `udp`", "enum": ["ip", "udp"], "examples": ["udp"], "type": "string"}, "site_mxtunnel_radsec": {"additionalProperties": false, "description": "RadSec proxy settings for a site Mist Tunnel", "properties": {"acct_servers": {"$ref": "#/components/schemas/site_mxtunnel_radsec_acct_servers", "description": "RADIUS accounting servers used by the site Mist Tunnel RadSec proxy"}, "auth_servers": {"$ref": "#/components/schemas/site_mxtunnel_radsec_auth_servers", "description": "RADIUS authentication servers used by the site Mist Tunnel RadSec proxy"}, "enabled": {"default": false, "description": "Whether RadSec proxying is enabled for this site Mist Tunnel", "type": "boolean"}, "use_mxedge": {"description": "Whether RadSec proxying uses Mist Edge", "type": "boolean"}}, "type": "object"}, "site_mxtunnel_radsec_acct_servers": {"description": "RADIUS accounting servers used by the site Mist Tunnel RadSec proxy", "items": {"$ref": "#/components/schemas/radius_acct_server"}, "type": "array"}, "site_mxtunnel_radsec_auth_servers": {"description": "RADIUS authentication servers used by the site Mist Tunnel RadSec proxy", "items": {"$ref": "#/components/schemas/radius_auth_server"}, "type": "array"}, "site_nac_client_events_count_distinct": {"description": "enum: `ap`, `auth_type`, `dryrun_nacrule_id`, `mac`, `nacrule_id`, `nas_vendor`, `ssid`, `type`, `username`, `vlan`", "enum": ["ap", "auth_type", "dryrun_nacrule_id", "mac", "nacrule_id", "nas_vendor", "ssid", "type", "username", "vlan"], "type": "string"}, "site_nac_clients_count_distinct": {"default": "type", "description": "enum: `ap`, `auth_type`, `device_mac`, `edr_managed`, `edr_provider`, `edr_status`, `family`, `hostname`, `idp_id`, `mfg`, `mdm_compliance`, `mdm_managed`, `mdm_provider`, `model`, `mxedge_id`, `nacrule_matched`, `nacrule_name`, `nacrule_id`, `nas_ip`, `nas_vendor`, `os`, `ssid`, `status`, `type`, `usermac_label`, `username`, `vlan`", "enum": ["ap", "auth_type", "device_mac", "edr_managed", "edr_provider", "edr_status", "family", "hostname", "idp_id", "mfg", "mdm_compliance", "mdm_managed", "mdm_provider", "model", "mxedge_id", "nacrule_matched", "nacrule_name", "nacrule_id", "nas_ip", "nas_vendor", "os", "ssid", "status", "type", "usermac_label", "username", "vlan"], "type": "string"}, "site_occupancy_analytics": {"additionalProperties": false, "description": "Analytics settings for site occupancy", "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 Wi-Fi clients should be included in the zone occupancy calculation", "type": "boolean"}, "min_duration": {"default": 3000, "description": "Minimum dwell duration before a client or asset is counted in occupancy analytics", "examples": [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 Wi-Fi clients should be included in the zone occupancy calculation", "type": "boolean"}}, "type": "object"}, "site_other_device_events_count_distinct": {"default": "mac", "description": "enum: `mac`, `site_id`, `type`, `vendor`", "enum": ["mac", "site_id", "type", "vendor"], "type": "string"}, "site_ports_count_distinct": {"default": "mac", "description": "enum: `full_duplex`, `mac`, `neighbor_mac`, `neighbor_port_desc`, `neighbor_system_name`, `poe_disabled`, `poe_mode`, `poe_on`, `port_id`, `port_mac`, `speed`, `up`", "enum": ["full_duplex", "mac", "neighbor_mac", "neighbor_port_desc", "neighbor_system_name", "poe_disabled", "poe_mode", "poe_on", "port_id", "port_mac", "speed", "up"], "type": "string"}, "site_rogue": {"additionalProperties": false, "description": "Rogue AP detection settings for a site", "properties": {"allowed_vlan_ids": {"$ref": "#/components/schemas/vlan_ids", "description": "VLAN IDs allowed by the rogue detection policy"}, "enabled": {"default": false, "description": "Whether rogue detection is enabled", "type": "boolean"}, "honeypot_enabled": {"default": false, "description": "Whether honeypot detection is enabled", "type": "boolean"}, "min_duration": {"default": 10, "description": "Minimum duration for a bssid to be considered neighbor", "examples": [10], "maximum": 59, "type": "integer"}, "min_rogue_duration": {"default": 10, "description": "Minimum duration for a bssid to be considered rogue", "examples": [10], "maximum": 59, "type": "integer"}, "min_rogue_rssi": {"default": -80, "description": "Minimum RSSI for an AP to be considered rogue", "examples": [-80], "minimum": -85, "type": "integer"}, "min_rssi": {"default": -80, "description": "Minimum RSSI for an AP to be considered neighbor (ignoring APs that\u2019s far away)", "examples": [-80], "minimum": -85, "type": "integer"}, "whitelisted_bssids": {"$ref": "#/components/schemas/site_rogue_whitelisted_bssids", "description": "BSSID values or wildcard patterns excluded from rogue detection"}, "whitelisted_ssids": {"$ref": "#/components/schemas/site_rogue_whitelisted_ssids", "description": "SSID names excluded from rogue detection"}}, "type": "object"}, "site_rogue_events_count_distinct": {"default": "bssid", "description": "enum: `ap`, `bssid`, `ssid`, `type`", "enum": ["ap", "bssid", "ssid", "type"], "type": "string"}, "site_rogue_whitelisted_bssids": {"description": "BSSID values or wildcard patterns excluded from rogue detection", "examples": [["NeighborSSID"]], "items": {"type": "string"}, "type": "array"}, "site_rogue_whitelisted_ssids": {"description": "SSID names excluded from rogue detection", "examples": [["cc:8e:6f:d4:bf:16", "cc-8e-6f-d4-bf-16", "cc-73-*", "cc:82:*"]], "items": {"type": "string"}, "type": "array"}, "site_service_events_count_distinct": {"default": "type", "description": "enum: `mac`, `model`, `policy`, `port_id`, `site_id`, `type`, `vpn_name`, `vpn_path`", "enum": ["mac", "model", "policy", "port_id", "site_id", "type", "vpn_name", "vpn_path"], "type": "string"}, "site_setting": {"description": "Configuration settings applied at the site level", "properties": {"acl_policies": {"$ref": "#/components/schemas/acl_policies", "description": "Access control policies configured for the site"}, "acl_tags": {"$ref": "#/components/schemas/acl_tags", "description": "Access control tag definitions available to site policies"}, "additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands applied through the site setting"}, "allow_mist": {"default": false, "description": "whether to allow Mist to look at this org", "type": "boolean"}, "analytic": {"$ref": "#/components/schemas/site_setting_analytic", "description": "Advanced analytics configuration for the site"}, "ap_matching": {"$ref": "#/components/schemas/site_setting_ap_matching", "description": "Rules that apply model-specific AP port configuration"}, "ap_port_config": {"$ref": "#/components/schemas/site_setting_ap_port_config", "description": "Ethernet port configuration overrides for APs at the site"}, "ap_synthetic_test": {"$ref": "#/components/schemas/site_setting_ap_synthetic_test", "description": "Synthetic test configuration for APs at the site"}, "ap_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for AP devices only. When configured it takes effect for AP devices and `device_updown_threshold` is ignored.", "examples": [null], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "auto_placement": {"$ref": "#/components/schemas/site_setting_auto_placement", "description": "Automatic AP placement settings for the site"}, "auto_upgrade": {"$ref": "#/components/schemas/site_setting_auto_upgrade", "description": "Automatic AP firmware upgrade settings for the site. Overrides org setting when provided."}, "auto_upgrade_esl": {"$ref": "#/components/schemas/site_setting_auto_upgrade_esl", "description": "Automatic ESL firmware upgrade settings for the site"}, "auto_upgrade_linecard": {"default": true, "description": "Whether line cards are included in automatic switch upgrades", "type": "boolean"}, "bgp_neighbor_updown_threshold": {"description": "enable threshold-based bgp neighbor down delivery.", "examples": [null], "minimum": 0, "type": ["integer", "null"]}, "blacklist_url": {"description": "Read-only URL for the site blacklist file", "examples": ["https://papi.s3.amazonaws.com/blacklist/xxx..."], "readOnly": true, "type": "string"}, "ble_config": {"$ref": "#/components/schemas/ble_config", "description": "Bluetooth Low Energy configuration applied to APs at the site"}, "config_auto_revert": {"default": false, "description": "Whether to enable ap auto config revert", "type": "boolean"}, "config_push_policy": {"$ref": "#/components/schemas/site_setting_config_push_policy", "description": "Policy controlling how site configuration pushes are applied"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the site settings were created"}, "critical_url_monitoring": {"$ref": "#/components/schemas/site_setting_critical_url_monitoring", "description": "Monitoring configuration for critical URLs at the site"}, "device_updown_threshold": {"default": 0, "description": "By default, device_updown_threshold, if set, will apply to all devices types if different values for specific device type is desired, use the following", "examples": [null], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "dhcp_snooping": {"$ref": "#/components/schemas/dhcp_snooping", "description": "Layer 2 DHCP snooping settings for the site"}, "disabled_system_defined_port_usages": {"$ref": "#/components/schemas/site_setting_disabled_system_defined_port_usages", "description": "System-defined switch port usages disabled for the site"}, "dns_servers": {"$ref": "#/components/schemas/dns_servers", "description": "Name server addresses configured for the site"}, "dns_suffix": {"$ref": "#/components/schemas/dns_suffix", "description": "Search suffixes used for DNS lookups at the site"}, "enable_unii_4": {"default": false, "description": "Whether UNII-4 channels are enabled for the site", "type": "boolean"}, "engagement": {"$ref": "#/components/schemas/site_engagement", "description": "Dwell-time analytics rules for the site"}, "evpn_options": {"$ref": "#/components/schemas/evpn_options", "description": "Fabric EVPN options for the site"}, "extra_routes": {"$ref": "#/components/schemas/extra_routes", "description": "Additional IPv4 routes configured for the site"}, "extra_routes6": {"$ref": "#/components/schemas/extra_routes6", "description": "Additional IPv6 routes configured for the site"}, "flags": {"$ref": "#/components/schemas/site_setting_flags", "description": "Feature flags enabled for the site"}, "for_site": {"description": "Whether this settings object is scoped to a site", "readOnly": true, "type": "boolean"}, "gateway": {"$ref": "#/components/schemas/gateway_template", "description": "Template settings applied to site gateways"}, "gateway_additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional CLI configuration commands applied to gateways at the site"}, "gateway_mgmt": {"$ref": "#/components/schemas/gateway_mgmt", "description": "Management access settings for gateways at the site"}, "gateway_tunnel_updown_threshold": {"description": "enable threshold-based gateway tunnel (secure edge tunnels) up-down delivery.", "examples": [null], "minimum": 0, "type": ["integer", "null"]}, "gateway_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for Gateway devices only. When configured it takes effect for GW devices and `device_updown_threshold` is ignored.", "examples": [null], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the site settings object"}, "iotproxy": {"$ref": "#/components/schemas/iotproxy", "description": "Proxy settings for IoT traffic at the site"}, "juniper_srx": {"$ref": "#/components/schemas/site_setting_juniper_srx", "description": "SRX integration settings for the site"}, "led": {"$ref": "#/components/schemas/ap_led", "description": "AP LED behavior configured for the site"}, "marvis": {"$ref": "#/components/schemas/marvis", "description": "AI assistant settings for Marvis at the site"}, "mist_nac": {"$ref": "#/components/schemas/switch_mist_nac", "description": "Network access control settings for switches at the site"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the site settings were last modified"}, "mxedge": {"$ref": "#/components/schemas/site_setting_mxedge", "description": "Site Mist Edge service settings"}, "mxedge_mgmt": {"$ref": "#/components/schemas/mxedge_mgmt", "description": "Mist Edge management access settings for the site"}, "mxtunnel": {"$ref": "#/components/schemas/site_mxtunnel", "description": "Site Mist Tunnel configuration"}, "networks": {"$ref": "#/components/schemas/switch_networks", "description": "Switch network definitions configured for the site"}, "ntp_servers": {"$ref": "#/components/schemas/site_setting_ntp_servers", "description": "Time synchronization server addresses configured for the site"}, "occupancy": {"$ref": "#/components/schemas/site_occupancy_analytics", "description": "Analytics settings for site occupancy"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the site settings"}, "ospf_areas": {"$ref": "#/components/schemas/ospf_areas", "description": "Routing area settings for OSPF on site switches"}, "paloalto_networks": {"$ref": "#/components/schemas/site_setting_paloalto_networks", "description": "Firewall integration settings for Palo Alto Networks at the site"}, "persist_config_on_device": {"default": false, "description": "Whether to store the config on AP", "type": "boolean"}, "port_mirroring": {"$ref": "#/components/schemas/switch_port_mirroring", "description": "Switch port mirroring settings for the site"}, "port_usages": {"$ref": "#/components/schemas/switch_port_usages", "description": "Switch port usage profiles available at the site"}, "proxy": {"$ref": "#/components/schemas/proxy", "description": "Network proxy settings for devices at the site"}, "radio_config": {"$ref": "#/components/schemas/ap_radio", "description": "AP radio configuration for the site"}, "radius_config": {"$ref": "#/components/schemas/switch_radius_config", "description": "Switch RADIUS configuration for the site"}, "remote_syslog": {"$ref": "#/components/schemas/remote_syslog", "description": "Syslog forwarding settings for devices at the site"}, "remove_existing_configs": {"default": false, "description": "By default, only the configuration generated by Mist is cleaned up during the configuration process. If `true`, all the existing configuration will be removed.", "type": "boolean"}, "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", "description": "AP threat detection settings for the site"}, "routing_policies": {"$ref": "#/components/schemas/sw_routing_policies", "description": "Switch routing policy definitions for the site"}, "rtsa": {"$ref": "#/components/schemas/site_setting_rtsa", "description": "Managed mobility and asset tracking settings for the site"}, "simple_alert": {"$ref": "#/components/schemas/simple_alert", "description": "Threshold alert settings for the site"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site these settings apply to"}, "skyatp": {"$ref": "#/components/schemas/site_setting_skyatp", "description": "Threat intelligence settings from Sky ATP for the site"}, "sle_thresholds": {"$ref": "#/components/schemas/sle_thresholds", "description": "Service level expectation threshold settings for the site"}, "snmp_config": {"$ref": "#/components/schemas/snmp_config", "description": "Management polling settings for SNMP on site devices"}, "srx_app": {"$ref": "#/components/schemas/site_setting_srx_app", "description": "Juniper SRX application visibility settings for the site"}, "ssh_keys": {"$ref": "#/components/schemas/site_setting_ssh_keys", "description": "Public SSH keys configured for the site"}, "ssr": {"$ref": "#/components/schemas/setting_ssr", "description": "Session Smart Router settings for the site"}, "status_portal": {"$ref": "#/components/schemas/site_setting_status_portal", "description": "End-user status portal settings for the site"}, "switch": {"$ref": "#/components/schemas/site_setting_switch", "description": "Site-level switch feature configuration"}, "switch_matching": {"$ref": "#/components/schemas/switch_matching", "description": "Rules for matching switches to model-specific settings"}, "switch_mgmt": {"$ref": "#/components/schemas/switch_mgmt", "description": "Management access settings for switches at the site"}, "switch_updown_threshold": {"default": 0, "description": "Enable threshold-based device down delivery for Switch devices only. When configured it takes effect for SW devices and `device_updown_threshold` is ignored.", "examples": [null], "maximum": 240, "minimum": 0, "type": ["integer", "null"]}, "synthetic_test": {"$ref": "#/components/schemas/synthetictest_config", "description": "Active monitoring test configuration for the site"}, "track_anonymous_devices": {"default": false, "description": "Whether to track anonymous BLE assets (requires \u2018track_asset\u2019 enabled)", "type": "boolean"}, "tunterm_monitoring": {"$ref": "#/components/schemas/tunterm_monitoring", "description": "Tunnel termination monitoring settings for the site"}, "tunterm_monitoring_disabled": {"default": false, "description": "Whether tunnel termination monitoring is disabled for the site", "type": "boolean"}, "tunterm_multicast_config": {"$ref": "#/components/schemas/site_setting_tunterm_multicast_config", "description": "Multicast settings for tunnel termination at the site"}, "uplink_port_config": {"$ref": "#/components/schemas/ap_uplink_port_config", "description": "AP uplink port configuration for the site"}, "uses_description_from_port_usage": {"default": false, "description": "by default, we only honor description provided in port_config. This allows fallback to those defined in port_usages", "type": "boolean"}, "vars": {"$ref": "#/components/schemas/vars", "description": "Template variables defined for the site"}, "vars_annotations": {"$ref": "#/components/schemas/vars_annotations", "description": "Metadata annotations for site template variables"}, "vna": {"$ref": "#/components/schemas/site_setting_vna", "description": "Virtual Network Assistant settings for the site"}, "vpn_path_updown_threshold": {"description": "enable threshold-based vpn path down delivery.", "examples": [null], "minimum": 0, "type": ["integer", "null"]}, "vpn_peer_updown_threshold": {"description": "enable threshold-based vpn peer down delivery.", "examples": [null], "minimum": 0, "type": ["integer", "null"]}, "vrf_config": {"$ref": "#/components/schemas/vrf_config", "description": "Routing instance configuration for the site"}, "vrf_instances": {"$ref": "#/components/schemas/switch_vrf_instances", "description": "Switch VRF instances configured for the site"}, "vrrp_groups": {"$ref": "#/components/schemas/site_setting_vrrp_groups", "description": "High-availability VRRP group settings for the site"}, "vs_instance": {"$ref": "#/components/schemas/vs_instance", "description": "EX9200 virtual switch instance definitions for the site"}, "wan_vna": {"$ref": "#/components/schemas/site_setting_wan_vna", "description": "Virtual Network Assistant settings for WAN experiences at the site"}, "watched_station_url": {"description": "Read-only URL for the watched station list file", "examples": ["https://papi.s3.amazonaws.com/watched_station/xxx..."], "readOnly": true, "type": "string"}, "whitelist_url": {"description": "Read-only URL for the site whitelist file", "examples": ["https://papi.s3.amazonaws.com/whitelist/xxx..."], "readOnly": true, "type": "string"}, "wids": {"$ref": "#/components/schemas/site_wids", "description": "Wireless intrusion detection settings for the site"}, "wifi": {"$ref": "#/components/schemas/site_wifi", "description": "Wireless LAN configuration settings for the site"}, "wired_vna": {"$ref": "#/components/schemas/site_setting_wired_vna", "description": "Virtual Network Assistant settings for wired experiences at the site"}, "zone_occupancy_alert": {"$ref": "#/components/schemas/site_zone_occupancy_alert", "description": "Occupancy alert settings for site zones"}}, "type": "object"}, "site_setting_analytic": {"additionalProperties": false, "description": "Advanced analytics feature settings for a site", "properties": {"enabled": {"default": false, "description": "Enable Advanced Analytic feature (using SUB-ANA license)", "type": "boolean"}}, "type": "object"}, "site_setting_ap_matching": {"additionalProperties": false, "description": "Rules for applying AP port configuration by AP model or name", "properties": {"enabled": {"description": "Whether AP matching rules are enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/site_setting_ap_matching_rules", "description": "Ordered AP matching rules for applying port configuration"}}, "type": "object"}, "site_setting_ap_matching_rule": {"additionalProperties": false, "description": "AP matching rule for selecting APs and applying port configuration", "properties": {"match_model": {"description": "AP model matched by this rule", "examples": ["AP12"], "type": "string"}, "name": {"description": "Display name of the AP matching rule", "examples": ["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"}, "site_setting_ap_matching_rules": {"description": "Ordered AP matching rules for applying port configuration", "examples": [[{"match_model": "string", "name": "string", "port_config": {"eth1,eth2": {"disabled": true, "dynamic_vlan": {"default_vlan_id": 999, "enabled": true}, "port_vlan_id": 1, "vlan_id": 9, "vlan_ids": [1, 10, 50]}}}]], "items": {"$ref": "#/components/schemas/site_setting_ap_matching_rule"}, "type": "array"}, "site_setting_ap_port_config": {"additionalProperties": false, "description": "AP Ethernet port configuration overrides by model", "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\")", "examples": [{"AP32": {"eth1,eth2": {"port_vlan_id": 1, "vlan_ids": [1, 10, 50]}}}], "type": "object"}}, "type": "object"}, "site_setting_ap_synthetic_test": {"additionalProperties": false, "description": "AP Synthetic Test configuration", "properties": {"additional_vlan_ids": {"$ref": "#/components/schemas/additional_vlan_ids", "description": "VLAN IDs included in addition to the default VLAN set for AP synthetic tests"}}, "type": "object"}, "site_setting_auto_placement": {"additionalProperties": false, "description": "Automatically determined AP placement coordinates and orientation", "properties": {"orientation": {"description": "AP orientation angle in degrees on the map", "examples": [45], "type": "integer"}, "x": {"description": "Map x-coordinate determined by auto placement", "examples": [30], "format": "double", "type": "number"}, "y": {"description": "Map y-coordinate determined by auto placement", "examples": [60], "format": "double", "type": "number"}}, "type": "object"}, "site_setting_auto_upgrade": {"additionalProperties": false, "description": "Automatic AP firmware upgrade policy", "properties": {"custom_versions": {"$ref": "#/components/schemas/ap_auto_upgrade_custom_versions", "description": "Per-AP-model firmware versions or channels used for auto-upgrade"}, "day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Weekly AP auto-upgrade day for the maintenance window"}, "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", "examples": ["12:00"], "type": "string"}, "version": {"$ref": "#/components/schemas/site_auto_upgrade_version", "description": "Firmware release channel or custom version used for AP auto-upgrade"}}, "type": "object"}, "site_setting_auto_upgrade_esl": {"additionalProperties": false, "description": "Automatic AP ESL firmware upgrade policy. When both firmware and ESL auto-upgrade are enabled, ESL upgrade will be done only after firmware upgrade", "properties": {"allow_downgrade": {"default": false, "description": "If true, it will allow downgrade to a lower version", "type": "boolean"}, "custom_versions": {"additionalProperties": {"type": "string"}, "description": "Custom versions for different models. Property key is the model name (e.g. \"AP41\")", "examples": [{"AP41": "2.4.6", "AP61": "2.5.0"}], "type": "object"}, "day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Weekly ESL auto-upgrade day for the maintenance window"}, "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", "examples": ["12:00"], "type": "string"}, "version": {"description": "ESL firmware version used for auto-upgrade", "examples": ["2.5.0"], "type": "string"}}, "type": "object"}, "site_setting_config_push_policy": {"additionalProperties": false, "description": "Mist also uses some heuristic rules to prevent destructive configs from being pushed", "properties": {"no_push": {"default": false, "description": "Stop any new config from being pushed to the device", "type": "boolean"}, "push_window": {"$ref": "#/components/schemas/push_policy_push_window", "description": "Allowed time window during which configuration pushes may run"}}, "type": "object"}, "site_setting_critical_url_monitoring": {"additionalProperties": false, "description": "Critical URLs whose latency is measured and included in site health", "properties": {"enabled": {"default": true, "description": "Whether critical URL monitoring is enabled", "type": "boolean"}, "monitors": {"$ref": "#/components/schemas/site_setting_critical_url_monitoring_monitors", "description": "Critical URLs monitored for site health latency"}}, "type": "object"}, "site_setting_critical_url_monitoring_monitor": {"additionalProperties": false, "description": "Critical URL monitor definition for site health", "properties": {"url": {"description": "Monitored HTTP or HTTPS URL used for site health latency", "examples": ["http://50.1.3.5:8080"], "type": "string"}, "vlan_id": {"$ref": "#/components/schemas/vlan_id_with_variable", "description": "Source VLAN ID used to run the critical URL monitor"}}, "type": "object"}, "site_setting_critical_url_monitoring_monitors": {"description": "Critical URL monitor definitions for site health", "items": {"$ref": "#/components/schemas/site_setting_critical_url_monitoring_monitor"}, "type": "array"}, "site_setting_derived": {"allOf": [{"$ref": "#/components/schemas/site_setting"}, {"$ref": "#/components/schemas/site_setting_derived_accounts"}], "description": "Site settings with derived OAuth account integration data"}, "site_setting_derived_accounts": {"additionalProperties": {"$ref": "#/components/schemas/account_oauth_info_account"}, "description": "Derived OAuth account integration details keyed by account name", "type": "object"}, "site_setting_disabled_system_defined_port_usages": {"description": "If some system-default port usages are not desired - namely, ap / iot / uplink", "items": {"$ref": "#/components/schemas/system_defined_port_usages"}, "type": "array"}, "site_setting_flags": {"additionalProperties": {"type": "string"}, "description": "Name/val pair objects for location engine to use", "type": "object"}, "site_setting_juniper_srx": {"additionalProperties": false, "description": "Site-level Juniper SRX integration settings", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/juniper_srx_auto_upgrade", "description": "SRX auto-upgrade settings applied when SRX devices are onboarded"}, "gateways": {"$ref": "#/components/schemas/site_setting_juniper_srx_gateways", "description": "SRX gateways integrated with this site"}, "send_mist_nac_user_info": {"description": "Whether Mist NAC user information is sent to Juniper SRX gateways", "type": "boolean"}}, "type": "object"}, "site_setting_juniper_srx_gateway": {"additionalProperties": false, "description": "Juniper SRX gateway API connection settings", "properties": {"api_key": {"description": "Authentication key used to access the Juniper SRX gateway API", "examples": ["5abf7c8a-1a1c-4398-ba2d-b0c297094d1a"], "type": "string"}, "api_password": {"description": "Authentication password used to access the Juniper SRX gateway API", "examples": ["abc@123"], "type": "string"}, "api_url": {"description": "Base URL for the Juniper SRX gateway API", "examples": ["https://23.43.12.78:8443"], "type": "string"}}, "type": "object"}, "site_setting_juniper_srx_gateways": {"description": "Juniper SRX gateways integrated with a site", "items": {"$ref": "#/components/schemas/site_setting_juniper_srx_gateway"}, "type": "array"}, "site_setting_mxedge": {"additionalProperties": false, "description": "Service settings for the site Mist Edge cluster", "properties": {"mist_das": {"$ref": "#/components/schemas/mxedge_das", "description": "DAS service settings for the site Mist Edge cluster"}, "mist_nac": {"$ref": "#/components/schemas/mxcluster_nac", "description": "RADIUS settings for Mist NAC on the site Mist Edge cluster"}, "mist_nacedge": {"$ref": "#/components/schemas/mist_nacedge", "description": "NAC Edge service settings for the site Mist Edge cluster"}, "radsec": {"$ref": "#/components/schemas/mxcluster_radsec", "description": "TLS-secured RADIUS proxy settings for the site Mist Edge cluster"}}, "type": "object"}, "site_setting_ntp_servers": {"description": "List of NTP servers", "items": {"type": "string"}, "type": "array"}, "site_setting_paloalto_network_gateway": {"additionalProperties": false, "description": "Palo Alto Networks gateway API connection settings", "properties": {"api_key": {"description": "Authentication key used to access the Palo Alto Networks gateway API", "examples": ["5abf7c8a-1a1c-4398-ba2d-b0c297094d1a"], "type": "string"}, "api_url": {"description": "Base URL for the Palo Alto Networks gateway API", "examples": ["https://23.43.12.78:8443"], "type": "string"}}, "type": "object"}, "site_setting_paloalto_networks": {"additionalProperties": false, "description": "Palo Alto Networks integration settings for the site", "properties": {"gateways": {"$ref": "#/components/schemas/site_setting_paloalto_networks_gateways", "description": "Palo Alto Networks gateways integrated with this site"}, "send_mist_nac_user_info": {"default": false, "description": "Whether Mist NAC user information is sent to Palo Alto Networks gateways", "type": "boolean"}}, "type": "object"}, "site_setting_paloalto_networks_gateways": {"description": "Palo Alto Networks gateways integrated with a site", "items": {"$ref": "#/components/schemas/site_setting_paloalto_network_gateway"}, "type": "array"}, "site_setting_rtsa": {"additionalProperties": false, "description": "Managed mobility and asset tracking settings", "properties": {"app_waking": {"default": false, "description": "Whether app wake-up support is enabled for managed mobility", "type": "boolean"}, "disable_dead_reckoning": {"description": "Whether dead reckoning is disabled for managed mobility", "type": "boolean"}, "disable_pressure_sensor": {"default": false, "description": "Whether pressure sensor use is disabled for managed mobility", "type": "boolean"}, "enabled": {"description": "Whether managed mobility features are enabled", "type": "boolean"}, "track_asset": {"default": false, "description": "Whether BLE asset tracking is enabled for managed mobility", "type": "boolean"}}, "type": "object"}, "site_setting_skyatp": {"additionalProperties": false, "description": "Sky ATP threat intelligence settings for the site", "properties": {"enabled": {"description": "Whether Sky ATP is enabled for the site", "type": "boolean"}, "send_ip_mac_mapping": {"default": false, "description": "Whether IP-to-MAC mappings are sent to Sky ATP", "type": "boolean"}}, "type": "object"}, "site_setting_srx_app": {"additionalProperties": false, "description": "Juniper SRX application visibility settings for the site", "properties": {"enabled": {"default": false, "description": "Whether Juniper SRX application visibility is enabled", "type": "boolean"}}, "type": "object"}, "site_setting_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": {"examples": ["ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host"], "type": "string"}, "type": "array"}, "site_setting_status_portal": {"additionalProperties": false, "description": "End-user status portal settings for the site", "properties": {"enabled": {"default": false, "description": "Whether the site status portal is enabled", "type": "boolean"}, "hostnames": {"$ref": "#/components/schemas/site_setting_status_portal_hostnames", "description": "Portal hostnames served by the site status portal"}}, "type": "object"}, "site_setting_status_portal_hostnames": {"description": "Hostnames served by the site status portal", "items": {"examples": ["my.misty.com"], "type": "string"}, "type": "array"}, "site_setting_switch": {"allOf": [{"$ref": "#/components/schemas/network_template"}, {"$ref": "#/components/schemas/switch_auto_upgrade_container"}], "description": "Site switch settings combining a network template and auto-upgrade controls"}, "site_setting_tunterm_multicast_config": {"additionalProperties": false, "description": "Multicast forwarding settings for tunnel termination at the site", "properties": {"mdns": {"$ref": "#/components/schemas/site_setting_tunterm_multicast_config_mdns", "description": "Multicast DNS forwarding settings for tunneled VLANs"}, "multicast_all": {"default": false, "description": "Whether all multicast traffic is forwarded through tunnel termination", "type": "boolean"}, "ssdp": {"$ref": "#/components/schemas/site_setting_tunterm_multicast_config_ssdp", "description": "Simple Service Discovery Protocol forwarding settings for tunneled VLANs"}}, "type": "object"}, "site_setting_tunterm_multicast_config_mdns": {"additionalProperties": false, "description": "mDNS multicast forwarding settings for tunneled VLANs", "properties": {"enabled": {"default": false, "description": "Whether mDNS multicast forwarding is enabled", "type": "boolean"}, "vlan_ids": {"$ref": "#/components/schemas/mxedge_tunterm_multicast_config_mdns_vlan_ids", "description": "VLAN IDs where mDNS multicast forwarding is enabled"}}, "type": "object"}, "site_setting_tunterm_multicast_config_ssdp": {"additionalProperties": false, "description": "SSDP multicast forwarding settings for tunneled VLANs", "properties": {"enabled": {"default": false, "description": "Whether SSDP multicast forwarding is enabled", "type": "boolean"}, "vlan_ids": {"$ref": "#/components/schemas/mxedge_tunterm_multicast_config_ssdp_vlan_ids", "description": "VLAN IDs where SSDP multicast forwarding is enabled"}}, "type": "object"}, "site_setting_vna": {"additionalProperties": false, "description": "Virtual Network Assistant settings for AP, switch, and gateway experiences at a site", "properties": {"enabled": {"default": false, "description": "Enable Virtual Network Assistant (using SUB-VNA license). This applied to AP / Switch / Gateway", "type": "boolean"}}, "type": "object"}, "site_setting_vrrp_groups": {"additionalProperties": {"$ref": "#/components/schemas/vrrp_group"}, "description": "Property key is the vrrp group", "type": "object"}, "site_setting_wan_vna": {"additionalProperties": false, "description": "WAN Virtual Network Assistant settings for the site", "properties": {"enabled": {"default": false, "description": "Whether WAN VNA is enabled for the site", "type": "boolean"}}, "type": "object"}, "site_setting_wired_vna": {"additionalProperties": false, "description": "Wired Virtual Network Assistant settings for the site", "properties": {"enabled": {"default": false, "description": "Whether Wired VNA is enabled for the site", "type": "boolean"}}, "type": "object"}, "site_sitegroup_ids": {"description": "Site group identifiers for groups this site belongs to", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "site_sky_atp_events_count_distinct": {"default": "type", "description": "enum: `device_mac`, `mac`, `threat_level`, `type`", "enum": ["device_mac", "mac", "threat_level", "type"], "type": "string"}, "site_sle_histogram_scope_parameters": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_sle_impact_summary_fields_parameter": {"description": "enum: `ap`, `band`, `chassis`, `client`, `device_os`, `device_type`, `gateway`, `gateway_zones`, `interface`, `mxedge`, `peer_path`, `server`, `switch`, `vlan`, `wlan`", "enum": ["ap", "band", "chassis", "client", "device_os", "device_type", "gateway", "gateway_zones", "interface", "mxedge", "peer_path", "server", "switch", "vlan", "wlan"], "type": "string"}, "site_sle_impact_summary_scope_parameters": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_sle_impacted_aps_scope_parameters": {"description": "Scope parameter value for impacted AP SLE queries. enum: `site`", "enum": ["site"], "type": "string"}, "site_sle_impacted_chassis_scope_parameters": {"description": "enum: `gateway`, `site`, `switch`", "enum": ["gateway", "site", "switch"], "type": "string"}, "site_sle_impacted_clients_scope_parameters": {"description": "enum: `gateway`, `site`, `switch`", "enum": ["gateway", "site", "switch"], "type": "string"}, "site_sle_impacted_gateways_scope_parameters": {"description": "Scope parameter value for impacted gateway SLE queries. enum: `site`", "enum": ["site"], "type": "string"}, "site_sle_impacted_interfaces_scope_parameters": {"description": "enum: `gateway`, `site`, `switch`", "enum": ["gateway", "site", "switch"], "type": "string"}, "site_sle_impacted_switches_scope_parameters": {"description": "Scope parameter value for impacted switch SLE queries. enum: `site`", "enum": ["site"], "type": "string"}, "site_sle_impacted_users_scope_parameter": {"description": "Scope parameter value for impacted user SLE queries. enum: `ap`, `site`", "enum": ["ap", "site"], "type": "string"}, "site_sle_metric_classifiers_scope_parameters": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_sle_metric_summary_scope_parameters": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_sle_metrics": {"additionalProperties": false, "description": "SLE metrics available for a site", "properties": {"enabled": {"$ref": "#/components/schemas/strings", "description": "SLE metric names enabled for the site"}, "supported": {"$ref": "#/components/schemas/strings", "description": "SLE metric names supported for the site"}}, "required": ["supported", "enabled"], "type": "object"}, "site_sle_metrics_scope_parameters": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_sle_scope": {"description": "enum: `gateway`, `site`, `switch`", "enum": ["gateway", "site", "switch"], "type": "string"}, "site_sle_threshold_scope_parameter": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "site_stats_sitegroup_ids": {"description": "Site group identifiers associated with a site statistics record", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "site_system_events_count_distinct": {"default": "type", "description": "Distinct field used when counting site system events. enum: `type`", "enum": ["type"], "type": "string"}, "site_template": {"description": "Site template containing auto-upgrade settings and template variables", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/site_template_auto_upgrade", "description": "Automatic upgrade settings applied by this site template"}, "name": {"description": "Display name of the site template", "type": "string"}, "vars": {"$ref": "#/components/schemas/vars", "description": "Template variables available to WLAN configuration in this site template"}}, "type": "object"}, "site_template_auto_upgrade": {"additionalProperties": false, "description": "Automatic upgrade settings applied by a site template", "properties": {"day_of_week": {"$ref": "#/components/schemas/day_of_week", "description": "Day of week when the automatic upgrade window runs"}, "enabled": {"description": "Whether automatic upgrades are enabled for sites using this site template", "type": "boolean"}, "time_of_day": {"description": "Local time of day when the automatic upgrade window starts", "type": "string"}, "version": {"description": "Target firmware version installed during automatic upgrades", "type": "string"}}, "type": "object"}, "site_templates": {"description": "List of site templates", "items": {"$ref": "#/components/schemas/site_template"}, "type": "array"}, "site_wan_client_events_distinct": {"default": "type", "description": "enum: `hostname`, `ip`, `mac`, `mfg`, `type`", "enum": ["hostname", "ip", "mac", "mfg", "type"], "type": "string"}, "site_wan_clients_count_distinct": {"default": "mac", "description": "enum: `hostname`, `ip`, `mac`, `mfg`", "enum": ["hostname", "ip", "mac", "mfg"], "type": "string"}, "site_wids": {"additionalProperties": false, "description": "Wireless intrusion detection settings for a site", "properties": {"repeated_auth_failures": {"$ref": "#/components/schemas/site_wids_repeated_auth_failures", "description": "Detection settings for repeated authentication failures"}}, "type": "object"}, "site_wids_repeated_auth_failures": {"additionalProperties": false, "description": "Detection settings for repeated authentication failures", "properties": {"duration": {"description": "Window where a trigger will be detected and action to be taken (in seconds)", "examples": [60], "type": "integer"}, "threshold": {"description": "Count of events to trigger", "type": "integer"}}, "type": "object"}, "site_wifi": {"additionalProperties": false, "description": "Wi-Fi configuration settings for a site", "properties": {"cisco_enabled": {"default": true, "description": "Whether Cisco compatibility features are enabled for site Wi-Fi", "type": "boolean"}, "disable_11k": {"default": false, "description": "Whether to disable 11k", "type": "boolean"}, "disable_radios_when_power_constrained": {"default": false, "description": "Whether AP radios are disabled when AP power is constrained", "type": "boolean"}, "enable_arp_spoof_check": {"default": false, "description": "When proxy_arp is enabled, check for arp spoofing.", "type": "boolean"}, "enable_shared_radio_scanning": {"default": true, "description": "Whether shared radio scanning is enabled for site Wi-Fi", "type": "boolean"}, "enabled": {"default": true, "description": "Enable Wi-Fi 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 disrupt 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", "type": ["string", "null"]}, "mesh_ssid": {"description": "Optional ssid of mesh networking, default is based on site_id", "type": ["string", "null"]}, "proxy_arp": {"$ref": "#/components/schemas/site_wifi_proxy_arp", "description": "ARP proxy mode for site Wi-Fi"}}, "type": "object"}, "site_wifi_proxy_arp": {"description": "enum: `default`, `disabled`, `enabled`", "enum": ["default", "disabled", "enabled"], "type": ["string", "null"]}, "site_wired_clients_count_distinct": {"default": "mac", "description": "enum: `mac`, `port_id`, `vlan`", "enum": ["mac", "port_id", "vlan"], "type": "string"}, "site_zone_count_distinct": {"default": "scope_id", "description": "enum: `scope`, `scope_id`, `user`, `user_type`", "enum": ["scope", "scope_id", "user", "user_type"], "type": "string"}, "site_zone_occupancy_alert": {"additionalProperties": false, "description": "Zone occupancy alert settings for a site", "properties": {"email_notifiers": {"$ref": "#/components/schemas/site_zone_occupancy_alert_email_notifiers", "description": "Notification email recipients for zone occupancy alerts"}, "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", "examples": [5], "maximum": 30, "minimum": 0, "type": "integer"}}, "type": "object"}, "site_zone_occupancy_alert_email_notifiers": {"description": "List of email addresses to send email notifications when the alert threshold is reached", "examples": [["foo@juniper.net", "bar@juniper.net"]], "items": {"type": "string"}, "type": "array"}, "sitegroup": {"description": "Group of sites within an organization", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the site group was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the site group"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the site group was last modified"}, "name": {"description": "Display name of the site group", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Identifier of the org that owns the site group"}, "site_ids": {"$ref": "#/components/schemas/sitegroup_site_ids", "description": "Site identifiers included in the site group"}}, "required": ["name"], "type": "object"}, "sitegroup_id": {"description": "Unique identifier of a Mist site group", "examples": ["3c708be3-9422-4695-b729-babdbd2f7615"], "format": "uuid", "type": "string"}, "sitegroup_site_ids": {"description": "Site identifiers included in a site group", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "sitegroups": {"description": "Site groups returned by list operations", "items": {"$ref": "#/components/schemas/sitegroup"}, "type": "array"}, "sites": {"description": "Site records returned by a list response", "items": {"$ref": "#/components/schemas/site"}, "type": "array"}, "skyatp_list": {"description": "Sky ATP SecIntel allowlist or blocklist entries", "properties": {"domains": {"$ref": "#/components/schemas/skyatp_list_domains", "description": "SecIntel domain entries in this Sky ATP list"}, "ip": {"$ref": "#/components/schemas/skyatp_list_ips", "description": "SecIntel IP address entries in this Sky ATP list"}}, "type": "object"}, "skyatp_list_domain": {"additionalProperties": false, "description": "Domain entry in a Sky ATP SecIntel list", "properties": {"comment": {"description": "Optional note describing the domain list entry", "examples": ["restricted"], "type": "string"}, "value": {"description": "Domain name included in the Sky ATP SecIntel list", "examples": ["unsafe.com"], "type": "string"}}, "required": ["value"], "type": "object"}, "skyatp_list_domains": {"description": "Domain entries in a Sky ATP SecIntel list", "items": {"$ref": "#/components/schemas/skyatp_list_domain"}, "type": "array"}, "skyatp_list_ip": {"additionalProperties": false, "description": "IP address entry in a Sky ATP SecIntel list", "properties": {"comment": {"description": "Optional note describing the IP address list entry", "examples": ["nas"], "type": "string"}, "value": {"description": "IP address included in the Sky ATP SecIntel list", "examples": ["10.1.3.5"], "type": "string"}}, "required": ["value"], "type": "object"}, "skyatp_list_ips": {"description": "IP address entries in a Sky ATP SecIntel list", "items": {"$ref": "#/components/schemas/skyatp_list_ip"}, "type": "array"}, "sle_classifier": {"additionalProperties": false, "description": "Time-series classifier detail for an SLE metric", "properties": {"impact": {"$ref": "#/components/schemas/sle_classifier_impact", "description": "Counts of affected APs and users for this classifier"}, "interval": {"description": "Sample interval in seconds for classifier time-series data", "type": "number"}, "name": {"description": "Classifier name for the SLE metric", "minLength": 1, "type": "string"}, "samples": {"$ref": "#/components/schemas/sle_classifier_samples", "description": "Time-series sample arrays for the classifier"}, "x_label": {"description": "Label for the classifier sample x-axis", "minLength": 1, "type": "string"}, "y_label": {"description": "Label for the classifier sample y-axis", "minLength": 1, "type": "string"}}, "required": ["name", "x_label", "y_label", "interval", "impact"], "type": "object"}, "sle_classifier_impact": {"additionalProperties": false, "description": "AP and user impact counts for an SLE classifier", "properties": {"num_aps": {"description": "Number of APs affected by degraded SLE experience", "type": "number"}, "num_users": {"description": "Number of users affected by degraded SLE experience", "type": "number"}, "total_aps": {"description": "Total number of APs considered for the classifier", "type": "number"}, "total_users": {"description": "Total number of users considered for the classifier", "type": "number"}}, "required": ["num_users", "num_aps", "total_users", "total_aps"], "type": "object"}, "sle_classifier_samples": {"additionalProperties": false, "description": "Per-interval sample arrays for an SLE classifier", "properties": {"degraded": {"$ref": "#/components/schemas/sle_classifier_samples_degraded", "description": "Per-interval degraded SLE values for the classifier"}, "duration": {"$ref": "#/components/schemas/sle_classifier_samples_duration", "description": "Per-interval observation durations for the classifier"}, "total": {"$ref": "#/components/schemas/sle_classifier_samples_total", "description": "Per-interval total SLE values for the classifier"}}, "required": ["duration", "total", "degraded"], "type": "object"}, "sle_classifier_samples_degraded": {"description": "Per-interval degraded SLE values for a classifier", "items": {"$ref": "#/components/schemas/number_or_null"}, "type": "array"}, "sle_classifier_samples_duration": {"description": "Per-interval observation durations for a classifier", "items": {"type": "number"}, "type": "array"}, "sle_classifier_samples_total": {"description": "Per-interval total SLE values for a classifier", "items": {"$ref": "#/components/schemas/number_or_null"}, "type": "array"}, "sle_classifier_summary": {"additionalProperties": false, "deprecated": true, "description": "Deprecated SLE classifier summary response", "properties": {"classifier": {"$ref": "#/components/schemas/sle_classifier", "description": "Requested SLE classifier detail for the metric"}, "end": {"description": "Last timestamp in the classifier summary window", "type": "number"}, "failures": {"$ref": "#/components/schemas/sle_classifier_summary_failures", "description": "Failure records included in the classifier summary"}, "impact": {"$ref": "#/components/schemas/sle_classifier_summary_impact", "description": "AP and user impact counts for the classifier summary window"}, "metric": {"description": "SLE metric name summarized by this response", "minLength": 1, "type": "string"}, "start": {"description": "First timestamp in the classifier summary window", "type": "number"}}, "required": ["start", "end", "metric", "classifier", "impact", "failures"], "type": "object"}, "sle_classifier_summary_failures": {"description": "Failure records included in a deprecated classifier summary", "items": {"additionalProperties": true, "type": "object"}, "type": "array"}, "sle_classifier_summary_impact": {"additionalProperties": false, "description": "AP and user impact counts for a classifier summary window", "properties": {"num_aps": {"description": "Number of APs affected by degraded SLE experience", "type": "number"}, "num_users": {"description": "Number of users affected by degraded SLE experience", "type": "number"}, "total_aps": {"description": "Total number of APs considered in the summary window", "type": "number"}, "total_users": {"description": "Total number of users considered in the summary window", "type": "number"}}, "required": ["num_users", "num_aps", "total_users", "total_aps"], "type": "object"}, "sle_classifier_summary_trend": {"additionalProperties": false, "description": "Time-series trend response for an SLE classifier", "properties": {"classifier": {"$ref": "#/components/schemas/sle_trend_classifier", "description": "Requested SLE classifier trend detail for the metric"}, "end": {"description": "Last timestamp in the classifier trend window", "type": "number"}, "metric": {"description": "SLE metric name represented by the trend", "minLength": 1, "type": "string"}, "start": {"description": "First timestamp in the classifier trend window", "type": "number"}}, "required": ["start", "end", "metric", "classifier"], "type": "object"}, "sle_histogram": {"additionalProperties": false, "description": "Histogram response for an SLE metric", "properties": {"data": {"$ref": "#/components/schemas/sle_histogram_data", "description": "Histogram buckets for the SLE metric"}, "end": {"description": "Last timestamp in the histogram window", "type": "number"}, "metric": {"description": "SLE metric name represented by the histogram", "minLength": 1, "type": "string"}, "start": {"description": "First timestamp in the histogram window", "type": "number"}, "x_label": {"description": "Label for the histogram x-axis", "minLength": 1, "type": "string"}, "y_label": {"description": "Label for the histogram y-axis", "minLength": 1, "type": "string"}}, "required": ["metric", "start", "end", "data", "x_label", "y_label"], "type": "object"}, "sle_histogram_data": {"description": "Histogram buckets for an SLE metric", "items": {"$ref": "#/components/schemas/sle_histogram_data_item"}, "type": "array", "uniqueItems": true}, "sle_histogram_data_item": {"additionalProperties": false, "description": "Single bucket in an SLE histogram", "properties": {"range": {"$ref": "#/components/schemas/sle_histogram_data_item_range", "description": "Boundary values for this histogram bucket"}, "value": {"description": "Measured amount for this histogram bucket", "type": "number"}}, "required": ["value"], "type": "object"}, "sle_histogram_data_item_range": {"description": "Lower and upper boundary values for an SLE histogram bucket", "items": {"type": ["number", "null"]}, "type": "array"}, "sle_impact_summary": {"additionalProperties": false, "description": "SLE impact summary grouped by client, device, AP, WLAN, and band dimensions", "properties": {"ap": {"$ref": "#/components/schemas/sle_impact_summary_ap", "description": "Impact rows grouped by AP"}, "band": {"$ref": "#/components/schemas/sle_impact_summary_band", "description": "Impact rows grouped by radio band"}, "classifier": {"description": "Requested SLE classifier filter applied to the impact summary", "type": "string"}, "device_os": {"$ref": "#/components/schemas/sle_impact_summary_device_os", "description": "Impact rows grouped by client device OS"}, "device_type": {"$ref": "#/components/schemas/sle_impact_summary_device_type", "description": "Impact rows grouped by client device type"}, "end": {"description": "Last timestamp in the impact summary window", "type": "number"}, "failure": {"description": "Requested SLE failure filter applied to the impact summary", "type": "string"}, "metric": {"description": "SLE metric name summarized by this response", "minLength": 1, "type": "string"}, "start": {"description": "First timestamp in the impact summary window", "type": "number"}, "wlan": {"$ref": "#/components/schemas/sle_impact_summary_wlan", "description": "Impact rows grouped by WLAN"}}, "required": ["start", "end", "metric", "classifier", "failure", "ap", "wlan", "device_os", "device_type", "band"], "type": "object"}, "sle_impact_summary_ap": {"description": "Impact summary rows grouped by AP", "items": {"$ref": "#/components/schemas/sle_impact_summary_ap_item"}, "type": "array", "uniqueItems": true}, "sle_impact_summary_ap_item": {"additionalProperties": false, "description": "SLE impact summary row for an AP", "properties": {"ap_mac": {"description": "MAC address of the AP represented by this impact row", "minLength": 1, "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this AP", "type": "number"}, "duration": {"description": "Observation time represented by this AP impact row", "type": "number"}, "name": {"description": "Display name for the AP impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this AP impact row", "type": "number"}}, "required": ["ap_mac", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impact_summary_band": {"description": "Impact summary rows grouped by radio band", "items": {"$ref": "#/components/schemas/sle_impact_summary_band_item"}, "type": "array", "uniqueItems": true}, "sle_impact_summary_band_item": {"additionalProperties": false, "description": "SLE impact summary row for a radio band", "properties": {"band": {"description": "Radio band represented by this impact row", "minLength": 1, "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this radio band", "type": "number"}, "duration": {"description": "Observation time represented by this radio-band impact row", "type": "number"}, "name": {"description": "Display name for the radio-band impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this radio-band impact row", "type": "number"}}, "required": ["band", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impact_summary_device_os": {"description": "Impact summary rows grouped by client device OS", "items": {"$ref": "#/components/schemas/sle_impact_summary_device_os_item"}, "type": "array", "uniqueItems": true}, "sle_impact_summary_device_os_item": {"additionalProperties": false, "description": "SLE impact summary row for a client device OS", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this device OS", "type": "number"}, "device_os": {"description": "Client device OS represented by this impact row", "type": "string"}, "duration": {"description": "Observation time represented by this device-OS impact row", "type": "number"}, "name": {"description": "Display name for the device-OS impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this device-OS impact row", "type": "number"}}, "required": ["device_os", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impact_summary_device_type": {"description": "Impact summary rows grouped by client device type", "items": {"$ref": "#/components/schemas/sle_impact_summary_device_type_item"}, "type": "array", "uniqueItems": true}, "sle_impact_summary_device_type_item": {"additionalProperties": false, "description": "SLE impact summary row for a client device type", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this device type", "type": "number"}, "device_type": {"description": "Client device type represented by this impact row", "type": "string"}, "duration": {"description": "Observation time represented by this device-type impact row", "type": "number"}, "name": {"description": "Display name for the device-type impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this device-type impact row", "type": "number"}}, "required": ["device_type", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impact_summary_wlan": {"description": "Impact summary rows grouped by WLAN", "items": {"$ref": "#/components/schemas/sle_impact_summary_wlan_item"}, "type": "array", "uniqueItems": true}, "sle_impact_summary_wlan_item": {"additionalProperties": false, "description": "SLE impact summary row for a WLAN", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this WLAN", "type": "number"}, "duration": {"description": "Observation time represented by this WLAN impact row", "type": "number"}, "name": {"description": "Display name for the WLAN impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this WLAN impact row", "type": "number"}, "wlan_id": {"description": "Identifier of the WLAN represented by this impact row", "minLength": 1, "type": "string"}}, "required": ["wlan_id", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impacted_applications": {"additionalProperties": false, "description": "Paginated list of applications impacted by an SLE metric", "properties": {"apps": {"$ref": "#/components/schemas/sle_impacted_applications_apps", "description": "Impacted application rows returned for the SLE query"}, "classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted applications window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted application rows returned per page", "type": "string"}, "metric": {"description": "SLE metric name used for the impacted applications query", "type": "string"}, "page": {"description": "Current page number for impacted application results", "type": "integer"}, "start": {"description": "First timestamp in the impacted applications window", "type": "integer"}, "total_count": {"description": "Number of impacted application rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_applications_app": {"additionalProperties": false, "description": "SLE impact row for an application", "properties": {"app": {"description": "Identifier of the application represented by this impacted row", "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this application", "type": "integer"}, "duration": {"description": "Observation time represented by this application impact row", "type": "integer"}, "name": {"description": "Display name for the application impact row", "type": "string"}, "threshold": {"description": "SLE threshold value used for this application", "type": "integer"}, "total": {"description": "Overall SLE total measured for this application impact row", "type": "integer"}}, "type": "object"}, "sle_impacted_applications_apps": {"description": "Impacted application rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_applications_app"}, "type": "array"}, "sle_impacted_aps": {"additionalProperties": false, "description": "Paginated list of APs impacted by an SLE metric", "properties": {"aps": {"$ref": "#/components/schemas/sle_impacted_aps_aps", "description": "Impacted access point rows returned for the SLE query"}, "classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted APs window", "type": "number"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted AP rows returned per page", "type": "number"}, "metric": {"description": "SLE metric name used for the impacted APs query", "minLength": 1, "type": "string"}, "page": {"description": "Current page number for impacted AP results", "type": "number"}, "start": {"description": "First timestamp in the impacted APs window", "type": "number"}, "total_count": {"description": "Number of impacted AP rows matching the query", "type": "number"}}, "required": ["start", "end", "metric", "classifier", "failure", "total_count", "page", "limit", "aps"], "type": "object"}, "sle_impacted_aps_ap": {"additionalProperties": false, "description": "SLE impact row for an AP", "properties": {"ap_mac": {"description": "MAC address of the AP represented by this impacted row", "minLength": 1, "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this AP", "type": "number"}, "duration": {"description": "Observation time represented by this AP impact row", "type": "number"}, "name": {"description": "Display name for the AP impact row", "minLength": 1, "type": "string"}, "total": {"description": "Overall SLE total measured for this AP impact row", "type": "number"}}, "required": ["ap_mac", "name", "duration", "degraded", "total"], "type": "object"}, "sle_impacted_aps_aps": {"description": "Impacted AP rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_aps_ap"}, "type": "array", "uniqueItems": true}, "sle_impacted_chassis": {"additionalProperties": false, "description": "Paginated list of chassis impacted by an SLE metric", "properties": {"chassis": {"$ref": "#/components/schemas/sle_impacted_chassis_chassis", "description": "Impacted chassis rows returned for the SLE query"}, "classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted chassis window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted chassis rows returned per page", "type": "integer"}, "metric": {"description": "SLE metric name used for the impacted chassis query", "type": "string"}, "page": {"description": "Current page number for impacted chassis results", "type": "integer"}, "start": {"description": "First timestamp in the impacted chassis window", "type": "integer"}, "total_count": {"description": "Number of impacted chassis rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_chassis_chassis": {"description": "Impacted chassis rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_chassis_chassis_item"}, "type": "array"}, "sle_impacted_chassis_chassis_item": {"additionalProperties": false, "description": "SLE impact row for a chassis", "properties": {"chassis": {"description": "Identifier of the chassis represented by this impacted row", "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this chassis", "type": "number"}, "duration": {"description": "Observation time represented by this chassis impact row", "type": "number"}, "role": {"description": "Virtual Chassis role for the switch member", "type": "string"}, "switch_mac": {"description": "MAC address of the switch represented by this chassis row", "type": "string"}, "switch_name": {"description": "Display name of the switch represented by this chassis row", "type": "string"}, "total": {"description": "Overall SLE total measured for this chassis impact row", "type": "number"}}, "type": "object"}, "sle_impacted_client_gateway": {"additionalProperties": false, "description": "Gateway association for an impacted client", "properties": {"chassis_mac": {"description": "MAC address of the chassis associated with this client gateway row", "type": "string"}, "gateway_mac": {"description": "MAC address of the gateway associated with this client row", "type": "string"}, "gateway_name": {"description": "Display name of the gateway associated with this client row", "type": "string"}, "interfaces": {"$ref": "#/components/schemas/strings", "description": "Network interfaces associated with this client gateway row"}}, "type": "object"}, "sle_impacted_client_gateways": {"description": "Gateway associations for impacted clients", "items": {"$ref": "#/components/schemas/sle_impacted_client_gateway"}, "type": "array"}, "sle_impacted_clients": {"additionalProperties": false, "description": "Paginated list of clients impacted by an SLE metric", "properties": {"classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "clients": {"$ref": "#/components/schemas/sle_impacted_clients_clients", "description": "Impacted client rows returned for the SLE query"}, "end": {"description": "Last timestamp in the impacted clients window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted client rows returned per page", "type": "integer"}, "metric": {"description": "SLE metric name used for the impacted clients query", "type": "string"}, "page": {"description": "Current page number for impacted client results", "type": "integer"}, "start": {"description": "First timestamp in the impacted clients window", "type": "integer"}, "total_count": {"description": "Number of impacted client rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_clients_client": {"additionalProperties": false, "description": "SLE impact row for a client", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this client", "type": "integer"}, "duration": {"description": "Observation time represented by this client impact row", "type": "integer"}, "mac": {"description": "Client MAC address for the impacted client", "type": "string"}, "name": {"description": "Display name for the client impact row", "type": "string"}, "switches": {"$ref": "#/components/schemas/sle_impacted_clients_client_switches", "description": "Switch rows associated with the impacted client"}, "total": {"description": "Overall SLE total measured for this client impact row", "type": "integer"}}, "type": "object"}, "sle_impacted_clients_client_switch": {"additionalProperties": false, "description": "Switch association for an impacted client", "properties": {"interfaces": {"$ref": "#/components/schemas/strings", "description": "Switch interfaces associated with this impacted client"}, "switch_mac": {"description": "MAC address of the switch associated with this impacted client", "type": "string"}, "switch_name": {"description": "Display name of the switch associated with this impacted client", "type": "string"}}, "type": "object"}, "sle_impacted_clients_client_switches": {"description": "Switch associations for impacted clients", "items": {"$ref": "#/components/schemas/sle_impacted_clients_client_switch"}, "type": "array"}, "sle_impacted_clients_clients": {"description": "Impacted client rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_clients_client"}, "type": "array"}, "sle_impacted_gateways": {"additionalProperties": false, "description": "Paginated list of gateways impacted by an SLE metric", "properties": {"classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted gateways window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "gateways": {"$ref": "#/components/schemas/sle_impacted_gateways_gateways", "description": "Impacted gateway rows returned for the SLE query"}, "limit": {"description": "Maximum number of impacted gateway rows returned per page", "type": "integer"}, "metric": {"description": "SLE metric name used for the impacted gateways query", "type": "string"}, "page": {"description": "Current page number for impacted gateway results", "type": "integer"}, "start": {"description": "First timestamp in the impacted gateways window", "type": "integer"}, "total_count": {"description": "Number of impacted gateway rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_gateways_gateway": {"additionalProperties": false, "description": "SLE impact row for a gateway", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this gateway", "type": "number"}, "duration": {"description": "Observation time represented by this gateway impact row", "type": "integer"}, "gateway_mac": {"description": "MAC address of the gateway represented by this impacted row", "type": "string"}, "gateway_model": {"description": "Model of the gateway represented by this impacted row", "type": "string"}, "gateway_version": {"description": "Firmware version of the gateway represented by this impacted row", "type": "string"}, "name": {"description": "Display name for the gateway impact row", "type": "string"}, "total": {"description": "Overall SLE total measured for this gateway impact row", "type": "integer"}}, "type": "object"}, "sle_impacted_gateways_gateways": {"description": "Impacted gateway rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_gateways_gateway"}, "type": "array"}, "sle_impacted_interfaces": {"additionalProperties": false, "description": "Paginated list of interfaces impacted by an SLE metric", "properties": {"classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted interfaces window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "interfaces": {"$ref": "#/components/schemas/sle_impacted_interfaces_interfaces", "description": "Impacted interface rows returned for the SLE query"}, "limit": {"description": "Maximum number of impacted interface rows returned per page", "type": "integer"}, "metric": {"description": "SLE metric name used for the impacted interfaces query", "type": "string"}, "page": {"description": "Current page number for impacted interface results", "type": "integer"}, "start": {"description": "First timestamp in the impacted interfaces window", "type": "integer"}, "total_count": {"description": "Number of impacted interface rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_interfaces_interface": {"additionalProperties": false, "description": "SLE impact row for a switch interface", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this interface", "type": "number"}, "duration": {"description": "Observation time represented by this interface impact row", "type": "number"}, "interface_name": {"description": "Name of the switch interface represented by this impacted row", "type": "string"}, "switch_mac": {"description": "MAC address of the switch associated with this interface", "type": "string"}, "switch_name": {"description": "Display name of the switch associated with this interface", "type": "string"}, "total": {"description": "Overall SLE total measured for this interface impact row", "type": "number"}}, "type": "object"}, "sle_impacted_interfaces_interfaces": {"description": "Impacted interface rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_interfaces_interface"}, "type": "array"}, "sle_impacted_switches": {"additionalProperties": false, "description": "Paginated list of switches impacted by an SLE metric", "properties": {"classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "end": {"description": "Last timestamp in the impacted switches window", "type": "integer"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted switch rows returned per page", "type": "integer"}, "metric": {"description": "SLE metric name used for the impacted switches query", "type": "string"}, "page": {"description": "Current page number for impacted switch results", "type": "integer"}, "start": {"description": "First timestamp in the impacted switches window", "type": "integer"}, "switches": {"$ref": "#/components/schemas/sle_impacted_switches_switches", "description": "Impacted switch rows returned for the SLE query"}, "total_count": {"description": "Number of impacted switch rows matching the query", "type": "integer"}}, "type": "object"}, "sle_impacted_switches_switch": {"additionalProperties": false, "description": "SLE impact row for a switch", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this switch", "type": "number"}, "duration": {"description": "Observation time represented by this switch impact row", "type": "number"}, "interface": {"$ref": "#/components/schemas/strings", "description": "Switch interfaces contributing to this impacted switch row"}, "name": {"description": "Display name for the switch impact row", "type": "string"}, "switch_mac": {"description": "MAC address of the switch represented by this impacted row", "type": "string"}, "switch_model": {"description": "Model of the switch represented by this impacted row", "type": "string"}, "switch_version": {"description": "Firmware version of the switch represented by this impacted row", "type": "string"}, "total": {"description": "Overall SLE total measured for this switch impact row", "type": "number"}}, "type": "object"}, "sle_impacted_switches_switches": {"description": "Impacted switch rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_switches_switch"}, "type": "array"}, "sle_impacted_users": {"additionalProperties": false, "description": "Paginated list of users impacted by an SLE metric", "properties": {"classifier": {"description": "Requested SLE classifier filter applied to the query", "type": "string"}, "clients": {"$ref": "#/components/schemas/sle_impacted_users_clients", "description": "Impacted client rows returned for the SLE query"}, "end": {"description": "Last timestamp in the impacted users window", "type": "number"}, "failure": {"description": "Requested SLE failure filter applied to the query", "type": "string"}, "limit": {"description": "Maximum number of impacted user rows returned per page", "type": "number"}, "metric": {"description": "SLE metric name used for the impacted users query", "minLength": 1, "type": "string"}, "page": {"description": "Current page number for impacted user results", "type": "number"}, "start": {"description": "First timestamp in the impacted users window", "type": "number"}, "total_count": {"description": "Number of impacted user rows matching the query", "type": "number"}, "users": {"$ref": "#/components/schemas/sle_impacted_users_users", "description": "Impacted user rows returned for the SLE query"}}, "required": ["start", "end", "metric", "classifier", "failure", "total_count", "page", "limit"], "type": "object"}, "sle_impacted_users_client": {"additionalProperties": false, "description": "SLE impact row for a client in an impacted users response", "properties": {"degraded": {"description": "Portion of the SLE total that was degraded for this client", "type": "number"}, "duration": {"description": "Observation time represented by this client impact row", "type": "number"}, "gateways": {"$ref": "#/components/schemas/sle_impacted_client_gateways", "description": "Gateway rows associated with the impacted client"}, "mac": {"description": "Client MAC address for the impacted client", "type": "string"}, "name": {"description": "Display name for the client impact row", "type": "string"}, "src_ip": {"description": "Client source IP address for the impacted client", "type": "string"}, "total": {"description": "Overall SLE total measured for this client impact row", "type": "number"}}, "type": "object"}, "sle_impacted_users_clients": {"description": "Impacted client rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_users_client"}, "type": "array", "uniqueItems": true}, "sle_impacted_users_user": {"additionalProperties": false, "description": "SLE impact row for a user", "properties": {"ap_mac": {"description": "MAC address of the AP associated with this impacted user", "type": "string"}, "ap_name": {"description": "Display name of the AP associated with this impacted user", "type": "string"}, "degraded": {"description": "Portion of the SLE total that was degraded for this user", "type": "number"}, "device_os": {"description": "Client device OS for this impacted user", "type": "string"}, "device_type": {"description": "Client device type for this impacted user", "type": "string"}, "duration": {"description": "Observation time represented by this user impact row", "type": "number"}, "mac": {"description": "Client MAC address for this impacted user", "type": "string"}, "name": {"description": "Display name for the user impact row", "type": "string"}, "ssid": {"description": "Wireless network SSID used by this impacted user", "type": "string"}, "total": {"description": "Overall SLE total measured for this user impact row", "type": "number"}, "wlan_id": {"description": "Identifier of the WLAN used by this impacted user", "type": "string"}}, "type": "object"}, "sle_impacted_users_users": {"description": "Impacted user rows returned for an SLE query", "items": {"$ref": "#/components/schemas/sle_impacted_users_user"}, "type": "array", "uniqueItems": true}, "sle_summary": {"additionalProperties": false, "deprecated": true, "description": "Deprecated SLE summary response for a metric window", "properties": {"classifiers": {"$ref": "#/components/schemas/sle_summary_classifiers", "description": "SLE classifier details included in the summary"}, "end": {"description": "Last timestamp in the SLE summary window", "type": "number"}, "events": {"$ref": "#/components/schemas/sle_summary_events", "description": "Event records included in the SLE summary"}, "impact": {"$ref": "#/components/schemas/sle_summary_impact", "description": "AP and user impact counts for the summary window"}, "sle": {"$ref": "#/components/schemas/sle_summary_sle", "description": "Time-series SLE samples for the summary window"}, "start": {"description": "First timestamp in the SLE summary window", "type": "number"}}, "required": ["start", "end", "sle", "impact", "classifiers", "events"], "type": "object"}, "sle_summary_classifiers": {"description": "SLE classifier details included in a summary response", "items": {"$ref": "#/components/schemas/sle_classifier"}, "type": "array", "uniqueItems": true}, "sle_summary_events": {"description": "Event records included in an SLE summary response", "items": {"additionalProperties": true, "type": "object"}, "type": "array"}, "sle_summary_impact": {"additionalProperties": false, "description": "AP and user impact counts for an SLE summary window", "properties": {"num_aps": {"description": "Number of APs affected by degraded SLE experience", "type": "number"}, "num_users": {"description": "Number of users affected by degraded SLE experience", "type": "number"}, "total_aps": {"description": "Total number of APs considered in the summary window", "type": "number"}, "total_users": {"description": "Total number of users considered in the summary window", "type": "number"}}, "required": ["num_users", "num_aps", "total_users", "total_aps"], "type": "object"}, "sle_summary_scope": {"description": "enum: `ap`, `client`, `gateway`, `site`, `switch`", "enum": ["ap", "client", "gateway", "site", "switch"], "type": "string"}, "sle_summary_sle": {"additionalProperties": false, "description": "Time-series SLE metric samples for a summary response", "properties": {"interval": {"description": "Sample interval in seconds for SLE summary data", "type": "number"}, "name": {"description": "SLE metric name represented by the summary samples", "minLength": 1, "type": "string"}, "samples": {"$ref": "#/components/schemas/sle_summary_sle_samples", "description": "Per-interval sample arrays for the SLE metric"}, "x_label": {"description": "Label for the SLE summary x-axis", "minLength": 1, "type": "string"}, "y_label": {"description": "Label for the SLE summary y-axis", "minLength": 1, "type": "string"}}, "required": ["name", "x_label", "y_label", "interval", "samples"], "type": "object"}, "sle_summary_sle_samples": {"additionalProperties": false, "description": "Per-interval sample arrays for an SLE summary", "properties": {"degraded": {"$ref": "#/components/schemas/sle_summary_sle_samples_degraded", "description": "Per-interval degraded SLE values for the summary"}, "total": {"$ref": "#/components/schemas/sle_summary_sle_samples_total", "description": "Per-interval total SLE values for the summary"}, "value": {"$ref": "#/components/schemas/sle_summary_sle_samples_value", "description": "Per-interval SLE score values for the summary"}}, "required": ["total", "degraded", "value"], "type": "object"}, "sle_summary_sle_samples_degraded": {"description": "Per-interval degraded SLE values for a summary", "items": {"$ref": "#/components/schemas/number_or_null"}, "type": "array"}, "sle_summary_sle_samples_total": {"description": "Per-interval total SLE values for a summary", "items": {"$ref": "#/components/schemas/number_or_null"}, "type": "array"}, "sle_summary_sle_samples_value": {"description": "Per-interval SLE score values for a summary", "items": {"$ref": "#/components/schemas/number_or_null"}, "type": "array"}, "sle_summary_trend": {"additionalProperties": false, "description": "Time-series SLE summary trend response", "properties": {"classifiers": {"$ref": "#/components/schemas/sle_summary_trend_classifiers", "description": "SLE classifier trend details included in the response"}, "end": {"description": "Last timestamp in the SLE summary trend window", "type": "number"}, "sle": {"$ref": "#/components/schemas/sle_summary_sle", "description": "Time-series SLE samples for the trend window"}, "start": {"description": "First timestamp in the SLE summary trend window", "type": "number"}}, "required": ["start", "end", "sle", "classifiers"], "type": "object"}, "sle_summary_trend_classifiers": {"description": "SLE classifier trend details included in a summary trend response", "items": {"$ref": "#/components/schemas/sle_trend_classifier"}, "type": "array", "uniqueItems": true}, "sle_threshold": {"description": "Threshold metadata and configured value for an SLE metric", "properties": {"default": {"description": "Built-in threshold value for this SLE metric", "readOnly": true, "type": "number"}, "direction": {"description": "Comparison direction used for SLE threshold evaluation", "minLength": 1, "readOnly": true, "type": "string"}, "maximum": {"description": "Highest allowed threshold value for this SLE metric", "type": "number"}, "metric": {"description": "SLE metric name associated with this threshold", "minLength": 1, "readOnly": true, "type": "string"}, "minimum": {"description": "Lowest allowed threshold value for this SLE metric", "type": "number"}, "threshold": {"description": "Configured threshold value for this SLE metric", "minLength": 1, "readOnly": true, "type": "string"}, "units": {"description": "Measurement units for this SLE threshold", "minLength": 1, "readOnly": true, "type": "string"}}, "type": "object"}, "sle_thresholds": {"additionalProperties": false, "description": "Site SLE threshold overrides for capacity, coverage, throughput, and time to connect", "properties": {"capacity": {"default": 20, "description": "Threshold percentage for capacity SLE scoring", "maximum": 50, "minimum": 5, "type": "integer"}, "coverage": {"default": -72, "description": "RSSI threshold for coverage SLE scoring, in dBm", "maximum": -60, "minimum": -90, "type": "integer"}, "throughput": {"default": 10, "description": "Minimum throughput threshold for SLE scoring, in Mbps", "maximum": 100, "minimum": 1, "type": "integer"}, "time-to-connect": {"default": 4, "description": "Time to connect, in seconds", "maximum": 10, "minimum": 2, "type": "integer"}}, "type": "object"}, "sle_trend_classifier": {"additionalProperties": false, "description": "Time-series classifier trend detail for an SLE metric", "properties": {"interval": {"description": "Sample interval in seconds for classifier trend data", "type": "number"}, "name": {"description": "Classifier name for the SLE metric trend", "minLength": 1, "type": "string"}, "samples": {"$ref": "#/components/schemas/sle_classifier_samples", "description": "Time-series sample arrays for the classifier trend"}, "x_label": {"description": "Label for the classifier trend x-axis", "minLength": 1, "type": "string"}, "y_label": {"description": "Label for the classifier trend y-axis", "minLength": 1, "type": "string"}}, "required": ["name", "x_label", "y_label", "interval"], "type": "object"}, "snmp_config": {"additionalProperties": false, "description": "SNMP configuration for managed network devices", "properties": {"client_list": {"$ref": "#/components/schemas/snmp_config_client_lists", "description": "SNMP client allowlists that can be referenced by communities"}, "contact": {"description": "Administrative contact string advertised through SNMP", "examples": ["cns@juniper.net"], "type": "string"}, "description": {"description": "Device description string advertised through SNMP", "examples": ["Juniper QFX Series Switch - 1K_5LA"], "type": "string"}, "enabled": {"default": true, "description": "Whether SNMP is enabled", "type": "boolean"}, "engine_id": {"$ref": "#/components/schemas/snmp_config_engine_id", "description": "SNMP engine ID used for SNMPv3"}, "engine_id_type": {"$ref": "#/components/schemas/snmp_config_engine_id_type", "description": "Method used to derive the SNMP engine ID"}, "location": {"description": "Physical location string advertised through SNMP", "examples": ["Las Vegas, NV"], "type": "string"}, "name": {"description": "System name advertised through SNMP", "examples": ["TGH-1K-QFX10K"], "type": "string"}, "network": {"default": "default", "description": "Management network used for SNMP traffic", "type": "string"}, "trap_groups": {"$ref": "#/components/schemas/snmp_config_trap_groups", "description": "SNMP trap group definitions"}, "v2c_config": {"$ref": "#/components/schemas/snmp_config_v2c_configs", "description": "SNMPv2c community configuration entries for this SNMP profile"}, "v3_config": {"$ref": "#/components/schemas/snmpv3_config", "description": "SNMPv3 user, VACM, notify, and target configuration"}, "views": {"$ref": "#/components/schemas/snmp_config_views", "description": "SNMP MIB view definitions"}}, "type": "object"}, "snmp_config_client_list": {"additionalProperties": false, "description": "SNMP client allowlist definition", "properties": {"client_list_name": {"description": "Name of the SNMP client list", "examples": ["clist-1"], "type": "string"}, "clients": {"$ref": "#/components/schemas/snmp_config_client_list_clients", "description": "SNMP client IP addresses or CIDR ranges allowed by this list"}}, "type": "object"}, "snmp_config_client_list_clients": {"description": "SNMP client IP addresses or CIDR ranges allowed by a client list", "items": {"examples": ["151.140.101.218/32"], "type": "string"}, "type": "array"}, "snmp_config_client_lists": {"description": "SNMP client allowlists that can be referenced by communities", "items": {"$ref": "#/components/schemas/snmp_config_client_list"}, "type": "array"}, "snmp_config_engine_id": {"description": "SNMP engine ID value used for SNMPv3", "maxLength": 27, "type": "string"}, "snmp_config_engine_id_type": {"default": "local", "description": "Method used to derive the SNMP engine ID. enum: `local`, `use_mac_address`", "enum": ["local", "use_mac_address"], "type": "string"}, "snmp_config_trap_group": {"additionalProperties": false, "description": "SNMP trap group definition", "properties": {"categories": {"$ref": "#/components/schemas/snmp_config_trap_group_categories", "description": "Trap categories included in this SNMP trap group"}, "group_name": {"description": "Trap group name for this SNMP trap group", "examples": ["profiler"], "type": "string"}, "targets": {"$ref": "#/components/schemas/snmp_config_trap_group_targets", "description": "Trap target addresses for this SNMP trap group"}, "version": {"$ref": "#/components/schemas/snmp_config_trap_version", "description": "SNMP trap protocol version used by this group"}}, "type": "object"}, "snmp_config_trap_group_categories": {"description": "Trap categories included in an SNMP trap group", "items": {"examples": ["authentication"], "type": "string"}, "type": "array"}, "snmp_config_trap_group_targets": {"description": "Trap target addresses for an SNMP trap group", "items": {"examples": ["172.29.158.19"], "type": "string"}, "type": "array"}, "snmp_config_trap_groups": {"description": "SNMP trap group definitions", "items": {"$ref": "#/components/schemas/snmp_config_trap_group"}, "type": "array"}, "snmp_config_trap_version": {"default": "v2", "description": "enum: `all`, `v1`, `v2`", "enum": ["all", "v1", "v2"], "type": "string"}, "snmp_config_v2c_config": {"additionalProperties": false, "description": "SNMPv2c community configuration entry", "properties": {"authorization": {"description": "Access level for the SNMPv2c community", "examples": ["read-only"], "type": "string"}, "client_list_name": {"description": "SNMP client list name referenced by this community", "examples": ["clist-1"], "type": "string"}, "community_name": {"description": "SNMPv2c community string name", "examples": ["abc123"], "type": "string"}, "view": {"description": "SNMP view name that must be defined in the views list", "examples": ["all"], "type": "string"}}, "type": "object"}, "snmp_config_v2c_configs": {"description": "SNMPv2c community configuration entries for this SNMP profile", "items": {"$ref": "#/components/schemas/snmp_config_v2c_config"}, "type": "array"}, "snmp_config_view": {"additionalProperties": false, "description": "SNMP MIB view definition", "properties": {"include": {"description": "Whether the root OID is included in this SNMP view", "type": "boolean"}, "oid": {"description": "Root OID for this SNMP view", "examples": ["1.3.6.1"], "type": "string"}, "view_name": {"description": "Name of the SNMP MIB view definition", "examples": ["all"], "type": "string"}}, "type": "object"}, "snmp_config_views": {"description": "SNMP MIB view definitions", "items": {"$ref": "#/components/schemas/snmp_config_view"}, "type": "array"}, "snmp_usm": {"additionalProperties": false, "description": "SNMPv3 User-based Security Model configuration", "properties": {"engine_type": {"$ref": "#/components/schemas/snmp_usm_engine_type", "description": "SNMP engine type used for this USM configuration"}, "remote_engine_id": {"description": "Required only if `engine_type`==`remote_engine`", "examples": ["00:00:00:0b:00:00:70:10:6f:08:b6:3f"], "type": "string"}, "users": {"$ref": "#/components/schemas/snmp_usm_users", "description": "SNMPv3 USM users for this engine"}}, "type": "object"}, "snmp_usm_engine_type": {"description": "SNMP engine type used for this USM configuration. enum: `local_engine`, `remote_engine`", "enum": ["local_engine", "remote_engine"], "type": "string"}, "snmp_usm_user": {"additionalProperties": false, "description": "SNMPv3 USM user definition", "properties": {"authentication_password": {"description": "Not required if `authentication_type`==`authentication-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters.", "minLength": 7, "type": "string"}, "authentication_type": {"$ref": "#/components/schemas/snmp_usm_user_authentication_type", "description": "Authentication protocol used by this SNMPv3 USM user"}, "encryption_password": {"description": "Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters", "minLength": 8, "type": "string"}, "encryption_type": {"$ref": "#/components/schemas/snmp_usm_user_encryption_type", "description": "Privacy protocol used by this SNMPv3 USM user"}, "name": {"description": "Username for the SNMPv3 USM user", "type": "string"}}, "type": "object"}, "snmp_usm_user_authentication_type": {"description": "sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication-md5`, `authentication-none`, `authentication-sha`, `authentication-sha224`, `authentication-sha256`, `authentication-sha384`, `authentication-sha512`", "enum": ["authentication-md5", "authentication-none", "authentication-sha", "authentication-sha224", "authentication-sha256", "authentication-sha384", "authentication-sha512"], "type": "string"}, "snmp_usm_user_encryption_type": {"description": "enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none`", "enum": ["privacy-3des", "privacy-aes128", "privacy-des", "privacy-none"], "type": "string"}, "snmp_usm_users": {"description": "SNMPv3 USM user definitions", "items": {"$ref": "#/components/schemas/snmp_usm_user"}, "type": "array"}, "snmp_usms": {"description": "SNMPv3 USM engine configurations", "items": {"$ref": "#/components/schemas/snmp_usm"}, "type": "array"}, "snmp_vacm": {"additionalProperties": false, "description": "SNMPv3 View-based Access Control Model configuration", "properties": {"access": {"$ref": "#/components/schemas/snmp_vacm_access", "description": "VACM access rules for SNMPv3"}, "security_to_group": {"$ref": "#/components/schemas/snmp_vacm_security_to_group", "description": "VACM security-name to group mappings"}}, "type": "object"}, "snmp_vacm_access": {"description": "VACM access rules for SNMPv3", "items": {"$ref": "#/components/schemas/snmp_vacm_access_item"}, "type": "array"}, "snmp_vacm_access_item": {"additionalProperties": false, "description": "VACM access rule for an SNMP group", "properties": {"group_name": {"description": "SNMP VACM group name", "type": "string"}, "prefix_list": {"$ref": "#/components/schemas/snmp_vacm_access_item_prefix_list", "description": "Context prefix rules for this VACM group"}}, "type": "object"}, "snmp_vacm_access_item_prefix_list": {"description": "Context prefix rules for a VACM access entry", "items": {"$ref": "#/components/schemas/snmp_vacm_access_item_prefix_list_item"}, "type": "array"}, "snmp_vacm_access_item_prefix_list_item": {"additionalProperties": false, "description": "Context prefix rule for a VACM access entry", "properties": {"context_prefix": {"description": "Context prefix for this VACM access rule. Required only if `type`==`context_prefix`", "examples": ["iil"], "type": "string"}, "notify_view": {"description": "Notify view name referenced by this VACM access rule", "examples": ["all"], "type": "string"}, "read_view": {"description": "Read view name referenced by this VACM access rule", "examples": ["all"], "type": "string"}, "security_level": {"$ref": "#/components/schemas/snmp_vacm_access_item_prefix_list_item_level", "description": "Required security level for this VACM access rule"}, "security_model": {"$ref": "#/components/schemas/snmp_vacm_access_item_prefix_list_item_model", "description": "Required security model for this VACM access rule"}, "type": {"$ref": "#/components/schemas/snmp_vacm_access_item_type", "description": "VACM context matching type for this access rule"}, "write_view": {"description": "Write view name referenced by this VACM access rule", "examples": ["all"], "type": "string"}}, "type": "object"}, "snmp_vacm_access_item_prefix_list_item_level": {"description": "enum: `authentication`, `none`, `privacy`", "enum": ["authentication", "none", "privacy"], "type": "string"}, "snmp_vacm_access_item_prefix_list_item_model": {"description": "enum: `any`, `usm`, `v1`, `v2c`", "enum": ["any", "usm", "v1", "v2c"], "type": "string"}, "snmp_vacm_access_item_type": {"description": "VACM context matching type for this access rule. enum: `context_prefix`, `default_context_prefix`", "enum": ["context_prefix", "default_context_prefix"], "type": "string"}, "snmp_vacm_security_model": {"description": "enum: `usm`, `v1`, `v2c`", "enum": ["usm", "v1", "v2c"], "type": "string"}, "snmp_vacm_security_to_group": {"additionalProperties": false, "description": "VACM security-name to group mapping configuration", "properties": {"content": {"$ref": "#/components/schemas/snmp_vacm_security_to_group_content", "description": "VACM security-name to group mapping entries"}, "security_model": {"$ref": "#/components/schemas/snmp_vacm_security_model", "description": "Required security model for these VACM group mappings"}}, "type": "object"}, "snmp_vacm_security_to_group_content": {"description": "VACM security-name to group mapping entries", "items": {"$ref": "#/components/schemas/snmp_vacm_security_to_group_content_item"}, "type": "array"}, "snmp_vacm_security_to_group_content_item": {"additionalProperties": false, "description": "VACM security-name to group mapping entry", "properties": {"group": {"description": "VACM group name referenced by this mapping", "type": "string"}, "security_name": {"description": "Name of the SNMP security principal mapped to a VACM group", "type": "string"}}, "type": "object"}, "snmpv3_config": {"additionalProperties": false, "description": "SNMPv3 notification, target, USM, and VACM configuration", "properties": {"notify": {"$ref": "#/components/schemas/snmpv3_config_notify", "description": "SNMPv3 notification definitions used for traps and informs"}, "notify_filter": {"$ref": "#/components/schemas/snmpv3_config_notify_filter", "description": "SNMPv3 notification filter profiles"}, "target_address": {"$ref": "#/components/schemas/snmpv3_config_target_address", "description": "SNMPv3 notification target addresses"}, "target_parameters": {"$ref": "#/components/schemas/snmpv3_config_target_params", "description": "SNMPv3 target parameter profiles"}, "usm": {"$ref": "#/components/schemas/snmp_usms", "description": "SNMPv3 USM engine configurations"}, "vacm": {"$ref": "#/components/schemas/snmp_vacm", "description": "SNMPv3 VACM access control configuration"}}, "type": "object"}, "snmpv3_config_notify": {"description": "SNMPv3 notification definitions used for traps and informs", "items": {"$ref": "#/components/schemas/snmpv3_config_notify_items"}, "type": "array"}, "snmpv3_config_notify_filter": {"description": "SNMPv3 notification filter profiles", "items": {"$ref": "#/components/schemas/snmpv3_config_notify_filter_item"}, "type": "array"}, "snmpv3_config_notify_filter_item": {"additionalProperties": false, "description": "SNMPv3 notification filter profile", "properties": {"contents": {"$ref": "#/components/schemas/snmpv3_config_notify_filter_item_contents", "description": "OID filter rules in this notification filter profile"}, "profile_name": {"description": "Notification filter profile name", "type": "string"}}, "type": "object"}, "snmpv3_config_notify_filter_item_content": {"additionalProperties": false, "description": "OID filter rule for an SNMPv3 notification profile", "properties": {"include": {"description": "Whether the matching OID subtree is included", "type": "boolean"}, "oid": {"description": "Matched OID subtree for this notification filter rule", "examples": ["1.3.6.1.4.1"], "type": "string"}}, "type": "object"}, "snmpv3_config_notify_filter_item_contents": {"description": "OID filter rules in an SNMPv3 notification filter profile", "items": {"$ref": "#/components/schemas/snmpv3_config_notify_filter_item_content"}, "type": "array"}, "snmpv3_config_notify_items": {"additionalProperties": false, "description": "SNMPv3 notification definition for traps or informs", "properties": {"name": {"description": "Identifier for this SNMPv3 notification definition", "type": "string"}, "tag": {"description": "Notification tag used to select target addresses", "type": "string"}, "type": {"$ref": "#/components/schemas/snmpv3_config_notify_type", "description": "Delivery mode for this SNMPv3 notification, such as trap or inform"}}, "type": "object"}, "snmpv3_config_notify_type": {"description": "Delivery mode for this SNMPv3 notification, such as trap or inform. enum: `inform`, `trap`", "enum": ["inform", "trap"], "type": "string"}, "snmpv3_config_target_address": {"description": "SNMPv3 notification target addresses", "items": {"$ref": "#/components/schemas/snmpv3_config_target_address_item"}, "type": "array"}, "snmpv3_config_target_address_item": {"additionalProperties": false, "description": "SNMPv3 notification target address entry", "properties": {"address": {"description": "IP address or hostname of the SNMP target", "examples": ["10.11.0.2"], "type": "string"}, "address_mask": {"description": "Mask applied to the SNMP target address", "examples": ["255.255.255.0"], "type": "string"}, "port": {"default": "161", "description": "UDP port used by the SNMP target", "type": ["string", "null"]}, "tag_list": {"description": "Set of notification tags for this target address; use spaces between multiple tags", "type": "string"}, "target_address_name": {"description": "Name of the SNMP target address entry", "examples": ["target_address_name"], "type": "string"}, "target_parameters": {"description": "Target parameter profile referenced by this target address", "type": "string"}}, "type": "object"}, "snmpv3_config_target_param": {"additionalProperties": false, "description": "SNMPv3 target parameter profile", "properties": {"message_processing_model": {"$ref": "#/components/schemas/snmpv3_config_target_param_mess_process_model", "description": "SNMP message processing model used by this target parameter profile"}, "name": {"description": "Target parameter profile name", "type": "string"}, "notify_filter": {"description": "Notification filter profile referenced by this target parameter profile", "type": "string"}, "security_level": {"$ref": "#/components/schemas/snmpv3_config_target_param_security_level", "description": "Required security level for this target parameter profile"}, "security_model": {"$ref": "#/components/schemas/snmpv3_config_target_param_security_model", "description": "Required security model for this target parameter profile"}, "security_name": {"description": "USM security name referenced by this target parameter profile", "examples": ["m01620"], "type": "string"}}, "type": "object"}, "snmpv3_config_target_param_mess_process_model": {"description": "enum: `v1`, `v2c`, `v3`", "enum": ["v1", "v2c", "v3"], "type": "string"}, "snmpv3_config_target_param_security_level": {"description": "enum: `authentication`, `none`, `privacy`", "enum": ["authentication", "none", "privacy"], "type": "string"}, "snmpv3_config_target_param_security_model": {"description": "enum: `usm`, `v1`, `v2c`", "enum": ["usm", "v1", "v2c"], "type": "string"}, "snmpv3_config_target_params": {"description": "SNMPv3 target parameter profiles", "items": {"$ref": "#/components/schemas/snmpv3_config_target_param"}, "type": "array"}, "spectrum_analysis": {"description": "Request parameters for starting AP spectrum analysis at a site", "properties": {"band": {"$ref": "#/components/schemas/spectrum_analysis_band", "description": "Radio band to scan during spectrum analysis"}, "channels": {"description": "Optional list of channels to scan. If not specified, all supported channels will be scanned", "examples": [[36, 40, 44, 48]], "items": {"type": "integer"}, "type": "array"}, "device_id": {"description": "Device ID of the AP that is performing spectrum analysis", "format": "uuid", "type": "string"}, "duration": {"default": 300, "description": "Length of the spectrum analysis run, in seconds", "maximum": 600, "minimum": 60, "type": "integer"}, "format": {"$ref": "#/components/schemas/spectrum_analysis_format", "description": "Output format for the spectrum analysis results"}}, "required": ["band"], "type": "object"}, "spectrum_analysis_band": {"description": "Band for spectrum analysis. enum: `24`, `5`, `6`", "enum": ["24", "5", "6"], "type": "string"}, "spectrum_analysis_format": {"default": "json", "description": "Format of the spectrum analysis data. enum: `json`, `stream`", "enum": ["json", "stream"], "type": "string"}, "sponsor_link_validity_duration": {"anyOf": [{"default": 60, "maximum": 60, "minimum": 5, "type": "integer"}, {"type": "string"}], "description": "Optional if `sponsor_enabled`==`true`. How long to remain valid sponsored guest request approve/deny link received in email, in minutes. Value is between 5 and 60."}, "ssl_proxy_ciphers_category": {"default": "strong", "description": "enum: `medium`, `strong`, `weak`", "enum": ["medium", "strong", "weak"], "type": "string"}, "sso": {"description": "Single sign-on identity provider configuration", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this SSO configuration was created, in epoch seconds"}, "custom_logout_url": {"description": "If `idp_type`==`saml`, 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": "If `idp_type`==`saml`, 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": {"description": "Random string generated during the SSO creation and used to generate the SAML URLs:\n * ACS URL = `/api/v1/saml/{domain}/login` (e.g. `https://api.mist.com/api/v1/saml/s4t5vwv8/login`)\n * Single Logout URL = `/api/v1/saml/{domain}/logout` (e.g. `https://api.mist.com/api/v1/saml/s4t5vwv8/logout`)", "readOnly": true, "type": "string"}, "group_filter": {"description": "Required if `ldap_type`==`custom`, LDAP filter that will identify the type of group", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this SSO configuration"}, "idp_cert": {"description": "If `idp_type`==`saml`. IDP Cert (used to verify the signed response)", "type": "string"}, "idp_sign_algo": {"$ref": "#/components/schemas/sso_idp_sign_algo", "description": "SAML assertion signing algorithm. Required if `idp_type`==`saml`"}, "idp_sso_url": {"description": "Required if `idp_type`==`saml`, IDP Single-Sign-On URL", "type": "string"}, "idp_type": {"$ref": "#/components/schemas/sso_idp_type", "description": "Identity provider type for this SSO configuration"}, "ignore_unmatched_roles": {"description": "If `idp_type`==`saml`, 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": "Required if `idp_type`==`ldap`, whole domain or a specific organization unit (container) in Search base to specify where users and groups are found in the LDAP tree", "examples": ["DC=abc,DC=com"], "type": "string"}, "ldap_bind_dn": {"description": "Required if `idp_type`==`ldap`, the account used to authenticate against the LDAP", "examples": ["CN=nas,CN=users,DC=abc,DC=com"], "type": "string"}, "ldap_bind_password": {"description": "Required if `idp_type`==`ldap`, the password used to authenticate against the LDAP", "examples": ["secret"], "type": "string"}, "ldap_cacerts": {"$ref": "#/components/schemas/sso_ldap_ca_certs", "description": "CA certificates used to validate LDAP or LDAPS server certificates. Required if `idp_type`==`ldap`"}, "ldap_client_cert": {"description": "If `idp_type`==`ldap`, LDAPS Client certificate", "examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "type": "string"}, "ldap_client_key": {"description": "If `idp_type`==`ldap`, Key for the `ldap_client_cert`", "examples": ["-----BEGIN PRI..."], "type": "string"}, "ldap_group_attr": {"default": "memberOf", "description": "Group attribute used to resolve LDAP memberships. If `ldap_type`==`custom`", "type": "string"}, "ldap_group_dn": {"default": "base_dn", "description": "Group search base used for custom LDAP group lookup. If `ldap_type`==`custom`", "type": "string"}, "ldap_resolve_groups": {"default": false, "description": "If `idp_type`==`ldap`, whether to recursively resolve LDAP groups", "type": "boolean"}, "ldap_server_hosts": {"$ref": "#/components/schemas/sso_ldap_server_hosts", "description": "Server hostnames or IP addresses for LDAP or LDAPS when `idp_type`==`ldap`"}, "ldap_type": {"$ref": "#/components/schemas/sso_ldap_type", "description": "Provider template for LDAP SSO when `idp_type`==`ldap`"}, "ldap_user_filter": {"description": "Required if `ldap_type`==`custom`, LDAP filter that will identify the type of user", "examples": ["(mail=%s)"], "type": "string"}, "member_filter": {"description": "Required if `ldap_type`==`custom`,LDAP filter that will identify the type of member", "examples": ["(CN=%s)"], "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this SSO configuration was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Owning MSP identifier for this SSO configuration, when MSP-scoped"}, "mxedge_proxy": {"$ref": "#/components/schemas/sso_mxedge_proxy", "description": "Mist Edge proxy settings used when `idp_type`==`mxedge_proxy`"}, "name": {"description": "Display name of the SSO configuration", "type": "string"}, "nameid_format": {"$ref": "#/components/schemas/sso_nameid_format", "description": "SAML NameID format used when `idp_type`==`saml`"}, "oauth_cc_client_id": {"description": "Required if `idp_type`==`oauth`, Client Credentials", "examples": ["e60da615-7def-4c5a-8196-43675f45e174"], "type": "string"}, "oauth_cc_client_secret": {"description": "Required if `idp_type`==`oauth`, oauth_cc_client_secret is RSA private key, of the form \"-----BEGIN RSA PRIVATE KEY--....\"", "examples": ["REDACTED_AZURE_AD_CLIENT_SECRET"], "format": "password", "type": "string"}, "oauth_discovery_url": {"description": "OAuth discovery document URL used when `idp_type`==`oauth`", "type": "string"}, "oauth_ping_identity_region": {"$ref": "#/components/schemas/oauth_ping_identity_region", "description": "Ping Identity region for OAuth SSO when `oauth_type`==`ping_identity`"}, "oauth_provider_domain": {"$ref": "#/components/schemas/oauth_provider_domain", "description": "Provider domain for Okta OAuth SSO when `oauth_type`==`okta`"}, "oauth_ropc_client_id": {"description": "If `idp_type`==`oauth`, ropc = Resource Owner Password Credentials", "examples": ["9ce04c97-b5b1-4ec8-af17-f5ed42d2daf7"], "type": "string"}, "oauth_ropc_client_secret": {"description": "If `oauth_type`==`azure` or `oauth_type`==`azure-gov`. oauth_ropc_client_secret can be empty", "examples": ["blM9R~6kWFMVFYl4TFZ3fi~8cMdyDONi6cj01dqI"], "format": "password", "type": "string"}, "oauth_tenant_id": {"description": "Required if `idp_type`==`oauth`, oauth_tenant_id", "examples": ["dev-88336535"], "type": "string"}, "oauth_type": {"$ref": "#/components/schemas/sso_oauth_type", "description": "Provider type for OAuth SSO when `idp_type`==`oauth`"}, "openroaming_ssids": {"$ref": "#/components/schemas/sso_openroaming_ssids", "description": "SSIDs that support OpenRoaming, used when `idp_type`==`openroaming`"}, "openroaming_wba_client_cert": {"description": "Optional WBA-issued client certificate for OpenRoaming. If not provided, the default WBA-issued certificate for Juniper will be used.", "examples": ["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----"], "format": "password", "type": "string"}, "openroaming_wba_client_key": {"description": "Optional WBA-issued client private key for OpenRoaming. If not provided, the default WBA-issued key for Juniper will be used.", "examples": ["REDACTED_PRIVATE_KEY_EXAMPLE"], "format": "password", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for this SSO configuration"}, "role_attr_extraction": {"description": "If `idp_type`==`saml`, custom role attribute parsing scheme. Supported Role Parsing Schemes
NameScheme
`cn`
  • The expected role attribute format in SAML Assertion is \"CN=cn,OU=ou1,OU=ou2,\u2026\"
  • 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 \"CN=cn,OU=ou1,OU=ou2\" then parsed role value is \"cn\"
", "type": "string"}, "role_attr_from": {"default": "Role", "description": "If `idp_type`==`saml`, name of the attribute in SAML Assertion to extract role from", "type": "string"}, "scim_enabled": {"default": false, "description": "If `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP", "type": "boolean"}, "scim_secret_token": {"default": "", "description": "If `idp_type`==`oauth`, scim_secret_token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP", "examples": ["FBitbKPE1aecSloPGBuqqPxDUrFeZyZk"], "format": "password", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for this SSO configuration, when site-scoped"}}, "required": ["name"], "type": "object"}, "sso_delete_admins": {"additionalProperties": false, "description": "Request body listing SSO admin email addresses to delete", "properties": {"emails": {"description": "List of admin email addresses to delete", "items": {"type": "string"}, "type": "array"}}, "required": ["emails"], "type": "object"}, "sso_delete_admins_response": {"additionalProperties": false, "description": "Result of deleting SSO admin accounts", "properties": {"deleted": {"description": "List of email addresses that were successfully deleted", "items": {"type": "string"}, "type": "array"}, "errors": {"description": "List of error messages for emails that could not be deleted", "items": {"type": "string"}, "type": "array"}}, "type": "object"}, "sso_idp_sign_algo": {"description": "Required if `idp_type`==`saml`, Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`", "enum": ["sha1", "sha256", "sha384", "sha512"], "type": "string"}, "sso_idp_type": {"default": "saml", "description": "SSO IDP Type:\n * For Admin SSO, enum: `saml`\n * For NAC SSO, enum: `ldap`, `mxedge_proxy`, `oauth`, `openroaming`", "enum": ["ldap", "mxedge_proxy", "oauth", "saml", "openroaming"], "type": "string"}, "sso_ldap_ca_certs": {"description": "Required if `idp_type`==`ldap`, list of CA certificates to validate the LDAP certificate", "examples": [["-----BEGIN CERTIFICATE-----\\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\\n-----END CERTIFICATE-----", "-----BEGIN CERTIFICATE-----\\nBhMCRVMxFDASBgNVBAoMC1N0YXJ0Q29tIENBMSwwKgYDVn-----END CERTIFICATE-----"]], "items": {"type": "string"}, "type": "array"}, "sso_ldap_server_hosts": {"description": "If `idp_type`==`ldap`, list of LDAP/LDAPS server IP addresses or Hostnames", "examples": [["hostname", "63.1.3.5"]], "items": {"type": "string"}, "type": "array"}, "sso_ldap_type": {"default": "azure", "description": "if `idp_type`==`ldap`. enum: `azure`, `custom`, `google`, `okta`, `ping_identity`", "enum": ["azure", "custom", "google", "okta"], "type": "string"}, "sso_mxedge_proxy": {"additionalProperties": false, "description": "Mist Edge proxy settings for NAC SSO. If `idp_type`==`mxedge_proxy`, this requires `mist_nac` to be enabled on the mxcluster", "properties": {"acct_servers": {"$ref": "#/components/schemas/sso_mxedge_proxy_acct_servers", "description": "RADIUS accounting servers used by the Mist Edge SSO proxy"}, "auth_servers": {"$ref": "#/components/schemas/sso_mxedge_proxy_auth_servers", "description": "RADIUS authentication servers used by the Mist Edge SSO proxy"}, "mxcluster_id": {"description": "Mist Edge cluster identifier that provides the SSO proxy", "examples": ["572586b7-f97b-a22b-526c-8b97a3f609c4"], "format": "uuid", "type": "string"}, "operator_name": {"description": "Operator name as RADIUS attribute while proxying", "type": "string"}, "proxy_hosts": {"$ref": "#/components/schemas/sso_mxedge_proxy_proxy_hosts", "description": "Public hostnames or IP addresses that clients use to reach the Mist Edge SSO proxy"}, "ssids": {"$ref": "#/components/schemas/sso_mxedge_proxy_ssids", "description": "Eduroam SSIDs handled by the Mist Edge SSO proxy"}}, "type": "object"}, "sso_mxedge_proxy_acct_server": {"additionalProperties": false, "description": "RADIUS accounting server for the Mist Edge SSO proxy", "properties": {"host": {"description": "RADIUS accounting server hostname or IP address", "examples": ["1.2.3.4"], "type": "string"}, "port": {"default": 1813, "description": "UDP port for RADIUS accounting requests", "type": "integer"}, "secret": {"description": "Shared secret used with the RADIUS accounting server", "examples": ["testing123"], "format": "password", "type": "string"}}, "type": "object"}, "sso_mxedge_proxy_acct_servers": {"description": "RADIUS accounting servers used by the Mist Edge SSO proxy", "items": {"$ref": "#/components/schemas/sso_mxedge_proxy_acct_server"}, "type": "array"}, "sso_mxedge_proxy_auth_server": {"additionalProperties": false, "description": "RADIUS authentication server for the Mist Edge SSO proxy", "properties": {"host": {"description": "RADIUS authentication server hostname or IP address", "examples": ["1.2.3.4"], "type": "string"}, "port": {"default": 1812, "description": "UDP port for RADIUS authentication requests", "type": "integer"}, "require_message_authenticator": {"default": false, "description": "Whether to require Message-Authenticator in requests", "type": "boolean"}, "retry": {"default": 2, "description": "Number of retry attempts for RADIUS authentication requests", "type": "integer"}, "secret": {"description": "Shared secret used with the RADIUS authentication server", "examples": ["testing123"], "format": "password", "type": "string"}, "timeout": {"default": 5, "description": "Authentication request timeout, in seconds", "type": "integer"}}, "type": "object"}, "sso_mxedge_proxy_auth_servers": {"description": "RADIUS authentication servers used by the Mist Edge SSO proxy", "items": {"$ref": "#/components/schemas/sso_mxedge_proxy_auth_server"}, "type": "array"}, "sso_mxedge_proxy_proxy_hosts": {"description": "Public hostnames or IP addresses for the Mist Edge SSO proxy", "examples": [["mxedge1.corp.com", "63.1.3.5"]], "items": {"type": "string"}, "type": "array"}, "sso_mxedge_proxy_ssids": {"description": "Eduroam SSID names handled by the Mist Edge SSO proxy", "examples": [["eduroam_test, eduroam_main"]], "items": {"default": "eduroam", "type": "string"}, "type": "array"}, "sso_nameid_format": {"default": "email", "description": "if `idp_type`==`saml`. enum: `email`, `unspecified`", "enum": ["email", "unspecified"], "type": "string"}, "sso_oauth_type": {"default": "azure", "description": "if `idp_type`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `ping_identity`", "enum": ["azure", "azure-gov", "okta", "ping_identity"], "type": "string"}, "sso_openroaming": {"additionalProperties": false, "deprecated": true, "description": "Deprecated. OpenRoaming configuration is now expressed as top-level fields on the SSO object: `openroaming_ssids`, `openroaming_wba_client_cert`, and `openroaming_wba_client_key`.", "properties": {"ssids": {"$ref": "#/components/schemas/sso_openroaming_ssids", "description": "Network SSID names enabled for OpenRoaming SSO"}, "wba_cert": {"deprecated": true, "description": "Deprecated. Use `openroaming_wba_client_cert` instead.", "type": "string"}}, "type": "object"}, "sso_openroaming_ssids": {"description": "Network SSID names enabled for OpenRoaming SSO", "examples": [["ssid_name1", "ssid_name2"]], "items": {"type": "string"}, "type": "array"}, "sso_role_msp": {"description": "MSP SSO role definition", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this MSP SSO role was created, in epoch seconds"}, "for_site": {"description": "Whether this MSP SSO role is scoped for site-level access", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this MSP SSO role"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this MSP SSO role was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Owning MSP identifier for this SSO role"}, "name": {"description": "Display name of the MSP SSO role", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with this MSP SSO role, when applicable"}, "privileges": {"$ref": "#/components/schemas/sso_role_msp_privileges", "description": "Access privileges granted by this MSP SSO role"}}, "required": ["name", "privileges"], "type": "object"}, "sso_role_msp_privileges": {"description": "Access privileges granted by an MSP SSO role", "items": {"$ref": "#/components/schemas/privilege_msp"}, "minItems": 1, "type": "array", "uniqueItems": true}, "sso_role_org": {"description": "Organization SSO role definition", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this organization SSO role was created, in epoch seconds"}, "for_site": {"description": "Whether this organization SSO role is scoped for site-level access", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this organization SSO role"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this organization SSO role was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managing MSP identifier for this organization SSO role, when applicable"}, "name": {"description": "Display name of the organization SSO role", "type": "string"}, "org_id": {"description": "Owning organization identifier for this SSO role", "examples": ["60f6bfdb-2f45-4022-8e2a-e00d977953fe"], "format": "uuid", "type": "string"}, "privileges": {"$ref": "#/components/schemas/sso_role_org_privileges", "description": "Access privileges granted by this organization SSO role"}}, "required": ["name", "privileges"], "type": "object"}, "sso_role_org_privileges": {"description": "Access privileges granted by an organization SSO role", "items": {"$ref": "#/components/schemas/privilege_org"}, "minItems": 1, "type": "array", "uniqueItems": true}, "sso_roles_msp": {"description": "MSP SSO roles returned by the request", "items": {"$ref": "#/components/schemas/sso_role_msp"}, "type": "array"}, "sso_roles_org": {"description": "Organization SSO roles returned by the request", "items": {"$ref": "#/components/schemas/sso_role_org"}, "type": "array"}, "ssos": {"description": "List of SSO configurations", "items": {"$ref": "#/components/schemas/sso"}, "type": "array"}, "ssr_proxy": {"additionalProperties": false, "description": "SSR proxy configuration to talk to Mist", "properties": {"disabled": {"default": false, "description": "Whether the SSR proxy configuration is disabled", "examples": [true], "type": "boolean"}, "url": {"description": "Proxy URL that SSR devices use to reach Mist", "examples": ["https://proxy.corp.com:8080/"], "type": "string"}}, "type": "object"}, "ssr_upgrade": {"description": "Request to upgrade a single SSR device", "properties": {"channel": {"$ref": "#/components/schemas/ssr_upgrade_channel", "description": "Firmware release channel to use for the SSR upgrade"}, "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"}, "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: `alpha`, `beta`, `stable`", "enum": ["alpha", "beta", "stable"], "type": "string"}, "ssr_upgrade_multi": {"description": "Request to upgrade multiple SSR devices", "properties": {"channel": {"$ref": "#/components/schemas/ssr_upgrade_channel", "description": "Firmware release channel to use for the SSR upgrade"}, "device_ids": {"$ref": "#/components/schemas/ssr_upgrade_multi_device_ids", "description": "SSR device identifiers targeted by the upgrade"}, "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", "description": "Upgrade rollout strategy for the targeted SSR devices"}, "version": {"description": "128T firmware version to upgrade (e.g. 5.3.0-93)", "minLength": 1, "type": "string"}}, "required": ["device_ids"], "type": "object"}, "ssr_upgrade_multi_device_ids": {"description": "List of 128T device IDs to upgrade", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "ssr_upgrade_strategy": {"default": "big_bang", "description": "enum:\n * `big_bang`: upgrade all at once\n * `serial`: one at a time", "enum": ["big_bang", "serial"], "type": "string"}, "ssr_version": {"additionalProperties": false, "description": "SSR firmware version available for upgrade", "properties": {"default": {"description": "Whether this is the default SSR firmware version for its channel", "readOnly": true, "type": "boolean"}, "package": {"description": "Firmware package name for this SSR version", "readOnly": true, "type": "string"}, "tags": {"$ref": "#/components/schemas/strings", "description": "Metadata labels associated with this SSR firmware version"}, "version": {"description": "Firmware version string available for SSR upgrades", "readOnly": true, "type": "string"}}, "required": ["package", "version"], "type": "object"}, "ssr_version_channel": {"default": "stable", "description": "enum: `stable`, `beta`, `alpha`", "enum": ["alpha", "beta", "stable"], "type": "string"}, "ssr_versions": {"description": "SSR firmware versions available for upgrade", "items": {"$ref": "#/components/schemas/ssr_version"}, "type": "array", "uniqueItems": true}, "stat_device_status_filter": {"default": "all", "description": "enum: `all`, `connected`, `disconnected`", "enum": ["all", "connected", "disconnected"], "type": "string"}, "stats_ap": {"additionalProperties": false, "description": "AP runtime statistics, placement data, and inventory metadata", "properties": {"antenna_select": {"$ref": "#/components/schemas/antenna_select", "description": "Selectable antenna mode reported for the AP"}, "auto_placement": {"$ref": "#/components/schemas/stats_ap_auto_placement", "description": "Auto placement result and status for the AP"}, "auto_upgrade_stat": {"$ref": "#/components/schemas/stats_ap_auto_upgrade", "description": "Automatic firmware upgrade status for the AP"}, "ble_stat": {"$ref": "#/components/schemas/stats_ap_ble", "description": "BLE radio and beacon statistics reported by the AP"}, "cert_expiry": {"description": "Certificate expiry timestamp for the AP, in epoch seconds", "examples": [1534534392], "readOnly": true, "type": ["number", "null"]}, "config_reverted": {"description": "Whether the AP configuration was reverted by the device", "readOnly": true, "type": ["boolean", "null"]}, "cpu_system": {"description": "CPU system utilization reported by the AP", "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "cpu_user": {"description": "CPU user utilization reported by the AP", "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "cpu_util": {"description": "Total CPU utilization reported by the AP", "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the AP record was created, in epoch seconds"}, "deviceprofile_id": {"description": "Device profile identifier applied to the AP, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "env_stat": {"$ref": "#/components/schemas/stats_ap_env_stat", "description": "Environmental sensor readings reported by the AP"}, "esl_stat": {"$ref": "#/components/schemas/stats_ap_esl_stat", "description": "Electronic shelf label dongle status reported by the AP"}, "evpntopo_id": {"description": "EVPN topology identifier associated with the AP, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "expiring_certs": {"$ref": "#/components/schemas/stats_ap_expiring_certs", "description": "Certificates on the AP that are expiring within 30 days"}, "ext_ip": {"description": "Public IP address observed for the AP", "examples": ["73.92.124.103"], "readOnly": true, "type": ["string", "null"]}, "fwupdate": {"$ref": "#/components/schemas/fwupdate_stat", "description": "Firmware update status for the AP"}, "gps_stat": {"$ref": "#/components/schemas/stats_ap_gps_stat", "description": "GPS location data reported for the AP"}, "hw_rev": {"description": "Hardware revision reported by the AP", "readOnly": true, "type": ["string", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the AP"}, "inactive_wired_vlans": {"$ref": "#/components/schemas/integers", "description": "Wired VLAN identifiers currently inactive on the AP"}, "iot_stat": {"$ref": "#/components/schemas/stats_ap_iot_stat", "description": "IoT input statistics reported by the AP"}, "ip": {"description": "Management IP address currently reported by the AP", "examples": ["10.2.9.159"], "readOnly": true, "type": ["string", "null"]}, "ip_config": {"$ref": "#/components/schemas/ap_ip_config", "description": "IP configuration applied to the AP management interface"}, "ip_stat": {"$ref": "#/components/schemas/ip_stat", "description": "Read-only IP addressing status reported by the AP"}, "l2tp_stat": {"additionalProperties": {"$ref": "#/components/schemas/stats_ap_l2tp_stat"}, "description": "L2TP tunnel status (key is the wxtunnel_id)", "type": "object"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the AP was last seen by Mist, in epoch seconds"}, "last_trouble": {"$ref": "#/components/schemas/last_trouble", "description": "Most recent AP trouble indicator and timestamp"}, "led": {"$ref": "#/components/schemas/ap_led", "description": "Light indicator state for the AP"}, "lldp_stat": {"$ref": "#/components/schemas/stats_ap_lldp_stat", "description": "Primary LLDP neighbor and power negotiation details for the AP"}, "lldp_stats": {"$ref": "#/components/schemas/stats_ap_lldp_stats", "description": "Per-port LLDP neighbor and power negotiation details for the AP"}, "locating": {"description": "Whether AP locating mode is currently active", "examples": [false], "readOnly": true, "type": ["boolean", "null"]}, "locked": {"description": "Whether this AP is considered locked (placement / orientation has been vetted)", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}, "mac": {"description": "AP MAC address reported by Mist", "examples": ["5c5b35000010"], "readOnly": true, "type": ["string", "null"]}, "map_id": {"description": "Map identifier where the AP is placed, when available", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "mem_total_kb": {"description": "Total memory available on the AP, in kilobytes", "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "mem_used_kb": {"description": "Memory currently used on the AP, in kilobytes", "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "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", "description": "Mesh uplink status for the AP"}, "model": {"description": "AP model identifier reported by Mist", "examples": ["AP200"], "readOnly": true, "type": ["string", "null"]}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the AP record was last modified, in epoch seconds"}, "mount": {"description": "Orientation configured for the AP mount", "examples": ["faceup"], "readOnly": true, "type": ["string", "null"]}, "name": {"description": "Display name of the AP", "examples": ["conference room"], "readOnly": true, "type": ["string", "null"]}, "notes": {"description": "Free-form notes configured on the AP record", "readOnly": true, "type": ["string", "null"]}, "num_clients": {"description": "How many wireless clients are currently connected", "readOnly": true, "type": ["integer", "null"]}, "num_wlans": {"description": "How many WLANs are applied to the device", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier that owns the AP"}, "port_stat": {"additionalProperties": {"$ref": "#/components/schemas/stats_ap_port_stat"}, "description": "Property key is the port name (e.g. `eth0`)", "readOnly": true, "type": ["object", "null"]}, "power_budget": {"description": "In mW, surplus if positive or deficit if negative", "examples": [1000], "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "power_constrained": {"description": "Whether the AP is operating with insufficient power", "examples": [false], "readOnly": true, "type": ["boolean", "null"]}, "power_opmode": {"description": "Operating mode used while AP power is constrained", "examples": ["[20] 6GHz(2x2) 5GHz(4x4) 2.4GHz(2x2)."], "readOnly": true, "type": ["string", "null"]}, "power_src": {"description": "DC Input / PoE 802.3at / PoE 802.3af / LLDP / ? (unknown)", "examples": ["PoE 802.3af"], "readOnly": true, "type": ["string", "null"]}, "radio_config": {"$ref": "#/components/schemas/stats_ap_radio_config", "description": "Radio configuration currently applied to the AP"}, "radio_stat": {"$ref": "#/components/schemas/stats_ap_radio_stat", "description": "Radio statistics reported by AP bands"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Receive throughput for AP traffic, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received by the AP since connection"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received by the AP since connection"}, "serial": {"description": "Device serial number for the AP", "examples": ["FXLH2015170017"], "readOnly": true, "type": ["string", "null"]}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier where the AP is assigned"}, "status": {"description": "Connection status reported for the AP", "readOnly": true, "type": ["string", "null"]}, "switch_redundancy": {"$ref": "#/components/schemas/stats_ap_switch_redundancy", "description": "Switch redundancy status reported for the AP"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Transmit throughput for AP traffic, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted by the AP since connection"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted by the AP since connection"}, "type": {"$ref": "#/components/schemas/const_device_type_ap", "description": "Device type for this statistics record"}, "uptime": {"description": "How long, in seconds, has the device been up (or rebooted)", "examples": [13500], "readOnly": true, "type": ["number", "null"]}, "usb_stat": {"$ref": "#/components/schemas/stats_ap_usb_stat", "description": "USB peripheral status reported by the AP"}, "version": {"description": "Firmware version running on the AP", "examples": ["0.14.12345"], "readOnly": true, "type": ["string", "null"]}, "x": {"description": "Map X coordinate of the AP placement, in pixels", "examples": [53.5], "format": "double", "readOnly": true, "type": ["number", "null"]}, "y": {"description": "Map Y coordinate of the AP placement, in pixels", "examples": [173.1], "format": "double", "readOnly": true, "type": ["number", "null"]}}, "required": ["type"], "title": "stats_ap", "type": "object"}, "stats_ap_auto_placement": {"additionalProperties": false, "description": "Auto placement result and status for an AP", "properties": {"info": {"$ref": "#/components/schemas/stats_ap_auto_placement_info", "description": "Additional diagnostics for the AP auto placement result"}, "recommended_anchor": {"description": "Flag to represent if AP is recommended as an anchor by auto placement service", "type": "boolean"}, "status": {"description": "Current auto placement status for the AP", "examples": ["localized"], "type": "string"}, "status_detail": {"description": "Additional info about placement status", "examples": ["localized"], "type": "string"}, "x": {"description": "Auto-placed X coordinate, in pixels", "examples": [53.5], "format": "double", "type": "number"}, "x_m": {"description": "Auto-placed X coordinate, in meters", "examples": [5.35], "format": "double", "type": "number"}, "y": {"description": "Auto-placed Y coordinate, in pixels", "examples": [173.1], "format": "double", "type": "number"}, "y_m": {"description": "Auto-placed Y coordinate, in meters", "examples": [17.31], "format": "double", "type": "number"}}, "type": "object"}, "stats_ap_auto_placement_info": {"additionalProperties": false, "description": "Additional diagnostics for AP auto placement", "properties": {"cluster_number": {"description": "All APs sharing a given cluster number can be placed relative to each other", "examples": [0], "type": "integer"}, "orientation_stats": {"description": "The orientation of an AP", "examples": [0], "type": "integer"}, "probability_surface": {"$ref": "#/components/schemas/stats_ap_auto_placement_info_probability_surface", "description": "Uncertainty area for the AP auto placement result"}}, "type": "object"}, "stats_ap_auto_placement_info_probability_surface": {"additionalProperties": false, "description": "Circular uncertainty area for an AP auto placement result", "properties": {"radius": {"description": "The RADIUS representing placement uncertainty, measured in pixels", "examples": [2.1], "type": "number"}, "radius_m": {"description": "The RADIUS representing placement uncertainty, measured in meters", "type": "number"}, "x": {"description": "Potential placement center X coordinate, in pixels", "examples": [17], "format": "double", "type": "number"}}, "type": "object"}, "stats_ap_auto_upgrade": {"additionalProperties": false, "description": "Auto-upgrade status for an AP", "properties": {"lastcheck": {"description": "Time when the AP last checked for auto-upgrade, in epoch seconds", "examples": [1720594762], "format": "int64", "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "stats_ap_ble": {"additionalProperties": false, "description": "BLE beacon and traffic statistics reported by an AP", "properties": {"beacon_enabled": {"description": "Whether Mist BLE beacon transmission is enabled", "readOnly": true, "type": ["boolean", "null"]}, "beacon_rate": {"description": "Mist BLE beacon transmit rate, in beacons per second", "examples": [3], "readOnly": true, "type": ["integer", "null"]}, "eddystone_uid_enabled": {"description": "Whether Eddystone-UID beacon transmission is enabled", "examples": [false], "readOnly": true, "type": ["boolean", "null"]}, "eddystone_uid_freq_msec": {"description": "Interval for Eddystone-UID advertisements, in milliseconds", "examples": [2000], "readOnly": true, "type": ["integer", "null"]}, "eddystone_uid_instance": {"description": "Eddystone-UID instance value broadcast by the AP", "examples": ["5c5b35000001"], "readOnly": true, "type": ["string", "null"]}, "eddystone_uid_namespace": {"description": "Eddystone-UID namespace value broadcast by the AP", "examples": ["2818e3868dec25629ede"], "readOnly": true, "type": ["string", "null"]}, "eddystone_url_enabled": {"description": "Whether Eddystone-URL beacon transmission is enabled", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}, "eddystone_url_freq_msec": {"description": "Interval for Eddystone-URL advertisements, in milliseconds", "examples": [100], "readOnly": true, "type": ["integer", "null"]}, "eddystone_url_url": {"description": "URL broadcast by the Eddystone-URL beacon", "examples": ["https://www.abc.com"], "readOnly": true, "type": ["string", "null"]}, "ibeacon_enabled": {"description": "Whether iBeacon transmission is enabled", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}, "ibeacon_freq_msec": {"description": "Interval for iBeacon advertisements, in milliseconds", "examples": [2000], "readOnly": true, "type": ["integer", "null"]}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "Major value broadcast in iBeacon advertisements"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "Minor value broadcast in iBeacon advertisements"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "UUID value broadcast in iBeacon advertisements"}, "major": {"description": "Reported iBeacon major value for BLE statistics", "examples": [12345], "readOnly": true, "type": ["integer", "null"]}, "minors": {"$ref": "#/components/schemas/integers", "description": "Reported iBeacon minor values for BLE statistics"}, "power": {"description": "BLE transmit power setting reported by the AP", "examples": [10], "readOnly": true, "type": ["integer", "null"]}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "BLE bytes received by the AP"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "BLE packets received by the AP"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "BLE bytes transmitted by the AP"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "BLE packets transmitted by the AP"}, "tx_resets": {"description": "Resets due to tx hung", "examples": [0], "readOnly": true, "type": ["integer", "null"]}, "uuid": {"description": "Beacon UUID reported by BLE statistics", "examples": ["ada72f8f-1643-e5c6-94db-f2a5636f1a64"], "format": "uuid", "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_ap_env_stat": {"additionalProperties": false, "description": "Device environment, including CPU temperature, Ambient temperature, Humidity, Attitude, Pressure, Accelerometers, Magnetometers and vCore Voltage", "properties": {"accel_x": {"description": "X-axis accelerometer reading reported by the AP", "examples": [0], "format": "float", "readOnly": true, "type": ["number", "null"]}, "accel_y": {"description": "Y-axis accelerometer reading reported by the AP", "examples": [0.032], "format": "float", "readOnly": true, "type": ["number", "null"]}, "accel_z": {"description": "Z-axis accelerometer reading reported by the AP", "examples": [-1.088], "format": "float", "readOnly": true, "type": ["number", "null"]}, "ambient_temp": {"description": "Temperature reading from the AP ambient sensor", "examples": [43], "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "attitude": {"description": "Device attitude or orientation reading reported by the AP", "examples": [0], "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "cpu_temp": {"description": "Temperature reading from the AP CPU sensor", "examples": [61], "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "humidity": {"description": "Relative humidity sensor reading reported by the AP", "examples": [9], "format": "int32", "readOnly": true, "type": ["integer", "null"]}, "magne_x": {"description": "X-axis magnetometer reading reported by the AP", "examples": [0], "format": "float", "readOnly": true, "type": ["number", "null"]}, "magne_y": {"description": "Y-axis magnetometer reading reported by the AP", "examples": [0], "format": "float", "readOnly": true, "type": ["number", "null"]}, "magne_z": {"description": "Z-axis magnetometer reading reported by the AP", "examples": [0], "format": "float", "readOnly": true, "type": ["number", "null"]}, "pressure": {"description": "Barometric pressure sensor reading reported by the AP", "examples": [968], "format": "float", "readOnly": true, "type": ["number", "null"]}, "vcore_voltage": {"description": "Core voltage sensor reading reported by the AP", "examples": [0], "format": "int32", "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "stats_ap_esl_stat": {"additionalProperties": false, "description": "Electronic shelf label dongle status reported by an AP", "properties": {"channel": {"description": "Radio channel used by the ESL dongle", "readOnly": true, "type": ["integer", "null"]}, "connected": {"description": "Whether the ESL dongle is connected", "readOnly": true, "type": ["boolean", "null"]}, "ip": {"description": "Network IP address of Hanshow and SoluM dongles", "examples": ["172.16.2.249"], "readOnly": true, "type": ["string", "null"]}, "mac": {"description": "Dongle MAC address for Hanshow and SoluM dongles", "examples": ["98-6d-35-79-76-3b"], "readOnly": true, "type": ["string", "null"]}, "product_id": {"description": "Product ID of Hanshow and SoluM dongles", "examples": ["A4A2"], "readOnly": true, "type": ["string", "null"]}, "type": {"description": "ESL dongle type reported by the AP", "examples": ["imagotag"], "readOnly": true, "type": ["string", "null"]}, "up": {"description": "Whether the ESL dongle is operational", "readOnly": true, "type": ["boolean", "null"]}, "vendor_id": {"description": "Vendor ID of Hanshow and SoluM dongles", "examples": ["0525"], "readOnly": true, "type": ["string", "null"]}}, "readOnly": true, "type": ["object", "null"]}, "stats_ap_expiring_certs": {"additionalProperties": {"description": "Expiry time in epoch seconds", "type": "integer"}, "description": "Map of certificate serial numbers to their expiry timestamps (in epoch) for certificates expiring within 30 days. Property key is the certificate serial number", "type": "object"}, "stats_ap_gps_stat": {"additionalProperties": false, "description": "GPS location data reported by an AP", "properties": {"accuracy": {"description": "The estimated accuracy or accuracy of the GPS coordinates, measured in meters.", "examples": [12.5], "type": "number"}, "altitude": {"description": "The elevation of the AP above sea level, measured in meters.", "examples": [99.939], "type": "number"}, "latitude": {"description": "The geographic latitude of the AP, measured in degrees.", "examples": [37.29548], "type": "number"}, "longitude": {"description": "The geographic longitude of the AP, measured in degrees.", "examples": [-122.03304], "type": "number"}, "src": {"$ref": "#/components/schemas/stats_ap_gps_stat_src", "description": "Source of the GPS location data"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the GPS location data was observed, in epoch seconds"}}, "type": "object"}, "stats_ap_gps_stat_src": {"description": "The origin of the GPS data. enum: `gps`: from this device GPS estimates, `other_ap` from neighboring device GPS estimates. Note: API responses may return `other_aps` which should be treated as `other_ap`", "enum": ["gps", "other_ap", "other_aps"], "type": "string"}, "stats_ap_iot_stat": {"additionalProperties": {"$ref": "#/components/schemas/stats_ap_iot_stat_additional_properties"}, "description": "IoT input statistics reported by an AP", "examples": [{"DI2": {"value": 0}}], "type": "object"}, "stats_ap_iot_stat_additional_properties": {"additionalProperties": false, "description": "IoT input statistic value", "properties": {"value": {"description": "Reported value for this IoT input", "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "stats_ap_l2tp_stat": {"additionalProperties": false, "description": "L2TP tunnel status reported by an AP", "properties": {"sessions": {"$ref": "#/components/schemas/stats_ap_l2tp_stat_sessions", "description": "L2TP session entries for this tunnel"}, "state": {"$ref": "#/components/schemas/l2tp_state", "description": "L2TP tunnel state reported by the AP"}, "uptime": {"description": "Tunnel uptime, in seconds", "examples": [135], "readOnly": true, "type": ["integer", "null"]}, "wxtunnel_id": {"description": "Identifier of the associated WxLAN tunnel", "examples": ["7dae216d-7c98-a51b-e068-dd7d477b7216"], "format": "uuid", "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_ap_l2tp_stat_session": {"additionalProperties": false, "description": "L2TP tunnel session reported by an AP", "properties": {"local_sid": {"description": "Local L2TP session identifier for this tunnel session", "examples": [31], "readOnly": true, "type": ["integer", "null"]}, "remote_id": {"description": "User-configured remote identifier for the WxLAN tunnel", "examples": ["vpn1"], "readOnly": true, "type": ["string", "null"]}, "remote_sid": {"description": "Remote L2TP session identifier for this tunnel session", "examples": [13], "readOnly": true, "type": ["integer", "null"]}, "state": {"$ref": "#/components/schemas/l2tp_state", "description": "L2TP session state reported by the AP"}}, "type": "object"}, "stats_ap_l2tp_stat_sessions": {"description": "L2TP tunnel sessions reported by an AP", "items": {"$ref": "#/components/schemas/stats_ap_l2tp_stat_session"}, "type": "array"}, "stats_ap_lldp_stat": {"additionalProperties": false, "description": "LLDP neighbor information and power negotiations. For backward compatibility, when multiple neighbors exist, only information from the first neighbor is displayed.", "properties": {"chassis_id": {"description": "LLDP neighbor chassis identifier", "readOnly": true, "type": ["string", "null"]}, "lldp_med_supported": {"description": "Whether it support LLDP-MED", "readOnly": true, "type": ["boolean", "null"]}, "mgmt_addr": {"description": "Management IP address of the switch", "readOnly": true, "type": ["string", "null"]}, "mgmt_addrs": {"$ref": "#/components/schemas/stats_ap_lldp_stat_mgmt_addrs", "description": "Management IP addresses advertised by the LLDP neighbor"}, "port_desc": {"description": "Port description, e.g. \u201c2/20\u201d, \u201cPort 2 on Switch0\u201d", "examples": ["2/20"], "readOnly": true, "type": ["string", "null"]}, "port_id": {"description": "LLDP neighbor port identifier", "examples": ["ge-0/0/4"], "readOnly": true, "type": ["string", "null"]}, "power_allocated": {"description": "In mW, power allocated by PSE", "readOnly": true, "type": ["number", "null"]}, "power_avail": {"description": "In mW, total Power Avail at AP from pwr source", "type": "integer"}, "power_budget": {"description": "In mW, surplus if positive or deficit if negative", "type": "integer"}, "power_constrained": {"description": "Whether power is insufficient", "type": "boolean"}, "power_draw": {"description": "In mW, total power needed by PD", "readOnly": true, "type": ["number", "null"]}, "power_needed": {"description": "In mW, total Power needed incl Peripherals", "type": "integer"}, "power_opmode": {"description": "Power operating mode negotiated through LLDP", "type": "string"}, "power_request_count": {"description": "Number of negotiations, if it keeps increasing, we don\u2019 t have a stable power", "readOnly": true, "type": ["integer", "null"]}, "power_requested": {"description": "In mW, power requested by PD", "readOnly": true, "type": ["number", "null"]}, "power_src": {"$ref": "#/components/schemas/stats_ap_lldp_stat_power_src", "description": "Primary AP power source reported through LLDP"}, "power_srcs": {"$ref": "#/components/schemas/stats_ap_lldp_stat_power_srcs", "description": "AP power sources reported through LLDP"}, "system_desc": {"description": "Description provided by switch", "examples": ["uniper Networks, Inc. ex4300-48t internet router, kernel JUNOS 20.4R3-S7.2, Build date: 2023-04-21 19:47:18 UTC Copyright (c) 1996-2023 Juniper Networks, Inc."], "readOnly": true, "type": ["string", "null"]}, "system_name": {"description": "Name of the switch", "examples": ["Core-AE23"], "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_ap_lldp_stat_mgmt_addrs": {"description": "Management IP addresses advertised by an LLDP neighbor", "items": {"type": "string"}, "type": "array"}, "stats_ap_lldp_stat_power_src": {"description": "Single power source (DC Input / PoE 802.3at / PoE 802.3af / PoE 802.3bt / MULTI-PD / LLDP / ? (unknown)).", "type": "string"}, "stats_ap_lldp_stat_power_srcs": {"description": "Power sources reported through LLDP for an AP", "items": {"$ref": "#/components/schemas/stats_ap_lldp_stat_power_src"}, "type": "array"}, "stats_ap_lldp_stats": {"additionalProperties": {"$ref": "#/components/schemas/stats_ap_lldp_stat"}, "description": "Property key is the port name (e.g. \"eth0\", \"eth1\", ...). Map of ethernet ports to their respective LLDP neighbor information and power negotiations. Only present when multiple neighbors exist.", "type": "object"}, "stats_ap_port_stat": {"additionalProperties": false, "description": "Ethernet port statistics reported by an AP", "properties": {"full_duplex": {"description": "Whether the AP Ethernet port is operating in full-duplex mode", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Bytes received on the AP Ethernet port"}, "rx_errors": {"description": "Receive error count reported for the AP Ethernet port", "examples": [0], "readOnly": true, "type": ["integer", "null"]}, "rx_peak_bps": {"description": "Peak receive throughput on the AP Ethernet port, in bits per second", "examples": [22185], "readOnly": true, "type": ["integer", "null"]}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Packets received on the AP Ethernet port"}, "speed": {"description": "Negotiated Ethernet link speed for the AP port, in Mbps", "examples": [1000], "readOnly": true, "type": ["integer", "null"]}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Bytes transmitted on the AP Ethernet port"}, "tx_peak_bps": {"description": "Peak transmit throughput on the AP Ethernet port, in bits per second", "examples": [43922], "readOnly": true, "type": ["integer", "null"]}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Packets transmitted on the AP Ethernet port"}, "up": {"description": "Whether the AP Ethernet port link is up", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}}, "type": "object"}, "stats_ap_radio_config": {"additionalProperties": false, "description": "Radio configuration reported by an AP", "properties": {"band_24": {"$ref": "#/components/schemas/stats_ap_radio_config_band", "description": "2.4 GHz radio configuration reported by the AP"}, "band_24_usage": {"description": "Current operating use for the 2.4 GHz radio", "examples": ["5"], "readOnly": true, "type": ["string", "null"]}, "band_5": {"$ref": "#/components/schemas/stats_ap_radio_config_band", "description": "5 GHz radio configuration reported by the AP"}, "band_6": {"$ref": "#/components/schemas/stats_ap_radio_config_band", "description": "6 GHz radio configuration reported by the AP"}, "scanning_enabled": {"description": "Whether radio scanning is enabled on the AP", "type": "boolean"}}, "type": "object"}, "stats_ap_radio_config_band": {"additionalProperties": false, "description": "Per-band radio configuration reported by an AP", "properties": {"allow_rrm_disable": {"description": "Whether RRM disablement is allowed for this radio band", "readOnly": true, "type": ["boolean", "null"]}, "bandwidth": {"description": "Channel bandwidth configured for this radio band", "examples": [20], "readOnly": true, "type": ["number", "null"]}, "channel": {"description": "Operating channel configured for this radio band", "examples": [1], "type": "integer"}, "disabled": {"description": "Whether this radio band is disabled", "readOnly": true, "type": ["boolean", "null"]}, "dynamic_chaining_enabled": {"description": "Whether dynamic chaining is enabled for this radio band", "examples": [false], "readOnly": true, "type": ["boolean", "null"]}, "power": {"description": "Transmit power configured for this radio band", "examples": [10], "readOnly": true, "type": ["number", "null"]}, "power_max": {"description": "Maximum transmit power allowed for this radio band", "examples": [10], "readOnly": true, "type": ["number", "null"]}, "power_min": {"description": "Minimum transmit power allowed for this radio band", "examples": [10], "readOnly": true, "type": ["number", "null"]}, "rx_chain": {"description": "Number of receive chains enabled for this radio band", "examples": [4], "readOnly": true, "type": ["integer", "null"]}, "tx_chain": {"description": "Number of transmit chains enabled for this radio band", "examples": [4], "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "stats_ap_radio_stat": {"additionalProperties": false, "description": "Per-band radio statistics reported by an AP", "properties": {"band_24": {"$ref": "#/components/schemas/ap_radio_stat", "description": "2.4 GHz radio statistics reported by the AP"}, "band_5": {"$ref": "#/components/schemas/ap_radio_stat", "description": "5 GHz radio statistics reported by the AP"}, "band_6": {"$ref": "#/components/schemas/ap_radio_stat", "description": "6 GHz radio statistics reported by the AP"}}, "type": "object"}, "stats_ap_switch_redundancy": {"additionalProperties": false, "description": "Switch redundancy status reported by an AP", "properties": {"num_redundant_aps": {"description": "Number of redundant APs available for switch redundancy", "examples": [1], "readOnly": true, "type": ["integer", "null"]}}, "type": "object"}, "stats_ap_usb_stat": {"additionalProperties": false, "description": "USB peripheral status reported by an AP", "properties": {"channel": {"description": "Radio channel used by the USB peripheral", "examples": [3], "readOnly": true, "type": ["integer", "null"]}, "connected": {"description": "Whether the USB peripheral is connected", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}, "last_activity": {"description": "Time of the last USB peripheral activity, in epoch seconds", "examples": [1586873254], "readOnly": true, "type": ["integer", "null"]}, "type": {"description": "USB peripheral type reported by the AP", "examples": ["imagotag"], "readOnly": true, "type": ["string", "null"]}, "up": {"description": "Whether the USB peripheral is operational", "examples": [true], "readOnly": true, "type": ["boolean", "null"]}}, "type": "object"}, "stats_asset": {"additionalProperties": false, "description": "BLE asset location and advertisement statistics", "properties": {"_ttl": {"description": "Time-to-live in seconds; how long this asset data is valid in cache", "type": "integer"}, "battery_percent": {"description": "Estimated battery level (1\u2013100%); currently supported for Aruba/HPE asset tags", "examples": [50], "type": "integer"}, "battery_voltage": {"description": "Battery voltage, in mV", "examples": [2970], "type": "number"}, "beam": {"description": "BLE beam number where the asset was observed", "examples": [6], "type": "integer"}, "by": {"description": "Observation source type for the asset statistic", "examples": ["asset"], "type": "string"}, "device_id": {"description": "Device ID of the loudest AP", "examples": ["00000000-0000-0000-1000-5c5b35000001"], "format": "uuid", "readOnly": true, "type": "string"}, "device_name": {"description": "Display name of the loudest AP observing the asset", "examples": ["a"], "type": "string"}, "duration": {"description": "Length of the current asset observation, in seconds", "examples": [120], "type": "integer"}, "eddystone_uid_instance": {"description": "Eddystone-UID instance value advertised by the asset", "examples": ["5c5b35000001"], "type": "string"}, "eddystone_uid_namespace": {"description": "Eddystone-UID namespace value advertised by the asset", "examples": ["2818e3868dec25629ede"], "type": "string"}, "eddystone_url_url": {"description": "URL value advertised by the asset through Eddystone-URL", "examples": ["https://www.abc.com"], "type": "string"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value advertised by the asset"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value advertised by the asset"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID advertised by the asset"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the asset statistic"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the BLE asset was last observed, in epoch seconds"}, "mac": {"description": "Bluetooth MAC address for the asset", "examples": ["6fa474be7ae5"], "type": "string"}, "manufacture": {"description": "Vendor name resolved from the BLE manufacturer company ID", "type": "string"}, "map_id": {"description": "Map where the device belongs to", "examples": ["c45be59f-854d-4ef7-b782-dcd6309c84a9"], "format": "uuid", "type": "string"}, "mfg_company_id": {"description": "BLE manufacturer company ID from advertisement", "examples": [935], "type": "integer"}, "mfg_data": {"description": "Manufacturer-specific data (hex encoded)", "examples": ["648520a1020000"], "type": "string"}, "name": {"description": "Display label for the BLE asset", "examples": ["6fa474be7ae5"], "type": "string"}, "rssi": {"description": "Signal strength (RSSI) of the loudest AP in dBm", "examples": [-60], "type": "integer"}, "rssizones": {"$ref": "#/components/schemas/asset_rssi_zones", "description": "RSSI zones currently containing this asset"}, "service_packets": {"$ref": "#/components/schemas/stats_asset_service_packets", "description": "Service data advertisements observed from this asset"}, "temperature": {"description": "Reported temperature value from the BLE asset", "examples": [23], "type": "number"}, "x": {"description": "Map X coordinate of the asset location, in pixels", "examples": [280.19918140310193], "format": "double", "type": "number"}, "y": {"description": "Map Y coordinate of the asset location, in pixels", "examples": [420.2987721046529], "format": "double", "type": "number"}, "zones": {"$ref": "#/components/schemas/asset_zones", "description": "Map zones currently containing this asset"}}, "required": ["mac"], "type": "object"}, "stats_asset_service_packet": {"additionalProperties": false, "description": "Service data advertisement from a BLE asset", "properties": {"data": {"description": "Service data payload (hex encoded)", "examples": ["640"], "type": "string"}, "last_rx_time": {"description": "Unix timestamp when this service data was last received", "examples": [1645855923], "type": "integer"}, "rx_cnt": {"description": "Total number of times this service data was received", "examples": [213065], "type": "integer"}, "uuid": {"description": "BLE service UUID advertised by the asset service packet", "examples": ["00003e10-0000-1000-8000-00805f9b34fb"], "type": "string"}}, "type": "object"}, "stats_asset_service_packets": {"description": "List of all service data advertisements (maximum length of 10)", "items": {"$ref": "#/components/schemas/stats_asset_service_packet"}, "maxItems": 10, "type": "array"}, "stats_assets": {"description": "Asset statistics returned by the request", "items": {"$ref": "#/components/schemas/stats_asset"}, "type": "array"}, "stats_beacon": {"additionalProperties": false, "description": "BLE beacon runtime statistics and placement data", "properties": {"battery_voltage": {"description": "Battery voltage, in mV", "type": "number"}, "eddystone_instance": {"description": "Eddystone-UID instance value advertised by the beacon", "type": "string"}, "eddystone_namespace": {"description": "Eddystone-UID namespace value advertised by the beacon", "type": "string"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the beacon was last observed, in epoch seconds"}, "mac": {"description": "Beacon MAC address observed by Mist", "type": "string"}, "map_id": {"description": "Map identifier where the beacon is placed", "format": "uuid", "type": "string"}, "name": {"description": "Display name of the beacon", "type": "string"}, "power": {"description": "Transmit power configured for the beacon", "type": "integer"}, "type": {"description": "Advertisement protocol type used by the beacon, such as iBeacon or Eddystone", "type": "string"}, "x": {"description": "Map X coordinate of the beacon placement, in pixels", "format": "double", "type": "number"}, "y": {"description": "Map Y coordinate of the beacon placement, in pixels", "format": "double", "type": "number"}}, "required": ["mac", "name", "type", "power", "map_id", "x", "y"], "type": "object"}, "stats_beacons": {"description": "BLE beacon statistics returned by the request", "items": {"$ref": "#/components/schemas/stats_beacon"}, "type": "array", "uniqueItems": true}, "stats_call": {"additionalProperties": false, "description": "Statistics record for a detected collaboration call, such as Zoom or Teams", "properties": {"app": {"description": "Third-party collaboration application that reported the call statistics", "type": "string"}, "audio_quality": {"description": "Quality score reported for the call audio stream", "type": "integer"}, "end_time": {"description": "Time when the call ended, in epoch seconds", "type": "integer"}, "mac": {"description": "Client MAC address associated with the call statistics record", "type": "string"}, "meeting_id": {"description": "Collaboration meeting identifier reported for the call", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the call statistics record"}, "rating": {"description": "Overall call rating reported by the collaboration application, when available", "type": "integer"}, "screen_share_quality": {"description": "Quality score reported for screen sharing during the call", "type": "integer"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for the call statistics record"}, "start_time": {"description": "Time when the call started, in epoch seconds", "type": "integer"}, "video_quality": {"description": "Quality score reported for the call video stream", "type": "integer"}}, "type": "object"}, "stats_calls": {"description": "Collaboration call statistics returned by search", "items": {"$ref": "#/components/schemas/stats_call"}, "type": "array"}, "stats_client": {"description": "Client statistics record for a wireless or wired client", "oneOf": [{"$ref": "#/components/schemas/stats_wireless_client"}, {"$ref": "#/components/schemas/stats_wired_client"}]}, "stats_client_any_of": {"description": "Client statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_client"}, "type": "array"}, "stats_cluster_config": {"additionalProperties": false, "description": "High-availability cluster configuration and health reported by a gateway", "properties": {"configuration": {"description": "Configured high-availability mode for the gateway cluster, such as active-active", "type": "string"}, "control_link_info": {"$ref": "#/components/schemas/stats_cluster_config_control_link_info", "description": "Control link interface and operational state for the gateway cluster"}, "ethernet_connection": {"$ref": "#/components/schemas/stats_cluster_config_ethernet_connection", "description": "Ethernet interface connection states used by the gateway cluster"}, "fabric_link_info": {"$ref": "#/components/schemas/stats_cluster_config_fabric_link_info", "description": "Fabric link state and data-plane notification details for the gateway cluster"}, "last_status_change_reason": {"description": "Reason reported for the most recent gateway cluster status change", "type": "string"}, "operational": {"description": "Current operational high-availability mode of the gateway cluster", "type": "string"}, "primary_node_health": {"description": "Health state reported for the primary gateway cluster node", "type": "string"}, "redundancy_group_information": {"$ref": "#/components/schemas/stats_cluster_config_redundancy_group_info", "description": "Redundancy group monitoring state reported by the gateway cluster"}, "secondary_node_health": {"description": "Health state reported for the secondary gateway cluster node", "type": "string"}, "status": {"description": "Overall health status reported for the gateway cluster", "type": "string"}}, "type": "object"}, "stats_cluster_config_control_link_info": {"additionalProperties": false, "description": "Control link status details for a gateway cluster", "properties": {"name": {"description": "Control link interface name reported by the gateway cluster", "type": "string"}, "status": {"description": "Operational state reported for the control link", "type": "string"}}, "type": "object"}, "stats_cluster_config_ethernet_connection": {"description": "Ethernet interface connection states for a gateway cluster", "items": {"$ref": "#/components/schemas/stats_cluster_config_ethernet_connection_item"}, "type": "array"}, "stats_cluster_config_ethernet_connection_item": {"additionalProperties": false, "description": "Ethernet interface connection state for a gateway cluster member", "properties": {"name": {"description": "Ethernet interface name reported for cluster connectivity", "type": "string"}, "status": {"description": "Operational state reported for the Ethernet interface", "type": "string"}}, "type": "object"}, "stats_cluster_config_fabric_link_info": {"additionalProperties": false, "description": "Fabric link status details for a gateway cluster", "properties": {"DataPlaneNotifiedStatus": {"description": "Fabric link data-plane notification status reported by the gateway", "type": "string"}, "Interface": {"$ref": "#/components/schemas/strings", "description": "Fabric link interfaces reported for the gateway cluster"}, "InternalStatus": {"description": "Gateway-reported internal status for the fabric link", "type": "string"}, "State": {"description": "Administrative state of the fabric link", "type": "string"}, "Status": {"description": "Operational status of the fabric link", "type": "string"}}, "type": "object"}, "stats_cluster_config_redundancy_group_info": {"description": "Redundancy group monitoring entries for a gateway cluster", "items": {"$ref": "#/components/schemas/stats_cluster_config_redundancy_group_info_item"}, "type": "array"}, "stats_cluster_config_redundancy_group_info_item": {"additionalProperties": false, "description": "Redundancy group monitoring entry for a gateway cluster", "properties": {"Id": {"description": "Redundancy group identifier reported by the gateway", "type": "integer"}, "MonitoringFailure": {"description": "Detected monitoring failure condition for the redundancy group", "type": "string"}, "Threshold": {"description": "Configured monitoring threshold for the redundancy group", "type": "integer"}}, "type": "object"}, "stats_device": {"description": "Device statistics record for an AP, switch, or gateway", "discriminator": {"mapping": {"ap": "#/components/schemas/stats_ap", "gateway": "#/components/schemas/stats_gateway", "switch": "#/components/schemas/stats_switch"}, "propertyName": "type"}, "oneOf": [{"$ref": "#/components/schemas/stats_ap"}, {"$ref": "#/components/schemas/stats_switch"}, {"$ref": "#/components/schemas/stats_gateway"}]}, "stats_device_other": {"additionalProperties": false, "description": "Statistics for a third-party or other device tracked by Mist", "properties": {"cached_stats": {"description": "Whether the response was served from cached vendor statistics", "type": "boolean"}, "config_status": {"description": "Synchronization status of the other device configuration in Mist", "examples": ["synced"], "type": "string"}, "connected_devices": {"$ref": "#/components/schemas/stats_device_other_connected_devices", "description": "LLDP neighbor devices discovered from the other device"}, "interfaces": {"$ref": "#/components/schemas/stats_device_other_interfaces", "description": "Network interface statistics reported for the other device"}, "last_config": {"description": "Timestamp of the last configuration update reported for the other device, in epoch seconds", "examples": [1675392788], "type": "integer"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the other device, in epoch seconds"}, "lldp_enabled": {"description": "Whether LLDP is enabled on the other device", "type": "boolean"}, "mac": {"description": "Other device MAC address reported in the statistics response", "examples": ["5c5b35000018"], "type": "string"}, "status": {"description": "Connectivity status reported for the other device, such as online", "examples": ["online"], "type": "string"}, "uptime": {"description": "Elapsed time since the other device last booted, in seconds", "examples": [20296], "type": "integer"}, "vendor": {"description": "Device vendor name, such as Cradlepoint", "examples": ["cradlepoint"], "type": "string"}, "vendor_specific": {"$ref": "#/components/schemas/stats_device_other_vendor_specific", "description": "Additional statistics returned by the device vendor"}, "version": {"description": "Vendor software version reported for the other device", "examples": ["7.22.70"], "type": "string"}}, "type": "object"}, "stats_device_other_connected_device": {"additionalProperties": false, "description": "LLDP neighbor device discovered from an other-device statistics record", "properties": {"mac": {"description": "Connected device MAC address learned from LLDP", "examples": ["020001abcdef"], "type": "string"}, "name": {"description": "LLDP system name reported for the connected device", "examples": ["DNT-NTR-GWE"], "type": "string"}, "port_id": {"description": "LLDP port identifier reported for the connected device", "examples": ["ge-0/0/1"], "type": "string"}, "type": {"description": "Detected Mist device type for the connected neighbor", "examples": ["gateway"], "type": "string"}}, "type": "object"}, "stats_device_other_connected_devices": {"additionalProperties": {"$ref": "#/components/schemas/stats_device_other_connected_device"}, "description": "Property key is the connected device MAC address", "type": "object"}, "stats_device_other_interface": {"additionalProperties": false, "description": "Network interface statistics for a third-party device tracked by Mist", "properties": {"bytes_in": {"description": "Total bytes received on the interface", "examples": [5623096929], "type": "integer"}, "bytes_out": {"description": "Total bytes transmitted from the interface", "examples": [12372750366], "type": "integer"}, "carrier": {"description": "Cellular carrier name reported for the interface, when applicable", "examples": ["Orange"], "type": "string"}, "imei": {"description": "Modem IMEI serving the interface, when applicable", "examples": ["866401234567893"], "type": "string"}, "imsi": {"description": "Subscriber IMSI associated with the interface, when applicable", "examples": ["2080101234567893"], "type": "string"}, "ip": {"description": "Interface IP address reported by the vendor", "examples": ["10.134.237.57"], "type": "string"}, "link": {"description": "Whether the interface link is up", "examples": [true], "type": "boolean"}, "mode": {"description": "Interface role reported by the vendor, such as wan or lan", "examples": ["wan"], "type": "string"}, "mtu": {"description": "Maximum transmission unit configured on the interface, in bytes", "examples": [1500], "type": "integer"}, "rsrp": {"description": "Reference signal received power for a cellular interface, in dBm", "examples": [-108.0], "type": "number"}, "rsrq": {"description": "Reference signal received quality for a cellular interface, in dB", "examples": [-14.0], "type": "number"}, "rssi": {"description": "Received signal strength indicator for a cellular interface, in dBm", "examples": [-74], "type": "integer"}, "service_mode": {"description": "Cellular service mode reported for the interface, such as 5G NSA", "examples": ["5G NSA"], "type": "string"}, "sinr": {"description": "Signal-to-interference-plus-noise ratio for a cellular interface, in dB", "examples": [-1.2], "type": "number"}, "state": {"description": "Operational state reported for the interface", "examples": ["READY"], "type": "string"}, "type": {"description": "Interface type reported by the vendor, such as mdm or ethernet", "examples": ["mdm"], "type": "string"}, "uptime": {"description": "Elapsed time since the interface last became active, in seconds", "examples": [2095779], "type": "integer"}}, "type": "object"}, "stats_device_other_interfaces": {"additionalProperties": {"$ref": "#/components/schemas/stats_device_other_interface"}, "description": "Property key is the interface name", "type": "object"}, "stats_device_other_vendor_specific": {"additionalProperties": false, "description": "When `vendor`==`cradlepoint`, contains Cradlepoint-specific statistics reported for the other device", "properties": {"interfaces": {"additionalProperties": {"$ref": "#/components/schemas/stats_device_other_vendor_specific_port"}, "description": "Cradlepoint interface statistics keyed by vendor interface identifier", "examples": [{"mdm-4d0e073b": {"bytes_in": 5623096929, "bytes_out": 12372750366, "carrier": "Orange", "imei": "866401234567893", "imsi": "2080101234567893", "ip": "10.134.237.57", "link": true, "mode": "wan", "rsrp": -108, "rsrq": -14, "rssi": -74, "service_mode": "5G NSA", "sinr": -1.2, "state": "READY", "type": "mdm", "uptime": 2095779}}], "type": "object"}, "target_version": {"description": "Cradlepoint software version targeted for the device", "examples": ["7.23.40"], "type": "string"}}, "type": "object"}, "stats_device_other_vendor_specific_port": {"additionalProperties": false, "description": "Cradlepoint interface statistics for a device tracked by Mist", "properties": {"bytes_in": {"description": "Total bytes received on the Cradlepoint interface", "examples": [5623096929], "type": "integer"}, "bytes_out": {"description": "Total bytes transmitted from the Cradlepoint interface", "examples": [12372750366], "type": "integer"}, "carrier": {"description": "Cellular carrier name reported for the Cradlepoint interface, when applicable", "examples": ["Orange"], "type": "string"}, "display_name": {"description": "Human-readable interface name reported by Cradlepoint", "examples": ["mdm-4d0e073b"], "type": "string"}, "imei": {"description": "Modem IMEI serving the Cradlepoint interface, when applicable", "examples": ["866401234567893"], "type": "string"}, "imsi": {"description": "Subscriber IMSI associated with the Cradlepoint interface, when applicable", "examples": ["2080101234567893"], "type": "string"}, "ip": {"description": "Cradlepoint interface IP address reported by the vendor", "examples": ["10.134.237.57"], "type": "string"}, "link": {"description": "Whether the Cradlepoint interface link is up", "examples": [true], "type": "boolean"}, "mode": {"description": "Interface role reported by Cradlepoint, such as wan or lan", "examples": ["wan"], "type": "string"}, "mtu": {"description": "Maximum transmission unit configured on the Cradlepoint interface, in bytes", "examples": [1500], "type": "integer"}, "port_parent": {"description": "Parent Cradlepoint port or interface group for this interface", "examples": ["mdm"], "type": "string"}, "rsrp": {"description": "Reference signal received power for a Cradlepoint cellular interface, in dBm", "examples": [-108], "type": "number"}, "rsrq": {"description": "Reference signal received quality for a Cradlepoint cellular interface, in dB", "examples": [-14], "type": "number"}, "rssi": {"description": "Received signal strength indicator for a Cradlepoint cellular interface, in dBm", "examples": [-74], "type": "integer"}, "service_mode": {"description": "Cellular service mode reported for the Cradlepoint interface, such as 5G NSA", "examples": ["5G NSA"], "type": "string"}, "sinr": {"description": "Signal-to-interference-plus-noise ratio for a Cradlepoint cellular interface, in dB", "examples": [-1.2], "type": "number"}, "state": {"description": "Operational state reported for the Cradlepoint interface", "examples": ["READY"], "type": "string"}, "type": {"description": "Interface type reported by Cradlepoint, such as mdm or ethernet", "examples": ["mdm"], "type": "string"}, "uptime": {"description": "Elapsed time since the Cradlepoint interface last became active, in seconds", "examples": [2095779], "type": "integer"}}, "type": "object"}, "stats_devices": {"description": "Device statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_device"}, "type": "array"}, "stats_gateway": {"additionalProperties": false, "description": "Gateway statistics reported by Mist for a site or organization stats response", "properties": {"ap_redundancy": {"$ref": "#/components/schemas/ap_redundancy", "description": "AP redundancy statistics associated with the gateway"}, "arp_table_stats": {"$ref": "#/components/schemas/arp_table_stats", "description": "ARP table utilization statistics for the gateway"}, "auto_upgrade_stat": {"$ref": "#/components/schemas/stats_ap_auto_upgrade", "description": "Automatic firmware upgrade status for the gateway"}, "bgp_peers": {"$ref": "#/components/schemas/bgp_peers", "description": "BGP peer statistics reported by the gateway"}, "cert_expiry": {"description": "Time when the gateway certificate expires, in epoch seconds", "format": "int64", "type": "integer"}, "cluster_config": {"$ref": "#/components/schemas/stats_cluster_config", "description": "High-availability cluster configuration and health for the gateway"}, "cluster_stat": {"$ref": "#/components/schemas/stats_gateway_cluster", "description": "High-availability cluster state summary for the gateway"}, "conductor_name": {"description": "SSR conductor name associated with the gateway, when applicable", "readOnly": true, "type": "string"}, "config_status": {"description": "Configuration synchronization status reported for the gateway", "readOnly": true, "type": "string"}, "config_timestamp": {"description": "Time when the gateway configuration status was last updated, in epoch seconds", "type": "integer"}, "config_version": {"description": "Currently applied configuration version for the gateway", "type": "integer"}, "cpu2_stat": {"$ref": "#/components/schemas/cpu_stat", "description": "Processor utilization statistics for the secondary HA node"}, "cpu_stat": {"$ref": "#/components/schemas/cpu_stat", "description": "Processor utilization statistics for the gateway or primary HA node"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the gateway record was created, in epoch seconds"}, "deviceprofile_id": {"description": "Applied device profile identifier for the gateway, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "deviceprofile_name": {"description": "Applied device profile name for the gateway", "type": "string"}, "dhcpd2_stat": {"$ref": "#/components/schemas/dhcpd_stat", "description": "Lease pool statistics from the secondary-node DHCP service"}, "dhcpd_stat": {"$ref": "#/components/schemas/dhcpd_stat", "description": "Lease pool statistics from the gateway DHCP service"}, "evpntopo_id": {"description": "Associated EVPN topology identifier for the gateway, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "ext_ip": {"description": "Public IP address observed for the gateway", "examples": ["66.129.234.224"], "readOnly": true, "type": ["string", "null"]}, "fwupdate": {"$ref": "#/components/schemas/fwupdate_stat", "description": "Firmware update status for the gateway"}, "has_pcap": {"description": "Whether packet capture is available for the gateway", "readOnly": true, "type": ["boolean", "null"]}, "hostname": {"description": "Device-reported hostname for the gateway", "examples": ["sj1"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the gateway record"}, "if2_stat": {"$ref": "#/components/schemas/if_stat", "description": "Interface traffic statistics for the secondary HA node"}, "if_stat": {"$ref": "#/components/schemas/if_stat", "description": "Interface traffic statistics for the gateway or primary HA node"}, "ip": {"description": "Management IP address reported for the gateway", "examples": ["10.2.11.137"], "readOnly": true, "type": ["string", "null"]}, "ip2_stat": {"$ref": "#/components/schemas/ip_stat", "description": "Layer 3 address statistics for the secondary HA node"}, "ip_stat": {"$ref": "#/components/schemas/ip_stat", "description": "Layer 3 address statistics for the gateway or primary HA node"}, "is_ha": {"description": "Whether the gateway is part of an HA cluster", "readOnly": true, "type": ["boolean", "null"]}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the gateway, in epoch seconds"}, "mac": {"description": "Gateway MAC address reported by Mist", "examples": ["dc38e1dbf3cd"], "type": "string"}, "mac_table_stats": {"$ref": "#/components/schemas/stats_gateway_mac_table_stats", "description": "Layer 2 MAC table utilization statistics for the gateway"}, "map_id": {"description": "Placement map identifier associated with the gateway, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "memory2_stat": {"$ref": "#/components/schemas/memory_stat", "description": "Secondary-node memory utilization statistics for the gateway"}, "memory_stat": {"$ref": "#/components/schemas/memory_stat", "description": "Utilization statistics for gateway memory"}, "model": {"description": "Gateway model name reported by Mist", "examples": ["SRX320"], "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the gateway record was last modified, in epoch seconds"}, "module2_stat": {"$ref": "#/components/schemas/stats_gateway_module_stat", "description": "Hardware module statistics for the secondary HA node"}, "module_stat": {"$ref": "#/components/schemas/stats_gateway_module_stat", "description": "Hardware module statistics for the gateway or primary HA node"}, "name": {"description": "Device name if configured", "examples": ["sj1"], "readOnly": true, "type": "string"}, "node_name": {"description": "HA node name for the gateway, such as node0 or node1", "examples": ["node0"], "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the gateway statistics record"}, "ports": {"$ref": "#/components/schemas/stats_gateway_ports", "description": "Port statistics reported by the gateway"}, "route_summary_stats": {"$ref": "#/components/schemas/route_summary_stats", "description": "Route table summary statistics for the gateway"}, "router_name": {"description": "Device name if configured", "examples": ["sj1"], "readOnly": true, "type": "string"}, "serial": {"description": "Gateway serial number reported by Mist", "examples": ["TC3714190003"], "readOnly": true, "type": "string"}, "service2_stat": {"$ref": "#/components/schemas/service_stat", "description": "System service statistics for the secondary HA node"}, "service_stat": {"$ref": "#/components/schemas/service_stat", "description": "System service statistics for the gateway or primary HA node"}, "service_status": {"$ref": "#/components/schemas/stats_gateway_service_status", "description": "Security service status reported by the gateway"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for the gateway statistics record"}, "spu2_stat": {"$ref": "#/components/schemas/stats_gateway_spu", "description": "Secondary-node Services Processing Unit statistics for the gateway"}, "spu_stat": {"$ref": "#/components/schemas/stats_gateway_spu", "description": "Services Processing Unit statistics for the gateway or primary HA node"}, "status": {"description": "Connection status reported for the gateway, such as connected", "examples": ["connected"], "readOnly": true, "type": "string"}, "tag_id": {"description": "Numeric inventory tag identifier associated with the gateway", "type": "integer"}, "tag_uuid": {"description": "Inventory tag UUID associated with the gateway", "format": "uuid", "type": "string"}, "tunnels": {"$ref": "#/components/schemas/stats_gateway_wan_tunnels", "description": "WAN tunnel statistics for the gateway"}, "type": {"$ref": "#/components/schemas/const_device_type_gateway", "description": "Device type discriminator for gateway statistics"}, "uptime": {"description": "Elapsed time since the gateway last booted, in seconds", "examples": [3671219], "readOnly": true, "type": ["number", "null"]}, "version": {"description": "Software version running on the gateway", "examples": ["18.4R1.8"], "readOnly": true, "type": ["string", "null"]}, "vpn_peers": {"$ref": "#/components/schemas/stats_gateway_vpn_peers", "description": "Remote VPN peer statistics for the gateway"}}, "required": ["mac", "type"], "type": "object"}, "stats_gateway_cluster": {"additionalProperties": false, "description": "High-availability cluster state reported by a gateway", "properties": {"state": {"description": "Current HA cluster state for the gateway", "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_gateway_mac_table_stats": {"additionalProperties": false, "description": "Gateway MAC table utilization counters", "properties": {"mac_table_count": {"description": "Number of MAC table entries currently learned by the gateway", "type": "integer"}, "max_mac_entries_supported": {"description": "Maximum MAC table entries supported by the gateway", "type": "integer"}}, "type": "object"}, "stats_gateway_module_stat": {"description": "Hardware module statistics reported by a gateway", "items": {"$ref": "#/components/schemas/stats_gateway_module_stat_item"}, "maxItems": 1, "minItems": 0, "type": "array"}, "stats_gateway_module_stat_item": {"additionalProperties": false, "description": "Hardware module status and firmware inventory for a gateway", "properties": {"backup_version": {"description": "Backup software version stored on the gateway module", "readOnly": true, "type": ["string", "null"]}, "bios_version": {"description": "BIOS firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "boot_partition": {"description": "Active boot partition used by the gateway module", "type": "string"}, "cpld_version": {"description": "CPLD firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "fans": {"$ref": "#/components/schemas/module_stat_item_fans", "description": "Cooling fan status records for the gateway module"}, "fpga_version": {"description": "FPGA firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed this gateway module, in epoch seconds"}, "locating": {"description": "Whether the gateway module locator indicator is active", "type": "boolean"}, "mac": {"description": "Gateway module MAC address reported by Mist", "examples": ["fc3342123456"], "type": "string"}, "memory_stat": {"$ref": "#/components/schemas/memory_stat", "description": "Utilization statistics for gateway module memory"}, "model": {"description": "Gateway module model name reported by Mist", "examples": ["EX4300-48P"], "readOnly": true, "type": ["string", "null"]}, "network_resources": {"$ref": "#/components/schemas/module_stat_item_network_resources", "description": "Network resource utilization counters for the gateway module"}, "optics_cpld_version": {"description": "Optics CPLD firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "pending_version": {"description": "Pending software version staged for the gateway module", "readOnly": true, "type": ["string", "null"]}, "poe": {"$ref": "#/components/schemas/module_stat_item_poe", "description": "Power over Ethernet telemetry for the gateway module"}, "poe_version": {"description": "PoE controller firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "power_cpld_version": {"description": "Power CPLD firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "psus": {"$ref": "#/components/schemas/module_stat_item_psus", "description": "Power supply status records for the gateway module"}, "re_fpga_version": {"description": "Routing Engine FPGA firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "recovery_version": {"description": "Recovery software version stored on the gateway module", "readOnly": true, "type": ["string", "null"]}, "serial": {"description": "Gateway module serial number reported by Mist", "examples": ["PX8716230021"], "readOnly": true, "type": ["string", "null"]}, "status": {"description": "Connection status reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "temperatures": {"$ref": "#/components/schemas/module_stat_item_temperatures", "description": "Temperature sensor readings for the gateway module"}, "tmc_fpga_version": {"description": "TMC FPGA firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "uboot_version": {"description": "U-Boot firmware version reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "uptime": {"description": "Elapsed time since the gateway module last booted, in seconds", "readOnly": true, "type": ["integer", "null"]}, "vc_links": {"$ref": "#/components/schemas/module_stat_item_vc_links", "description": "Virtual chassis link records for the gateway module"}, "vc_mode": {"description": "Virtual chassis mode reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "vc_role": {"description": "Virtual chassis role reported for the gateway module. enum: `master`, `backup`, `linecard`", "examples": ["master"], "readOnly": true, "type": ["string", "null"]}, "vc_state": {"description": "Virtual chassis state reported for the gateway module", "readOnly": true, "type": ["string", "null"]}, "version": {"description": "Software version running on the gateway module", "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_gateway_port": {"additionalProperties": false, "description": "Gateway port statistics record returned by stats APIs", "properties": {"active": {"description": "Indicates if interface is active/inactive", "readOnly": true, "type": "boolean"}, "auth_state": {"$ref": "#/components/schemas/port_auth_state", "description": "Authentication state of the port"}, "disabled": {"description": "Indicates if interface is disabled", "readOnly": true, "type": "boolean"}, "for_site": {"description": "Whether the reporting device is scoped to a specific site", "readOnly": true, "type": "boolean"}, "full_duplex": {"description": "Indicates full or half duplex", "examples": [true], "type": "boolean"}, "jitter": {"description": "Last sampled jitter of the interface", "readOnly": true, "type": "number"}, "latency": {"description": "Last sampled latency of the interface", "readOnly": true, "type": "number"}, "loss": {"description": "Last sampled loss of the interface", "readOnly": true, "type": "number"}, "lte_iccid": {"description": "LTE ICCID value, Check for null/empty", "type": ["string", "null"]}, "lte_imei": {"description": "LTE IMEI value, Check for null/empty", "type": ["string", "null"]}, "lte_imsi": {"description": "LTE IMSI value, Check for null/empty", "type": ["string", "null"]}, "mac_count": {"description": "Number of MAC addresses in the forwarding table", "readOnly": true, "type": "integer"}, "mac_limit": {"description": "Limit on number of dynamically learned macs", "minimum": 0, "readOnly": true, "type": "integer"}, "neighbor_mac": {"description": "chassis identifier of the chassis type listed", "examples": ["64d814353400"], "readOnly": true, "type": "string"}, "neighbor_port_desc": {"description": "Description supplied by the system on the interface E.g. \"GigabitEthernet2/0/39\"", "examples": ["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. \"Kumar-Acc-SW.mist.local\"", "examples": ["CORP-D-SW-2"], "readOnly": true, "type": "string"}, "poe_disabled": {"description": "Is the POE configured not be disabled.", "readOnly": true, "type": "boolean"}, "poe_mode": {"$ref": "#/components/schemas/stats_switch_port_poe_mode", "description": "PoE mode reported for the port"}, "poe_on": {"description": "Is the device attached to POE", "readOnly": true, "type": "boolean"}, "port_id": {"description": "Identifier of the port reporting these statistics", "examples": ["ge-0/0/0"], "readOnly": true, "type": "string"}, "port_mac": {"description": "MAC address assigned to the interface", "examples": ["5c4527a96580"], "readOnly": true, "type": "string"}, "port_usage": {"description": "Logical usage assigned to the port", "examples": ["lan"], "type": "string"}, "power_draw": {"description": "Amount of power being used by the interface at the time the command is executed. Unit in watts.", "readOnly": true, "type": "number"}, "rx_bcast_pkts": {"description": "Number of broadcast packets received on the interface", "readOnly": true, "type": "integer"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Receive throughput of the port, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received on the port"}, "rx_errors": {"description": "Number of receive errors observed on the interface", "readOnly": true, "type": "integer"}, "rx_mcast_pkts": {"description": "Number of multicast packets received on the interface", "readOnly": true, "type": "integer"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received on the port"}, "speed": {"description": "Current link speed of the port, in Mbps", "examples": [1000], "readOnly": true, "type": "integer"}, "stp_role": {"$ref": "#/components/schemas/port_stp_role", "description": "Current spanning tree role of the port"}, "stp_state": {"$ref": "#/components/schemas/port_stp_state", "description": "Current spanning tree state of the port"}, "tx_bcast_pkts": {"description": "Number of broadcast packets transmitted on the interface", "readOnly": true, "type": "integer"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Transmit throughput of the port, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted on the port"}, "tx_errors": {"description": "Number of transmit errors observed on the interface", "readOnly": true, "type": "integer"}, "tx_mcast_pkts": {"description": "Number of multicast packets transmitted on the interface", "readOnly": true, "type": "integer"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted on the port"}, "type": {"$ref": "#/components/schemas/stats_switch_port_type", "description": "Detected device category connected to the port, when available"}, "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", "examples": ["SFP+-10G-SR"], "readOnly": true, "type": "string"}, "xcvr_part_number": {"description": "Optic Slot Partnumber, Check for null/empty", "examples": ["740-021487"], "readOnly": true, "type": "string"}, "xcvr_serial": {"description": "Optic Slot SerialNumber, Check for null/empty", "examples": ["N6AA9HT"], "readOnly": true, "type": "string"}}, "required": ["neighbor_mac", "port_id", "port_mac"], "type": "object"}, "stats_gateway_ports": {"description": "Only present when `ports` in `fields` query parameter. Each port object is same as `GET /api/v1/sites/{site_id}/stats/ports/search` result object, except that org_id, site_id, mac, model are removed", "items": {"$ref": "#/components/schemas/stats_gateway_port"}, "type": "array"}, "stats_gateway_service_status": {"additionalProperties": false, "description": "Gateway security service installation and runtime status", "properties": {"appid_install_result": {"description": "Installation result reported for the AppID package", "type": "string"}, "appid_install_timestamp": {"description": "Installation time reported for the AppID package", "type": "string"}, "appid_status": {"description": "Operational status of the AppID service on the gateway", "type": "string"}, "appid_version": {"description": "Installed AppID package version number", "type": "integer"}, "ewf_status": {"description": "Enhanced Web Filtering service status reported by the gateway", "type": "string"}, "idp_install_result": {"description": "Installation result reported for the intrusion detection and prevention package", "type": "string"}, "idp_install_timestamp": {"description": "Installation time reported for the intrusion detection and prevention package", "type": "string"}, "idp_policy": {"description": "Intrusion detection and prevention policy applied to the gateway", "type": "string"}, "idp_status": {"description": "Intrusion detection and prevention service status reported by the gateway", "type": "string"}, "idp_update_timestamp": {"description": "Last update time reported for the intrusion detection and prevention package", "type": "string"}}, "type": "object"}, "stats_gateway_spu": {"description": "Services Processing Unit statistics reported by a gateway", "items": {"$ref": "#/components/schemas/stats_gateway_spu_item"}, "type": "array"}, "stats_gateway_spu_item": {"additionalProperties": false, "description": "Services Processing Unit resource and session counters", "properties": {"spu_cpu": {"description": "CPU utilization reported for the Services Processing Unit", "examples": [3670632], "type": "integer"}, "spu_current_session": {"description": "Current session count handled by the Services Processing Unit", "examples": [215], "type": "integer"}, "spu_max_session": {"description": "Maximum sessions supported by the Services Processing Unit", "examples": [131072], "type": "integer"}, "spu_memory": {"description": "Memory utilization reported for the Services Processing Unit", "examples": [46], "type": "integer"}, "spu_pending_session": {"description": "Pending session count on the Services Processing Unit", "examples": [0], "type": "integer"}, "spu_uptime": {"description": "Elapsed time since the Services Processing Unit started, in seconds", "examples": [0], "type": "integer"}, "spu_valid_session": {"description": "Valid session count currently tracked by the Services Processing Unit", "type": "integer"}}}, "stats_gateway_vpn_peer": {"additionalProperties": false, "description": "VPN peer path statistics reported by a gateway", "properties": {"is_active": {"description": "Whether this VPN peer path is the active redundant path", "type": "boolean"}, "jitter": {"description": "Last sampled VPN peer jitter, in milliseconds", "minimum": 0, "type": "number"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when this VPN peer was last observed, in epoch seconds"}, "latency": {"description": "Last sampled VPN peer latency, in milliseconds", "minimum": 0, "type": "number"}, "loss": {"description": "Packet loss observed for the VPN peer, as a percentage", "maximum": 100, "minimum": 0, "type": "number"}, "mos": {"description": "Mean Opinion Score for VPN link quality, from 0 to 5", "maximum": 5, "minimum": 0, "type": "number"}, "mtu": {"description": "Maximum transmission unit for the VPN peer path, in bytes", "type": "integer"}, "peer_mac": {"description": "Peer router MAC address for the VPN link", "minLength": 1, "type": "string"}, "peer_port_id": {"description": "Peer router interface identifier for the VPN link", "minLength": 1, "type": "string"}, "peer_router_name": {"description": "Peer router name reported for the VPN link", "minLength": 1, "type": "string"}, "peer_site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for the peer side of the VPN link"}, "port_id": {"description": "Local router interface identifier for the VPN link", "minLength": 1, "type": "string"}, "router_name": {"description": "Local router name reported for the VPN link", "minLength": 1, "type": "string"}, "type": {"description": "VPN implementation type for the peer, such as `ipsec` for SRX or `svr` for SSR", "minLength": 1, "type": "string"}, "up": {"description": "Whether the VPN peer is currently up", "type": "boolean"}, "uptime": {"description": "Gateway-reported VPN peer uptime value, in seconds", "type": "integer"}}, "type": "object"}, "stats_gateway_vpn_peers": {"description": "Only present when `vpn_peers` in `fields` query parameter. Each port object is same as `GET /api/v1/sites/{site_id}/stats/vpn_peers/search` result object, except that org_id, site_id, mac, model are removed", "items": {"$ref": "#/components/schemas/stats_gateway_vpn_peer"}, "type": "array"}, "stats_gateway_wan_tunnel": {"additionalProperties": false, "description": "WAN tunnel statistics reported by a gateway", "properties": {"auth_algo": {"description": "Authentication algorithm negotiated for the tunnel", "type": "string"}, "encrypt_algo": {"description": "Encryption algorithm negotiated for the tunnel", "type": "string"}, "ike_version": {"description": "IKE version used to establish the tunnel", "type": "string"}, "ip": {"description": "Local IP address used by the tunnel", "type": "string"}, "last_event": {"description": "Most recent reason the tunnel went down", "type": "string"}, "last_flapped": {"description": "Indicates when the tunnel last flapped", "format": "double", "type": "number"}, "node": {"description": "HA node handling the tunnel, such as node0 or node1", "type": "string"}, "peer_host": {"description": "Hostname or configured peer host of the remote tunnel endpoint", "type": "string"}, "peer_ip": {"description": "IP address of the remote tunnel endpoint", "type": "string"}, "priority": {"$ref": "#/components/schemas/tunnel_priority", "description": "Relative preference assigned to the tunnel"}, "protocol": {"$ref": "#/components/schemas/wan_tunnel_protocol", "description": "Tunnel protocol used for the connection"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received on the tunnel"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received on the tunnel"}, "tunnel_name": {"description": "Name of the Mist-managed WAN tunnel", "type": "string"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted on the tunnel"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted on the tunnel"}, "up": {"description": "Indicates whether the tunnel is currently up", "type": "boolean"}, "uptime": {"description": "Duration since the tunnel security association was established", "type": "integer"}, "wan_name": {"description": "Name of the WAN interface carrying the tunnel", "examples": ["wan"], "type": "string"}}, "type": "object"}, "stats_gateway_wan_tunnels": {"description": "Only present when `tunnels` in `fields` query parameter. Each port object is same as `GET /api/v1/sites/{site_id}/stats/tunnels/search` result object, except that org_id, site_id, mac, model are removed", "items": {"$ref": "#/components/schemas/stats_gateway_wan_tunnel"}, "type": "array"}, "stats_marvis_client": {"additionalProperties": false, "description": "Marvis Client stats record returned by search", "properties": {"battery_charging": {"description": "Whether the device battery is currently charging", "type": "boolean"}, "battery_level": {"description": "Battery level percentage (0\u2013100)", "type": "integer"}, "cpu_background": {"description": "Background CPU utilization (0\u2013100)", "type": "number"}, "cpu_idle": {"description": "Idle CPU percentage (0\u2013100)", "type": "number"}, "cpu_system": {"description": "System CPU utilization (0\u2013100)", "type": "number"}, "cpu_user": {"description": "User-space CPU utilization (0\u2013100)", "type": "number"}, "device_id": {"description": "UUID of the device the Marvis Client is installed on", "format": "uuid", "type": "string"}, "hostname": {"description": "Device hostname", "type": "string"}, "location": {"$ref": "#/components/schemas/stats_marvis_client_location", "description": "Last known device location"}, "memory_total": {"description": "Total device memory, in bytes", "type": "integer"}, "memory_usage": {"description": "Memory in use, in bytes", "type": "integer"}, "mfg": {"description": "Device manufacturer", "type": "string"}, "model": {"description": "Device model name", "type": "string"}, "org_id": {"description": "Organization UUID", "format": "uuid", "type": "string"}, "os_type": {"description": "OS type or platform (e.g. Android, iOS)", "type": "string"}, "os_version": {"description": "OS version string", "type": "string"}, "serial": {"description": "Device serial number", "type": "string"}, "storage_total": {"description": "Total device storage, in bytes", "type": "integer"}, "storage_usage": {"description": "Storage in use, in bytes", "type": "integer"}, "timestamp": {"description": "Timestamp of the stats record, in epoch seconds", "type": "integer"}, "wifi_band": {"description": "Wi-Fi band the device is connected on", "type": "string"}, "wifi_bssid": {"description": "BSSID the device is connected to", "type": "string"}, "wifi_channel": {"description": "Wi-Fi channel the device is on", "type": "integer"}, "wifi_ip": {"description": "Device Wi-Fi IP address", "type": "string"}, "wifi_mac": {"description": "Device Wi-Fi MAC address", "type": "string"}, "wifi_rssi": {"description": "Wi-Fi RSSI, in dBm", "type": "integer"}, "wifi_ssid": {"description": "SSID the device is connected to", "type": "string"}}, "type": "object"}, "stats_marvis_client_location": {"additionalProperties": false, "description": "Last known location fix for a Marvis Client device", "properties": {"map_id": {"description": "UUID of the floor-plan map", "format": "uuid", "type": "string"}, "site_id": {"description": "UUID of the site the device was located in", "format": "uuid", "type": "string"}, "timestamp": {"description": "Timestamp of the location fix, in epoch seconds", "type": "integer"}, "x": {"description": "X coordinate on the floor-plan map, in pixels", "type": "number"}, "y": {"description": "Y coordinate on the floor-plan map, in pixels", "type": "number"}}, "type": "object"}, "stats_marvis_clients_search": {"additionalProperties": false, "description": "Paginated list of Marvis Client stats records", "properties": {"limit": {"description": "Maximum number of results requested", "type": "integer"}, "results": {"description": "List of Marvis Client stats records", "items": {"$ref": "#/components/schemas/stats_marvis_client"}, "type": "array"}, "total": {"description": "Total number of matching results", "type": "integer"}}, "type": "object"}, "stats_mxedge": {"additionalProperties": false, "description": "Statistics for a Mist Edge appliance returned by stats endpoints", "properties": {"cpu_stat": {"$ref": "#/components/schemas/stats_mxedge_cpu_stat", "description": "CPU utilization statistics reported by the Mist Edge"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the Mist Edge record was created, in epoch seconds"}, "fips_enabled": {"description": "Whether FIPS mode is enabled on the Mist Edge", "type": "boolean"}, "for_site": {"description": "Whether the Mist Edge is assigned directly to a site", "examples": [false], "type": "boolean"}, "fwupdate": {"$ref": "#/components/schemas/fwupdate_stat", "description": "Firmware or package update status for the Mist Edge"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the Mist Edge"}, "idrac_version": {"description": "IDRAC version of the mist edge device", "examples": ["7.00.00.00"], "type": "string"}, "inactive_vlan_strs": {"$ref": "#/components/schemas/stats_mxedge_inactive_vlan_strs", "description": "Inactive VLAN identifiers reported by the Mist Edge"}, "ip_stat": {"$ref": "#/components/schemas/stats_mxedge_ip_stat", "description": "IP address statistics reported by the Mist Edge"}, "lag_stat": {"$ref": "#/components/schemas/stats_mxedge_lag_stats", "description": "Link aggregation statistics reported by the Mist Edge"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the Mist Edge, in epoch seconds"}, "mac": {"description": "Mist Edge MAC address reported by Mist", "examples": ["020000a80cb4"], "type": "string"}, "magic": {"description": "Claim magic token associated with the Mist Edge", "type": "string"}, "memory_stat": {"$ref": "#/components/schemas/stats_mxedge_memory_stat", "description": "Memory utilization statistics reported by the Mist Edge"}, "model": {"description": "Mist Edge hardware or VM model", "examples": ["ME-VM"], "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the Mist Edge record was last modified, in epoch seconds"}, "mxagent_registered": {"description": "Whether the Mist Edge management agent is registered with Mist", "examples": [true], "type": "boolean"}, "mxcluster_id": {"description": "Mist Edge cluster identifier associated with this Mist Edge", "examples": ["678bc339-7635-4556-bbc0-e77ad493ef8b"], "format": "uuid", "type": "string"}, "name": {"description": "Display name of the Mist Edge", "examples": ["me-vm-1"], "type": "string"}, "num_tunnels": {"description": "Number of tunnels currently terminated by the Mist Edge", "examples": [0], "type": "integer"}, "oob_ip_config": {"$ref": "#/components/schemas/mxedge_oob_ip_config", "description": "Configured out-of-band management IP settings for the Mist Edge"}, "oob_ip_stat": {"$ref": "#/components/schemas/stats_mxedge_oob_ip_stat", "description": "Observed out-of-band management IP status for the Mist Edge"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the Mist Edge"}, "port_stat": {"$ref": "#/components/schemas/stats_mxedge_port_stats", "description": "Port statistics reported by the Mist Edge"}, "serial": {"description": "Device serial number reported for the Mist Edge, when available", "type": ["string", "null"]}, "service_stat": {"$ref": "#/components/schemas/stats_mxedge_service_stats", "description": "Per-service runtime statistics reported by the Mist Edge"}, "services": {"$ref": "#/components/schemas/stats_mxedge_services", "description": "Mist Edge services enabled or running on the device"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the Mist Edge, when assigned to a site"}, "status": {"description": "Connection status reported for the Mist Edge, such as connected", "examples": ["connected"], "type": "string"}, "tunterm_ip_config": {"$ref": "#/components/schemas/stats_mxedge_tunterm_ip_config", "description": "Configured tunnel termination IP settings for the Mist Edge"}, "tunterm_port_config": {"$ref": "#/components/schemas/stats_mxedge_tunterm_port_config", "description": "Tunnel termination port configuration reported for the Mist Edge"}, "tunterm_registered": {"description": "Whether the tunnel termination service is registered with Mist", "examples": [true], "type": "boolean"}, "tunterm_stat": {"$ref": "#/components/schemas/stats_mxedge_tunterm_stat", "description": "Tunnel termination monitoring status reported by the Mist Edge"}, "uptime": {"description": "Number of seconds the Mist Edge has been running since last boot", "examples": [76281], "type": "integer"}, "virtualization_type": {"description": "Virtualization platform or environment running the Mist Edge VM", "examples": ["KVM"], "type": "string"}}, "type": "object"}, "stats_mxedge__active_ports": {"description": "List of ports active on the LAG defined by the LACP", "items": {"type": "string"}, "type": "array"}, "stats_mxedge_cpu_stat": {"additionalProperties": false, "description": "Aggregate and per-core CPU utilization statistics for a Mist Edge", "properties": {"cpus": {"$ref": "#/components/schemas/stats_mxedge_cpu_stat_cpus", "description": "Per-core CPU utilization statistics keyed by CPU name"}, "idle": {"description": "Percentage of Idle, Idle/(Idle + Busy) since last sampling", "examples": [62], "type": "integer"}, "interrupt": {"description": "Percentage of Interrupt, (Irq + SoftIrq)/(Idle + Busy) since last sampling", "examples": [0], "type": "integer"}, "system": {"description": "Percentage of System, System/(Idle + Busy) since last sampling", "examples": [17], "type": "integer"}, "usage": {"description": "Percentage of load, Busy/(Idle + Busy) since last sampling", "examples": [37], "type": "integer"}, "user": {"description": "Percentage of User, User/(Idle + Busy) since last sampling", "examples": [19], "type": "integer"}}, "type": "object"}, "stats_mxedge_cpu_stat_cpus": {"additionalProperties": {"$ref": "#/components/schemas/cpu_stat"}, "description": "Per-core CPU utilization statistics keyed by CPU name", "examples": [{"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"}, "stats_mxedge_inactive_vlan_strs": {"additionalProperties": false, "description": "Inactive wired/L2TP VLANs. Entries can be individual VLANs or ranges.", "properties": {"l2tp": {"description": "Inactive L2TP VLANs. Entries can be individual VLANs or ranges.", "items": {"type": "string"}, "type": "array"}, "wired": {"description": "Inactive wired VLANs. Entries can be individual VLANs or ranges.", "examples": [["100", "102-106"]], "items": {"type": "string"}, "type": "array"}}, "type": "object"}, "stats_mxedge_ip_stat": {"additionalProperties": false, "description": "IP address statistics reported by a Mist Edge", "properties": {"ip": {"description": "Primary IPv4 address reported for the Mist Edge", "examples": ["192.168.1.244"], "type": "string"}, "ip6": {"description": "Primary IPv6 address reported for the Mist Edge", "examples": ["fd4e:c615:b27d:5555::45"], "type": "string"}, "ips": {"additionalProperties": {"type": "string"}, "description": "Interface IP addresses keyed by interface name", "examples": [{"ens18": "92.168.1.244/24,fd4e:c615:b27d:5555::45/128,fd4e:c615:b27d:5555:20c:29ff:fe44:af25/64,fe80::104c:ffff:fee0:caf8/64"}], "type": "object"}, "macs": {"additionalProperties": {"description": "MAC addresses for each net interface", "type": "string"}, "description": "Interface MAC addresses keyed by interface name", "examples": [{"ens18": "e4434b217044"}], "type": "object"}, "netmask": {"description": "IPv4 netmask reported for the primary Mist Edge address", "examples": ["255.255.255.0"], "type": "string"}, "netmask6": {"description": "IPv6 prefix length reported for the primary Mist Edge address", "examples": ["/128"], "type": "string"}}, "type": "object"}, "stats_mxedge_lag_stat": {"additionalProperties": false, "description": "Link aggregation group status for a Mist Edge", "properties": {"active_ports": {"$ref": "#/components/schemas/stats_mxedge__active_ports", "description": "Ports currently active in the link aggregation group"}}, "type": "object"}, "stats_mxedge_lag_stats": {"additionalProperties": {"$ref": "#/components/schemas/stats_mxedge_lag_stat"}, "description": "Link aggregation group statistics keyed by LAG name", "examples": [{"lacp0": {"active_ports": ["port0", "port1"]}}], "type": "object"}, "stats_mxedge_memory_stat": {"additionalProperties": false, "description": "Memory usage counters reported by a Mist Edge", "properties": {"active": {"description": "The amount of memory, in kilobytes, that has been used more recently and is usually not reclaimed unless absolutely necessary.", "examples": [394936320], "type": "integer"}, "available": {"description": "An estimate of how much memory is available for starting new applications, without swapping.", "examples": [4699291648], "type": "integer"}, "buffers": {"description": "The amount, in kilobytes, of temporary storage for raw disk blocks.", "examples": [107646976], "type": "integer"}, "cached": {"description": "The amount of physical RAM, in kilobytes, used as cache memory.", "examples": [478060544], "type": "integer"}, "free": {"description": "The amount of physical RAM, in kilobytes, left unused by the system", "examples": [4330659840], "type": "integer"}, "inactive": {"description": "The amount of memory, in kilobytes, that has been used less recently and is more eligible to be reclaimed for other purposes.", "examples": [211980288], "type": "integer"}, "swap_cached": {"description": "The amount of memory, in kilobytes, that has once been moved into swap, then back into the main memory, but still also remains in the swapfile.", "examples": [0], "type": "integer"}, "swap_free": {"description": "The total amount of swap free, in kilobytes.", "examples": [1022357504], "type": "integer"}, "swap_total": {"description": "The total amount of swap available, in kilobytes.", "examples": [1022357504], "type": "integer"}, "total": {"description": "Usable RAM total, in kilobytes, which is physical RAM minus a number of reserved bits and the kernel binary code", "examples": [8365957120], "type": "integer"}, "usage": {"description": "Memory utilization percentage reported by the Mist Edge", "examples": [48], "type": "integer"}}, "type": "object"}, "stats_mxedge_oob_ip_stat": {"additionalProperties": false, "description": "Observed out-of-band management IP settings for a Mist Edge", "properties": {"dns": {"$ref": "#/components/schemas/strings", "description": "Out-of-band management DNS servers"}, "gateway": {"description": "IPv4 default gateway for out-of-band management", "type": "string"}, "gateway6": {"description": "IPv6 default gateway for out-of-band management", "type": "string"}, "ip": {"description": "Out-of-band management IPv4 address", "type": "string"}, "ip6": {"description": "Out-of-band management IPv6 address", "type": "string"}, "netmask": {"description": "IPv4 netmask for the out-of-band management interface", "type": "string"}, "netmask6": {"description": "IPv6 prefix length for the out-of-band management interface", "type": "string"}, "type": {"$ref": "#/components/schemas/mxedge_mgmt_oob_ip_type", "description": "IPv4 address assignment mode for out-of-band management"}, "type8": {"$ref": "#/components/schemas/mxedge_mgmt_oob_ip_type6", "description": "IPv6 address assignment mode for out-of-band management"}}, "type": "object"}, "stats_mxedge_port_stat": {"additionalProperties": false, "description": "Mist Edge port traffic and link status statistics", "properties": {"full_duplex": {"description": "Whether the port is operating in full-duplex mode", "type": "boolean"}, "lacp": {"$ref": "#/components/schemas/stats_mxedge_port_stat_lacp", "description": "Link aggregation control protocol state and packet counters for the port"}, "lldp_stats": {"$ref": "#/components/schemas/stats_mxedge_port_stat_lldp_stats", "description": "LLDP neighbor information learned on the port"}, "mac": {"description": "Mist Edge port MAC address reported by Mist", "type": "string"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received on the port"}, "rx_errors": {"description": "Number of receive errors observed on the port", "type": "integer"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received on the port"}, "sfp": {"$ref": "#/components/schemas/stats_mxedge_port_stat_sfp", "description": "Transceiver details reported for the SFP module on the port"}, "speed": {"description": "Current link speed of the port, in Mbps", "type": "integer"}, "state": {"description": "Forwarding or operational state reported for the port", "type": "string"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted from the port"}, "tx_errors": {"description": "Number of transmit errors observed on the port", "type": "integer"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted from the port"}, "up": {"description": "Whether the Mist Edge port link is up", "type": "boolean"}}, "type": "object"}, "stats_mxedge_port_stat_lacp": {"additionalProperties": false, "description": "LACP state and counters for a Mist Edge port", "properties": {"mux_state": {"description": "LACP multiplexer state reported for the port", "type": "string"}, "rx_lacpdu": {"description": "Number of LACPDUs received on the port", "type": "integer"}, "rx_state": {"description": "LACP receive state reported for the port", "type": "string"}, "tx_lacpdu": {"description": "Number of LACPDUs transmitted from the port", "type": "integer"}}, "type": "object"}, "stats_mxedge_port_stat_lldp_stats": {"additionalProperties": false, "description": "LLDP neighbor information reported for a Mist Edge port", "properties": {"chassis_id": {"description": "LLDP chassis identifier advertised by the neighbor", "type": "string"}, "mgmt_addr": {"description": "Management address advertised by the LLDP neighbor", "type": "string"}, "port_desc": {"description": "Port description advertised by the LLDP neighbor", "type": "string"}, "port_id": {"description": "Port identifier advertised by the LLDP neighbor", "type": "string"}, "system_desc": {"description": "System description advertised by the LLDP neighbor", "type": "string"}, "system_name": {"description": "System name advertised by the LLDP neighbor", "type": "string"}}, "type": "object"}, "stats_mxedge_port_stat_sfp": {"additionalProperties": false, "description": "SFP transceiver details reported for a Mist Edge port", "properties": {"codes": {"description": "Transceiver capability codes reported by the SFP module", "type": "string"}, "mbps": {"description": "Nominal transceiver speed, in Mbps", "type": "integer"}, "part_no": {"description": "Manufacturer part number reported by the SFP module", "type": "string"}, "serial_no": {"description": "Manufacturer serial number reported by the SFP module", "type": "string"}, "type": {"description": "Transceiver type code reported by the SFP module", "type": "integer"}, "vendor": {"description": "Manufacturer name reported by the SFP module", "type": "string"}}, "type": "object"}, "stats_mxedge_port_stats": {"additionalProperties": {"$ref": "#/components/schemas/stats_mxedge_port_stat"}, "description": "Mist Edge port statistics keyed by port name", "examples": [{"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}}], "type": "object"}, "stats_mxedge_service_stat": {"additionalProperties": false, "description": "Runtime and package state for one Mist Edge service", "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": "Cloud Unix time, in seconds, when stats were last seen for this service, or the latest service last_seen time for whole-system records", "type": "number"}, "package_state": {"description": "Installation state of the Mist Edge service package", "type": "string"}, "package_version": {"description": "Installed version of the Mist Edge service package", "type": "string"}, "running_state": {"description": "Runtime state reported by the Mist Edge service", "type": "string"}, "uptime": {"description": "Elapsed running time reported by the Mist Edge service, in seconds", "type": "integer"}}, "type": "object"}, "stats_mxedge_service_stats": {"additionalProperties": {"$ref": "#/components/schemas/stats_mxedge_service_stat"}, "description": "Stat for each services", "examples": [{"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"}, "stats_mxedge_services": {"description": "Mist Edge service names enabled or running on the appliance", "examples": [["tunterm"]], "items": {"type": "string"}, "type": "array"}, "stats_mxedge_tunterm_ip_config": {"additionalProperties": false, "description": "Tunnel termination IP configuration reported by a Mist Edge", "properties": {"gateway": {"description": "IPv4 default gateway for tunnel termination traffic", "examples": ["192.168.11.1"], "type": "string"}, "ip": {"description": "Tunnel termination IPv4 address used by the Mist Edge", "examples": ["192.168.11.91"], "type": "string"}, "netmask": {"description": "IPv4 netmask for the tunnel termination address", "examples": ["255.255.255.0"], "type": "string"}}, "type": "object"}, "stats_mxedge_tunterm_port_config": {"additionalProperties": false, "description": "Tunnel termination port role configuration reported by a Mist Edge", "properties": {"downstream_ports": {"$ref": "#/components/schemas/stats_mxedge_tunterm_port_config_downstream_ports", "description": "Ports configured for downstream tunnel termination traffic"}, "separate_upstream_downstream": {"description": "Whether separate port sets are used for upstream and downstream tunnel termination traffic", "examples": [false], "type": "boolean"}, "upstream_ports": {"$ref": "#/components/schemas/stats_mxedge_tunterm_port_config_upstream_ports", "description": "Ports configured for upstream tunnel termination traffic"}}, "type": "object"}, "stats_mxedge_tunterm_port_config_downstream_ports": {"description": "Downstream tunnel termination port identifiers", "examples": [["0", "1"]], "items": {"type": "string"}, "type": "array"}, "stats_mxedge_tunterm_port_config_upstream_ports": {"description": "Upstream tunnel termination port identifiers", "examples": [["0", "1"]], "items": {"type": "string"}, "type": "array"}, "stats_mxedge_tunterm_stat": {"additionalProperties": false, "description": "Tunnel termination monitoring status reported by a Mist Edge", "properties": {"monitoring_failed": {"description": "Whether tunnel termination monitoring is currently failing", "examples": [false], "type": "boolean"}}, "type": "object"}, "stats_mxedges": {"description": "Mist Edge statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_mxedge"}, "type": "array"}, "stats_mxtunnel": {"additionalProperties": false, "description": "WxLAN or Mist tunnel statistics record", "properties": {"ap": {"description": "MAC address of the AP associated with the tunnel statistics", "readOnly": true, "type": "string"}, "for_site": {"description": "Whether the tunnel statistics are scoped to a site", "readOnly": true, "type": "boolean"}, "fwupdate": {"$ref": "#/components/schemas/fwupdate_stat", "description": "Firmware update status included with the tunnel statistics, when available"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the tunnel statistics were last observed"}, "mtu": {"description": "Maximum transmission unit reported for the tunnel path", "readOnly": true, "type": "integer"}, "mxcluster_id": {"description": "Mist Edge cluster identifier associated with the tunnel statistics", "format": "uuid", "readOnly": true, "type": "string"}, "mxedge_id": {"description": "Mist Edge identifier for the tunnel endpoint", "format": "uuid", "readOnly": true, "type": "string"}, "mxtunnel_id": {"description": "Mist tunnel identifier associated with the tunnel statistics", "format": "uuid", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the tunnel statistics"}, "peer_mxedge_id": {"description": "MxEdge ID of the peer(mist edge to mist edge tunnel)", "format": "uuid", "readOnly": true, "type": "string"}, "remote_ip": {"description": "Remote endpoint IP address for the tunnel", "readOnly": true, "type": "string"}, "remote_port": {"description": "Remote endpoint port for the tunnel", "readOnly": true, "type": "integer"}, "rx_control_pkts": {"description": "Number of control packets received for the tunnel", "readOnly": true, "type": "integer"}, "sessions": {"$ref": "#/components/schemas/stats_mxtunnel_sessions", "description": "WxLAN tunnel sessions reported for this tunnel"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the tunnel statistics"}, "state": {"$ref": "#/components/schemas/stats_mxtunnel_state", "description": "Current state of the WxLAN or Mist tunnel"}, "tx_control_pkts": {"description": "Number of control packets transmitted for the tunnel", "readOnly": true, "type": "integer"}, "uptime": {"description": "Duration, in seconds, that the tunnel has been up", "readOnly": true, "type": "integer"}}, "required": ["remote_ip"], "type": "object"}, "stats_mxtunnel_session": {"additionalProperties": false, "description": "Session information for a WxLAN or Mist tunnel", "properties": {"local_sid": {"description": "Local session identifier for the tunnel session", "type": "integer"}, "remote_id": {"description": "Configured remote identifier for the tunnel session", "type": "string"}, "remote_sid": {"description": "Peer session identifier for the tunnel session", "type": "integer"}, "state": {"description": "Current state of the tunnel session", "type": "string"}}, "required": ["local_sid", "remote_id", "remote_sid", "state"], "type": "object"}, "stats_mxtunnel_sessions": {"description": "Tunnel sessions reported for a WxLAN or Mist tunnel", "items": {"$ref": "#/components/schemas/stats_mxtunnel_session"}, "readOnly": true, "type": "array", "uniqueItems": true}, "stats_mxtunnel_state": {"description": "enum: `established`, `established_with_sessions`, `idle`, `wait-ctrl-conn`, `wait-ctrl-reply`", "enum": ["established", "established_with_sessions", "idle", "wait-ctrl-conn", "wait-ctrl-reply"], "readOnly": true, "type": "string"}, "stats_org": {"additionalProperties": false, "description": "Organization statistics summary returned by the org stats endpoint", "properties": {"alarmtemplate_id": {"description": "Organization-level alarm template identifier used as the default for sites", "format": "uuid", "type": "string"}, "allow_mist": {"description": "Whether Mist support access is allowed for this organization", "type": "boolean"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the organization was created, in epoch seconds"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the organization"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the organization was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managed service provider identifier associated with the organization"}, "name": {"description": "Display name of the organization", "type": "string"}, "num_devices": {"description": "Total number of devices in the organization", "type": "integer"}, "num_devices_connected": {"description": "Number of organization devices currently connected to Mist", "type": "integer"}, "num_devices_disconnected": {"description": "Number of organization devices currently disconnected from Mist", "type": "integer"}, "num_inventory": {"description": "Number of devices in the organization's inventory", "type": "integer"}, "num_sites": {"description": "Number of sites in the organization", "type": "integer"}, "orggroup_ids": {"$ref": "#/components/schemas/stats_org_orggroup_ids", "description": "Organization group identifiers that include this organization"}, "session_expiry": {"description": "Admin session lifetime for the organization, in minutes", "format": "int64", "type": "integer"}, "sle": {"$ref": "#/components/schemas/stats_org_sles", "description": "Service level expectation summaries for the organization"}}, "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"}, "stats_org_orggroup_ids": {"description": "Organization group identifiers associated with an organization stats record", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "stats_org_sle": {"additionalProperties": false, "description": "Organization SLE summary for a service path", "properties": {"path": {"description": "SLE path represented by this organization summary", "type": "string"}, "user_minutes": {"$ref": "#/components/schemas/stats_org_sle_user_minutes", "description": "User-minute totals for this SLE path"}}, "required": ["path"], "type": "object"}, "stats_org_sle_user_minutes": {"additionalProperties": false, "description": "User-minute totals for an organization SLE summary", "properties": {"ok": {"description": "User minutes that met the SLE target", "type": "number"}, "total": {"description": "Observed total user minutes for the SLE path", "type": "number"}}, "required": ["total", "ok"], "type": "object"}, "stats_org_sles": {"description": "Service level expectation summaries for an organization", "items": {"$ref": "#/components/schemas/stats_org_sle"}, "type": "array", "uniqueItems": true}, "stats_orgs": {"description": "Organization statistics summaries returned by stats APIs", "items": {"$ref": "#/components/schemas/stats_org"}, "type": "array"}, "stats_rssi_zone": {"additionalProperties": false, "description": "RSSI-based zone statistics for a site", "properties": {"assets_wait": {"$ref": "#/components/schemas/stats_zone_assets_waits", "description": "BLE asset wait-time summary for the RSSI zone"}, "clients_wait": {"$ref": "#/components/schemas/stats_zone_clients_waits", "description": "Wi-Fi client wait-time summary for the RSSI zone"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the RSSI zone was created, in epoch seconds"}, "devices": {"$ref": "#/components/schemas/stats_rssi_zones_devices", "description": "AP devices and RSSI thresholds that define the RSSI zone"}, "discovered_assets_wait": {"$ref": "#/components/schemas/stats_zone_discovered_assets_waits", "description": "Discovered BLE asset wait-time summary for the RSSI zone"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the RSSI zone"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the RSSI zone was last modified, in epoch seconds"}, "name": {"description": "Display name of the RSSI zone", "examples": ["Zone A"], "type": "string"}, "num_assets": {"description": "Number of BLE assets currently counted in the RSSI zone", "examples": [0], "type": "integer"}, "num_clients": {"description": "Number of Wi-Fi clients (unconnected + connected)", "examples": [80], "type": "integer"}, "num_discovered_assets": {"description": "Number of discovered BLE assets currently counted in the RSSI zone", "examples": [0], "type": "integer"}, "num_sdkclients": {"description": "Number of SDK clients currently counted in the RSSI zone", "examples": [10], "type": "integer"}, "num_unconnected_clients": {"description": "Number of unconnected Wi-Fi clients", "examples": [80], "type": "integer"}, "occupancy_limit": {"description": "Configured occupancy limit for the RSSI zone", "examples": [4], "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the RSSI zone"}, "sdkclients_wait": {"$ref": "#/components/schemas/stats_zone_sdkclients_waits", "description": "SDK client wait-time summary for the RSSI zone"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the RSSI zone"}, "unconnected_clients_wait": {"$ref": "#/components/schemas/stats_zone_unconnected_clients_waits", "description": "Unconnected Wi-Fi client wait-time summary for the RSSI zone"}}, "required": ["id", "name", "devices"], "type": "object"}, "stats_rssi_zones": {"description": "RSSI-based zone statistics returned by the request", "items": {"$ref": "#/components/schemas/stats_rssi_zone"}, "type": "array"}, "stats_rssi_zones_device": {"additionalProperties": false, "description": "AP device and RSSI threshold used by an RSSI zone", "properties": {"device_id": {"description": "Identifier of the AP device used by this RSSI zone", "format": "uuid", "type": "string"}, "rssi": {"description": "Minimum RSSI threshold for considering a device inside the zone", "type": "integer"}}, "type": "object"}, "stats_rssi_zones_devices": {"description": "AP devices and RSSI thresholds that define an RSSI zone", "items": {"$ref": "#/components/schemas/stats_rssi_zones_device"}, "type": "array"}, "stats_sdkclient": {"additionalProperties": false, "description": "Detailed statistics for an individual SDK client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the SDK client"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the SDK client was last observed, in epoch seconds"}, "map_id": {"description": "Map identifier for the SDK client's location, if known", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": ["string", "null"]}, "name": {"description": "Display name provided for the SDK client", "examples": ["John's iPhone"], "type": "string"}, "network_connection": {"$ref": "#/components/schemas/stats_sdkclient_network_connection", "description": "Current network connection details for the SDK client"}, "uuid": {"description": "Application UUID for the SDK client", "examples": ["ada72f8f-1643-e5c6-94db-f2a5636f1a64"], "format": "uuid", "type": "string"}, "x": {"description": "Horizontal map coordinate of the SDK client location, in pixels, if known", "examples": [60], "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the SDK client location, in pixels, if known", "examples": [80], "format": "double", "type": "number"}}, "required": ["id", "uuid", "network_connection"], "type": "object"}, "stats_sdkclient_network_connection": {"additionalProperties": false, "description": "Current network connection details reported for an SDK client", "properties": {"mac": {"description": "Current network connection MAC address reported for the SDK client", "type": "string"}, "rssi": {"description": "Received signal strength indicator for the SDK client's current network connection, in dBm", "type": "number"}, "signal_level": {"description": "Numeric signal quality level reported with the SDK client's current network connection", "type": "number"}, "type": {"description": "Network connection type reported for the SDK client, such as WiFi", "type": "string"}}, "required": ["type", "rssi", "mac", "signal_level"], "type": "object"}, "stats_sdkclients": {"description": "SDK client statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_sdkclient"}, "type": "array"}, "stats_site": {"additionalProperties": false, "description": "Site metadata and aggregate device/client counts returned by organization site stats endpoints", "properties": {"address": {"description": "Configured physical address for the site", "type": "string"}, "alarmtemplate_id": {"description": "Alarm template applied to the site, when one overrides the organization-level alarm template", "format": "uuid", "type": ["string", "null"]}, "analyticEnabled": {"description": "Whether analytics features are enabled for the site", "type": "boolean"}, "aptemplate_id": {"description": "AP template applied to access points in the site, when configured", "format": "uuid", "type": ["string", "null"]}, "country_code": {"description": "Two-letter country code used for site configuration generation", "type": "string"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the site was created, in epoch seconds"}, "engagementEnabled": {"description": "Whether engagement features are enabled for the site", "type": "boolean"}, "gatewaytemplate_id": {"description": "Gateway template applied to gateways in the site, when configured", "format": "uuid", "type": ["string", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the site"}, "lat": {"description": "Geographic latitude coordinate for the site location", "type": "number"}, "latlng": {"$ref": "#/components/schemas/lat_lng", "description": "Latitude and longitude for the site location"}, "lng": {"description": "Longitude coordinate for the site location", "type": "number"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the site was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managing MSP identifier for the site, when applicable"}, "name": {"description": "Display name of the site", "type": "string"}, "networktemplate_id": {"description": "Network template applied to the site, when configured", "format": "uuid", "type": ["string", "null"]}, "notes": {"description": "Free-form notes configured for the site", "type": "string"}, "num_ap": {"description": "Number of access points in the site", "type": "integer"}, "num_ap_connected": {"description": "Number of access points currently connected in the site", "type": "integer"}, "num_clients": {"description": "Number of clients currently counted in the site", "type": "integer"}, "num_devices": {"description": "Number of managed devices in the site", "type": "integer"}, "num_devices_connected": {"description": "Number of managed devices currently connected in the site", "type": "integer"}, "num_gateway": {"description": "Number of gateways in the site", "type": "integer"}, "num_gateway_connected": {"description": "Number of gateways currently connected in the site", "type": "integer"}, "num_switch": {"description": "Number of switches in the site", "type": "integer"}, "num_switch_connected": {"description": "Number of switches currently connected in the site", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the site"}, "rftemplate_id": {"description": "RF template applied to the site, when configured", "format": "uuid", "type": ["string", "null"]}, "secpolicy_id": {"description": "Security policy applied to the site, when configured", "format": "uuid", "type": ["string", "null"]}, "sitegroup_ids": {"$ref": "#/components/schemas/site_stats_sitegroup_ids", "description": "Site group identifiers for groups that include this site"}, "sitetemplate_id": {"description": "Site template applied to the site, when configured", "format": "uuid", "type": ["string", "null"]}, "timezone": {"description": "IANA time zone name for the site", "type": "string"}, "tzoffset": {"description": "Time zone offset value derived from the site's timezone", "type": "integer"}}, "required": ["country_code", "created_time", "id", "latlng", "modified_time", "name", "num_ap", "num_ap_connected", "num_clients", "num_devices", "num_devices_connected", "num_gateway", "num_gateway_connected", "num_switch", "num_switch_connected", "org_id", "timezone", "tzoffset"], "type": "object"}, "stats_sites": {"description": "Site statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_site"}, "type": "array"}, "stats_switch": {"additionalProperties": false, "description": "Switch statistics reported by Mist for a site or organization stats response", "properties": {"ap_redundancy": {"$ref": "#/components/schemas/stats_switch_ap_redundancy", "description": "AP redundancy statistics associated with the switch"}, "arp_table_stats": {"$ref": "#/components/schemas/arp_table_stats", "description": "ARP table utilization statistics for the switch"}, "auto_upgrade_stat": {"$ref": "#/components/schemas/stats_ap_auto_upgrade", "description": "Automatic firmware upgrade status for the switch"}, "cert_expiry": {"description": "Time when the switch certificate expires, in epoch seconds", "format": "int64", "type": "integer"}, "clients": {"$ref": "#/components/schemas/stats_switch_clients", "description": "Switch port clients currently observed by the switch"}, "clients_stats": {"$ref": "#/components/schemas/stats_switch_clients_stats", "description": "Aggregate client counts reported for the switch"}, "config_status": {"description": "Configuration synchronization status reported for the switch", "readOnly": true, "type": "string"}, "config_timestamp": {"description": "Time when the switch configuration status was last updated, in epoch seconds", "type": "integer"}, "config_version": {"description": "Currently applied configuration version for the switch", "type": "integer"}, "cpu_stat": {"$ref": "#/components/schemas/cpu_stat", "description": "Processor utilization statistics for the switch"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the switch record was created, in epoch seconds"}, "deviceprofile_id": {"description": "Applied device profile identifier for the switch, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "dhcpd_stat": {"$ref": "#/components/schemas/dhcpd_stat", "description": "Lease pool statistics from the switch DHCP service"}, "evpntopo_id": {"description": "Associated EVPN topology identifier for the switch, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "ext_ip": {"description": "Public IP address observed for the switch", "type": "string"}, "fw_versions_outofsync": {"description": "Whether firmware versions are out of sync across switch members", "readOnly": true, "type": "boolean"}, "fwupdate": {"$ref": "#/components/schemas/fwupdate_stat", "description": "Firmware update status for the switch"}, "has_pcap": {"description": "Whether the switch supports packet capture", "examples": [false], "readOnly": true, "type": "boolean"}, "hostname": {"description": "Device-reported hostname for the switch", "examples": ["sj-sw1"], "readOnly": true, "type": "string"}, "hw_rev": {"description": "Device hardware revision number", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the switch record"}, "if_stat": {"$ref": "#/components/schemas/if_stat", "description": "Interface traffic statistics for the switch"}, "ip": {"description": "Management IP address reported for the switch", "examples": ["10.2.11.137"], "readOnly": true, "type": "string"}, "ip_stat": {"$ref": "#/components/schemas/ip_stat", "description": "Layer 3 address statistics for the switch"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the switch, in epoch seconds"}, "last_trouble": {"$ref": "#/components/schemas/last_trouble", "description": "Most recent trouble-code summary reported for the switch"}, "mac": {"description": "Switch MAC address reported by Mist", "readOnly": true, "type": "string"}, "mac_table_stats": {"$ref": "#/components/schemas/mac_table_stats", "description": "Layer 2 MAC table utilization statistics for the switch"}, "map_id": {"description": "Placement map identifier associated with the switch, when present", "format": "uuid", "readOnly": true, "type": ["string", "null"]}, "memory_stat": {"$ref": "#/components/schemas/memory_stat", "description": "Utilization statistics for switch memory"}, "model": {"description": "Switch model name reported by Mist", "examples": ["EX4600"], "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the switch record was last modified, in epoch seconds"}, "module_stat": {"$ref": "#/components/schemas/stats_switch_module_stat", "description": "Hardware module statistics for the switch"}, "name": {"description": "Device name if configured", "examples": ["sj-sw1"], "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the switch statistics record"}, "ports": {"$ref": "#/components/schemas/stats_switch_ports", "description": "Port statistics reported by the switch"}, "route_summary_stats": {"$ref": "#/components/schemas/route_summary_stats", "description": "Route table summary statistics for the switch"}, "serial": {"description": "Switch serial number reported by Mist", "examples": ["TC3714190003"], "readOnly": true, "type": "string"}, "service_stat": {"$ref": "#/components/schemas/service_stat", "description": "System service statistics for the switch"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Associated site identifier for the switch statistics record"}, "status": {"description": "Connection status reported for the switch, such as connected", "examples": ["connected"], "readOnly": true, "type": "string"}, "tag_id": {"description": "Numeric inventory tag identifier associated with the switch", "type": "integer"}, "tag_uuid": {"description": "Inventory tag UUID associated with the switch", "format": "uuid", "type": "string"}, "type": {"$ref": "#/components/schemas/device_type_switch", "description": "Device type discriminator for switch statistics"}, "uptime": {"description": "Elapsed time since the switch last booted, in seconds", "examples": [13501], "readOnly": true, "type": ["number", "null"]}, "vc_mac": {"description": "Virtual Chassis MAC address reported for the switch, when present", "readOnly": true, "type": ["string", "null"]}, "vc_setup_info": {"$ref": "#/components/schemas/stats_switch_vc_setup_info", "description": "Virtual Chassis setup request and status details for the switch"}, "version": {"description": "Software version running on the switch", "examples": ["18.4R1.8"], "readOnly": true, "type": ["string", "null"]}}, "required": ["type"], "type": "object"}, "stats_switch_ap_redundancy": {"additionalProperties": false, "description": "AP switch redundancy coverage summary for a switch", "properties": {"modules": {"additionalProperties": {"$ref": "#/components/schemas/stats_switch_ap_redundancy_module"}, "description": "Per-module AP redundancy counts for VC or stacked switches", "type": "object"}, "num_aps": {"description": "Total number of APs considered for switch redundancy", "examples": [15], "type": "integer"}, "num_aps_with_switch_redundancy": {"description": "Number of APs that have switch redundancy coverage", "examples": [8], "type": "integer"}}, "type": "object"}, "stats_switch_ap_redundancy_module": {"additionalProperties": false, "description": "AP switch redundancy counts for one VC or stack member", "properties": {"num_aps": {"description": "Total number of APs connected through this switch member", "examples": [15], "type": "integer"}, "num_aps_with_switch_redundancy": {"description": "Number of APs on this switch member with switch redundancy coverage", "examples": [8], "type": "integer"}}, "type": "object"}, "stats_switch_client_item": {"additionalProperties": false, "description": "Client observed on a switch port in switch statistics", "properties": {"device_mac": {"description": "Switch MAC address for the device reporting this client entry", "type": "string"}, "hostname": {"description": "Reported client hostname, when known", "type": "string"}, "mac": {"description": "Client MAC address observed on the switch port", "type": "string"}, "port_id": {"description": "Switch port identifier where the client was observed", "type": "string"}}, "type": "object"}, "stats_switch_clients": {"description": "Clients observed on switch ports in switch statistics", "items": {"$ref": "#/components/schemas/stats_switch_client_item"}, "type": "array"}, "stats_switch_clients_stats": {"additionalProperties": false, "description": "Aggregate switch client counts", "properties": {"total": {"$ref": "#/components/schemas/stats_switch_clients_stats_total", "description": "Aggregate client counts across the switch"}}, "type": "object"}, "stats_switch_clients_stats_total": {"additionalProperties": false, "description": "Total AP and wired-client counts for switch client statistics", "properties": {"num_aps": {"$ref": "#/components/schemas/stats_switch_clients_stats_total_total_num_aps", "description": "AP counts included in the aggregate switch client statistics"}, "num_wired_clients": {"description": "Number of wired clients included in the aggregate switch client statistics", "type": "integer"}}, "type": "object"}, "stats_switch_clients_stats_total_total_num_aps": {"description": "AP count values included in the aggregate switch client statistics", "items": {"type": "integer"}, "type": "array"}, "stats_switch_module_stat": {"description": "Hardware module statistics reported by a switch", "items": {"$ref": "#/components/schemas/stats_switch_module_stat_item"}, "minItems": 1, "type": "array", "uniqueItems": true}, "stats_switch_module_stat_item": {"additionalProperties": false, "description": "Hardware module status and firmware inventory for a switch", "properties": {"backup_version": {"description": "Backup software version stored on the switch module", "readOnly": true, "type": ["string", "null"]}, "bios_version": {"description": "BIOS firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "boot_partition": {"description": "Active boot partition used by the switch module", "type": "string"}, "cpld_version": {"description": "CPLD firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "cpu_stat": {"$ref": "#/components/schemas/cpu_stat", "description": "Processor utilization statistics for the switch module"}, "errors": {"$ref": "#/components/schemas/module_stat_item_errors", "description": "Hardware error records reported for the switch module"}, "fans": {"$ref": "#/components/schemas/module_stat_item_fans", "description": "Cooling fan status records for the switch module"}, "fpc_idx": {"description": "FPC index identifying this switch module", "readOnly": true, "type": "integer"}, "fpga_version": {"description": "FPGA firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed this switch module, in epoch seconds"}, "locating": {"description": "Whether the switch module locator indicator is active", "type": "boolean"}, "mac": {"description": "Switch module MAC address reported by Mist", "examples": ["fc3342123456"], "type": "string"}, "memory_stat": {"$ref": "#/components/schemas/memory_stat", "description": "Utilization statistics for switch module memory"}, "model": {"description": "Switch module model name reported by Mist", "examples": ["EX4300-48P"], "readOnly": true, "type": ["string", "null"]}, "optics_cpld_version": {"description": "Optics CPLD firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "pending_version": {"description": "Pending software version staged for the switch module", "readOnly": true, "type": ["string", "null"]}, "pics": {"$ref": "#/components/schemas/module_stat_item_pics", "description": "Physical Interface Card status records for the switch module"}, "poe": {"$ref": "#/components/schemas/module_stat_item_poe", "description": "Power over Ethernet telemetry for the switch module"}, "poe_version": {"description": "PoE controller firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "power_cpld_version": {"description": "Power CPLD firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "psus": {"$ref": "#/components/schemas/module_stat_item_psus", "description": "Power supply status records for the switch module"}, "re_fpga_version": {"description": "Routing Engine FPGA firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "recovery_version": {"description": "Recovery software version stored on the switch module", "readOnly": true, "type": ["string", "null"]}, "serial": {"description": "Switch module serial number reported by Mist", "examples": ["PX8716230021"], "readOnly": true, "type": ["string", "null"]}, "status": {"description": "Connection status reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "temperatures": {"$ref": "#/components/schemas/module_stat_item_temperatures", "description": "Temperature sensor readings for the switch module"}, "tmc_fpga_version": {"description": "TMC FPGA firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "type": {"description": "Module type reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "uboot_version": {"description": "U-Boot firmware version reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "uptime": {"description": "Elapsed time since the switch module last booted, in seconds", "readOnly": true, "type": ["integer", "null"]}, "vc_links": {"$ref": "#/components/schemas/module_stat_item_vc_links", "description": "Virtual chassis link records for the switch module"}, "vc_mode": {"description": "Virtual chassis mode reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "vc_role": {"description": "enum: `master`, `backup`, `linecard`", "examples": ["master"], "readOnly": true, "type": ["string", "null"]}, "vc_state": {"description": "Virtual chassis state reported for the switch module", "readOnly": true, "type": ["string", "null"]}, "version": {"description": "Software version running on the switch module", "readOnly": true, "type": ["string", "null"]}}, "type": "object"}, "stats_switch_port": {"additionalProperties": false, "description": "Switch port statistics record returned by stats APIs", "properties": {"active": {"description": "Indicates if interface is active/inactive", "readOnly": true, "type": "boolean"}, "auth_state": {"$ref": "#/components/schemas/port_auth_state", "description": "Authentication state of the port"}, "disabled": {"description": "Indicates if interface is disabled", "readOnly": true, "type": "boolean"}, "for_site": {"description": "Whether the reporting device is scoped to a specific site", "readOnly": true, "type": "boolean"}, "full_duplex": {"description": "Indicates full or half duplex", "examples": [true], "type": "boolean"}, "jitter": {"description": "Last sampled jitter of the interface", "readOnly": true, "type": "number"}, "last_flapped": {"description": "Indicates when the port was last flapped", "format": "double", "readOnly": true, "type": "number"}, "latency": {"description": "Last sampled latency of the interface", "readOnly": true, "type": "number"}, "loss": {"description": "Last sampled loss of the interface", "readOnly": true, "type": "number"}, "lte_iccid": {"description": "LTE ICCID value, Check for null/empty", "type": ["string", "null"]}, "lte_imei": {"description": "LTE IMEI value, Check for null/empty", "type": ["string", "null"]}, "lte_imsi": {"description": "LTE IMSI value, Check for null/empty", "type": ["string", "null"]}, "mac": {"description": "Switch MAC address that reported these port statistics", "examples": ["5c4527a96580"], "readOnly": true, "type": "string"}, "mac_count": {"description": "Number of MAC addresses in the forwarding table", "readOnly": true, "type": "integer"}, "mac_limit": {"description": "Limit on number of dynamically learned macs", "minimum": 0, "readOnly": true, "type": "integer"}, "neighbor_mac": {"description": "chassis identifier of the chassis type listed", "examples": ["64d814353400"], "readOnly": true, "type": "string"}, "neighbor_port_desc": {"description": "Description supplied by the system on the interface E.g. \"GigabitEthernet2/0/39\"", "examples": ["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. \"Kumar-Acc-SW.mist.local\"", "examples": ["CORP-D-SW-2"], "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier of the reporting switch"}, "poe_disabled": {"description": "Is the POE disabled", "readOnly": true, "type": "boolean"}, "poe_mode": {"$ref": "#/components/schemas/stats_switch_port_poe_mode", "description": "PoE mode reported for the port"}, "poe_on": {"description": "Is the device attached to POE", "readOnly": true, "type": "boolean"}, "poe_priority": {"$ref": "#/components/schemas/poe_priority", "description": "PoE priority configured for the port"}, "port_id": {"description": "Identifier of the port reporting these statistics", "examples": ["ge-0/0/0"], "readOnly": true, "type": "string"}, "port_mac": {"description": "MAC address assigned to the interface", "examples": ["5c4527a96580"], "readOnly": true, "type": "string"}, "port_usage": {"description": "Logical usage assigned to the port", "examples": ["lan"], "type": "string"}, "power_draw": {"description": "Amount of power being used by the interface at the time the command is executed. Unit in watts.", "readOnly": true, "type": "number"}, "rx_bcast_pkts": {"description": "Number of broadcast packets received on the interface", "readOnly": true, "type": "integer"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Receive throughput of the port, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received on the port"}, "rx_errors": {"description": "Number of receive errors observed on the interface", "readOnly": true, "type": "integer"}, "rx_mcast_pkts": {"description": "Number of multicast packets received on the interface", "readOnly": true, "type": "integer"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received on the port"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier of the reporting switch"}, "speed": {"description": "Current link speed of the port, in Mbps", "examples": [1000], "readOnly": true, "type": "integer"}, "stp_role": {"$ref": "#/components/schemas/port_stp_role", "description": "Current spanning tree role of the port"}, "stp_state": {"$ref": "#/components/schemas/port_stp_state", "description": "Current spanning tree state of the port"}, "tx_bcast_pkts": {"description": "Number of broadcast packets transmitted on the interface", "readOnly": true, "type": "integer"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Transmit throughput of the port, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted on the port"}, "tx_errors": {"description": "Number of transmit errors observed on the interface", "readOnly": true, "type": "integer"}, "tx_mcast_pkts": {"description": "Number of multicast packets transmitted on the interface", "readOnly": true, "type": "integer"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted on the port"}, "type": {"$ref": "#/components/schemas/stats_switch_port_type", "description": "Detected device category connected to the port, when available"}, "unconfigured": {"description": "Indicates if interface is unconfigured", "readOnly": true, "type": "boolean"}, "up": {"description": "Indicates if interface is up", "readOnly": true, "type": "boolean"}, "uplink": {"description": "Indicates if interface is an uplink port", "readOnly": true, "type": "boolean"}, "xcvr_model": {"description": "Optic Slot ModelName, Check for null/empty", "examples": ["SFP+-10G-SR"], "readOnly": true, "type": "string"}, "xcvr_part_number": {"description": "Optic Slot Partnumber, Check for null/empty", "examples": ["740-021487"], "readOnly": true, "type": "string"}, "xcvr_serial": {"description": "Optic Slot SerialNumber, Check for null/empty", "examples": ["N6AA9HT"], "readOnly": true, "type": "string"}}, "required": ["mac", "org_id", "port_id", "site_id"], "type": "object"}, "stats_switch_port_poe_mode": {"description": "enum: `802.3af`, `802.3at`, `802.3bt`", "enum": ["802.3af", "802.3at", "802.3bt"], "type": "string"}, "stats_switch_port_type": {"description": "device type. enum: `ap`, `ble`, `gateway`, `mxedge`, `nac`, `switch`", "enum": ["ap", "ble", "gateway", "mxedge", "nac", "switch"], "examples": ["gateway"], "type": "string"}, "stats_switch_ports": {"description": "Switch port statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_switch_port"}, "type": "array"}, "stats_switch_vc_setup_info": {"additionalProperties": false, "description": "Virtual Chassis setup request and status details reported by a switch", "properties": {"config_type": {"description": "Provisioning mode used for the Virtual Chassis setup", "examples": ["nonprovisioned"], "readOnly": true, "type": "string"}, "current_stats": {"description": "Status currently reported for the Virtual Chassis setup workflow", "examples": ["VCSETUP_WAITING"], "readOnly": true, "type": "string"}, "err_missing_dev_id_fpc": {"description": "Whether the Virtual Chassis setup is missing a device ID for an FPC member", "readOnly": true, "type": "boolean"}, "last_update": {"description": "Most recent update time for the Virtual Chassis setup status", "format": "double", "readOnly": true, "type": "number"}, "request_time": {"description": "Time when the Virtual Chassis setup request was submitted", "format": "double", "readOnly": true, "type": "number"}, "request_type": {"description": "Virtual Chassis setup request type", "examples": ["vc_create"], "readOnly": true, "type": "string"}}, "type": "object"}, "stats_unconnected_client": {"additionalProperties": false, "description": "Location statistics for an unconnected Wi-Fi client observed by an AP", "properties": {"ap_mac": {"description": "MAC address of the AP that heard the client", "type": "string"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the unconnected client, in epoch seconds"}, "mac": {"description": "Unconnected client MAC address observed by an AP", "type": "string"}, "manufacture": {"description": "Device manufacture, through fingerprinting or OUI", "type": "string"}, "map_id": {"description": "Map identifier for the unconnected client's location, if known", "format": "uuid", "type": ["string", "null"]}, "rssi": {"description": "Client RSSI observed by the AP that heard the client (in dBm)", "type": "integer"}, "x": {"description": "Horizontal map coordinate of the unconnected client location, in pixels, if known", "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the unconnected client location, in pixels, if known", "format": "double", "type": "number"}}, "required": ["mac", "ap_mac", "y", "rssi", "manufacture"], "type": "object"}, "stats_unconnected_clients": {"description": "Unconnected Wi-Fi client location statistics returned by the request", "items": {"$ref": "#/components/schemas/stats_unconnected_client"}, "type": "array"}, "stats_wan_client": {"additionalProperties": false, "description": "WAN client record returned by WAN client search", "properties": {"dhcp_expire_time": {"description": "DHCP lease expiration time for the WAN client, in epoch seconds", "type": "number"}, "dhcp_start_time": {"description": "DHCP lease start time for the WAN client, in epoch seconds", "type": "number"}, "hostname": {"$ref": "#/components/schemas/stats_wan_client_hostname", "description": "Observed hostnames for the WAN client during the search window"}, "ip": {"$ref": "#/components/schemas/stats_wan_client_ip", "description": "Observed IP addresses for the WAN client during the search window"}, "ip_src": {"description": "Source used to learn the WAN client IP address, such as dhcp", "examples": ["dhcp"], "type": "string"}, "last_hostname": {"description": "Most recent hostname observed for the WAN client", "examples": ["sonoszp"], "type": "string"}, "last_ip": {"description": "Most recent IP address observed for the WAN client", "examples": ["192.168.1.139"], "type": "string"}, "mfg": {"description": "Manufacturer inferred for the WAN client", "examples": ["Sonos"], "type": "string"}, "network": {"description": "Mist network name associated with the WAN client", "examples": ["lan"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization identifier for the WAN client record"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the WAN client record"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the WAN client record was observed, in epoch seconds"}, "wcid": {"description": "WAN client identifier associated with the record", "examples": ["8bbe7389-212b-c65d-2208-00fab2017936"], "type": "string"}}, "type": "object"}, "stats_wan_client_hostname": {"description": "Hostnames observed for a WAN client", "items": {"examples": ["sonoszp"], "type": "string"}, "type": "array"}, "stats_wan_client_ip": {"description": "IP addresses observed for a WAN client", "items": {"examples": ["192.168.1.139"], "type": "string"}, "type": "array"}, "stats_wan_clients": {"description": "WAN client records returned by the search response", "items": {"$ref": "#/components/schemas/stats_wan_client"}, "type": "array"}, "stats_wan_tunnel": {"additionalProperties": false, "description": "WAN tunnel statistics record returned by tunnel search", "properties": {"auth_algo": {"description": "Authentication algorithm negotiated for the tunnel", "type": "string"}, "encrypt_algo": {"description": "Encryption algorithm negotiated for the tunnel", "type": "string"}, "ike_version": {"description": "IKE version used to establish the tunnel", "type": "string"}, "ip": {"description": "Local IP address used by the tunnel", "type": "string"}, "last_event": {"description": "Most recent reason the tunnel went down", "type": "string"}, "mac": {"description": "Router MAC address reporting the tunnel statistics", "type": "string"}, "node": {"description": "HA node handling the tunnel, such as node0 or node1", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier of the router reporting the tunnel statistics"}, "peer_host": {"description": "Hostname or configured peer host of the remote tunnel endpoint", "type": "string"}, "peer_ip": {"description": "IP address of the remote tunnel endpoint", "type": "string"}, "priority": {"$ref": "#/components/schemas/tunnel_priority", "description": "Relative preference assigned to the tunnel"}, "protocol": {"$ref": "#/components/schemas/wan_tunnel_protocol", "description": "Tunnel protocol used for the connection"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received on the tunnel"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received on the tunnel"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier of the router reporting the tunnel statistics"}, "tunnel_name": {"description": "Name of the Mist-managed WAN tunnel", "type": "string"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted on the tunnel"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted on the tunnel"}, "up": {"description": "Indicates whether the tunnel is currently up", "type": "boolean"}, "uptime": {"description": "Duration since the tunnel security association was established", "type": "integer"}, "wan_name": {"description": "Name of the WAN interface carrying the tunnel", "examples": ["wan"], "type": "string"}}, "required": ["peer_ip"], "type": "object"}, "stats_wired_client": {"additionalProperties": false, "description": "Wired client statistics for a client connected through an AP Ethernet port", "properties": {"auth_state": {"description": "Authorization state reported for the wired client", "minLength": 1, "type": "string"}, "device_id": {"description": "Identifier of the AP the wired client is connected to", "minLength": 1, "type": "string"}, "eth_port": {"description": "AP Ethernet port where the wired client is connected", "minLength": 1, "type": "string"}, "last_seen": {"description": "Time when transmit or receive traffic was last observed for the wired client", "type": "number"}, "mac": {"description": "Wired client MAC address observed on the AP Ethernet port", "minLength": 1, "type": "string"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received by the wired client connection"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received by the wired client connection"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the wired client statistics record"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted by the wired client connection"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted by the wired client connection"}, "uptime": {"description": "Elapsed time since the wired client connected, in seconds", "type": "number"}, "vlan_id": {"description": "VLAN identifier used by the wired client, when present", "type": "number"}}, "required": ["mac"], "type": "object", "uniqueItems": true}, "stats_wireless_client": {"additionalProperties": false, "description": "Wireless client connection, traffic, and location statistics", "properties": {"accuracy": {"description": "Estimated client location accuracy, in meter", "type": "integer"}, "airespace_ifname": {"description": "RADIUS Airespace interface name reported for the wireless client, when available", "type": "string"}, "airwatch": {"$ref": "#/components/schemas/stats_wireless_client_airwatch", "description": "Mobile device management authorization information from AirWatch for the wireless client"}, "annotation": {"description": "User-visible annotation label applied to the wireless client", "type": "string"}, "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"}, "assoc_time": {"description": "Time when the wireless client associated to the AP, in epoch seconds", "type": "integer"}, "band": {"$ref": "#/components/schemas/dot11_band", "description": "Wi-Fi radio band used by the wireless client connection"}, "bssid": {"description": "AP radio BSSID serving the wireless client connection", "type": "string"}, "channel": {"description": "Radio channel used by the wireless client connection", "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"}, "group": {"description": "Client group label reported for the wireless client", "type": "string"}, "guest": {"$ref": "#/components/schemas/guest", "description": "Portal guest details for the wireless client"}, "hostname": {"description": "DHCP hostname learned for the wireless client", "type": "string"}, "idle_time": {"description": "How long, in seconds, has the client been idle (since the last RX packet)", "type": "number"}, "ip": {"description": "Current IP address reported for the wireless client", "type": "string"}, "is_guest": {"default": false, "description": "Whether this is a guest", "type": "boolean"}, "key_mgmt": {"description": "Security key-management and cipher suite used by the wireless client", "type": "string"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when Mist last observed the wireless client, in epoch seconds"}, "mac": {"description": "Wireless client MAC address observed by Mist", "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", "description": "802.11 protocol amendment used by the wireless client"}, "psk_id": {"description": "PSK id (if multi-psk is used)", "format": "uuid", "type": "string"}, "rssi": {"description": "Received signal strength indicator for the wireless client, in dBm", "type": "number"}, "rssizones": {"$ref": "#/components/schemas/stats_wireless_client_rssi_zones", "description": "RSSI zone memberships for the wireless client"}, "rx_bps": {"$ref": "#/components/schemas/rx_bps", "description": "Receive throughput for the wireless client, in bits per second"}, "rx_bytes": {"$ref": "#/components/schemas/rx_bytes", "description": "Total bytes received by the wireless client connection"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Total packets received by the wireless client connection"}, "rx_rate": {"$ref": "#/components/schemas/rx_rate", "description": "Receive PHY rate for the wireless client connection, in Mbps"}, "rx_retries": {"$ref": "#/components/schemas/rx_retries", "description": "Receive retry count for the wireless client connection"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the wireless client statistics record"}, "snr": {"description": "Signal-to-noise ratio for the wireless client connection", "type": "number"}, "ssid": {"description": "Wireless SSID used by the client connection", "type": "string"}, "tx_bps": {"$ref": "#/components/schemas/tx_bps", "description": "Transmit throughput for the wireless client, in bits per second"}, "tx_bytes": {"$ref": "#/components/schemas/tx_bytes", "description": "Total bytes transmitted by the wireless client connection"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Total packets transmitted by the wireless client connection"}, "tx_rate": {"$ref": "#/components/schemas/tx_rate", "description": "Transmit PHY rate for the wireless client connection, in Mbps"}, "tx_retries": {"$ref": "#/components/schemas/tx_retries", "description": "Transmit retry count for the wireless client connection"}, "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": "User identity learned from 802.1X, per-user PSK, or user portal authentication", "type": "string"}, "vbeacons": {"$ref": "#/components/schemas/stats_wireless_client_vbeacons", "description": "Virtual beacon associations for the wireless client"}, "vlan_id": {"description": "VLAN ID, could be empty (from older AP)", "type": "string"}, "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": {"$ref": "#/components/schemas/stats_wireless_client_wxrule_usages", "description": "WxLAN rule usage counters for the wireless client"}, "x": {"description": "Estimated client location in pixels", "format": "double", "type": "number"}, "x_m": {"description": "Estimated client location in meter", "format": "double", "type": "number"}, "y": {"description": "Estimated client location in pixels", "format": "double", "type": "number"}, "y_m": {"description": "Estimated client location in meter", "format": "double", "type": "number"}, "zones": {"$ref": "#/components/schemas/stats_wireless_client_zones", "description": "Zone memberships for the wireless client"}}, "required": ["ap_id", "ap_mac", "band", "channel", "is_guest", "key_mgmt", "mac", "proto", "rssi", "snr", "ssid", "wlan_id"], "type": "object"}, "stats_wireless_client_airwatch": {"additionalProperties": false, "description": "AirWatch authorization information reported for a wireless client", "properties": {"authorized": {"description": "Whether the wireless client is authorized by AirWatch", "type": "boolean"}}, "required": ["authorized"], "type": "object"}, "stats_wireless_client_rssi_zone": {"additionalProperties": false, "description": "RSSI zone currently containing a wireless client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "RSSI zone identifier that currently contains the wireless client"}, "since": {"description": "Time when the wireless client entered the RSSI zone, in epoch seconds", "type": "number"}}, "type": "object"}, "stats_wireless_client_rssi_zones": {"description": "RSSI zone memberships for the wireless client, including when each membership began", "items": {"$ref": "#/components/schemas/stats_wireless_client_rssi_zone"}, "type": "array"}, "stats_wireless_client_vbeacon": {"additionalProperties": false, "description": "Virtual beacon currently associated with a wireless client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Virtual beacon identifier currently associated with the wireless client"}, "since": {"description": "Time when the wireless client began matching the virtual beacon, in epoch seconds", "type": "number"}}, "type": "object"}, "stats_wireless_client_vbeacons": {"description": "Virtual beacon associations for the wireless client, including when each began", "items": {"$ref": "#/components/schemas/stats_wireless_client_vbeacon"}, "type": "array"}, "stats_wireless_client_wxrule_usage": {"additionalProperties": false, "description": "WxLAN rule usage counter for one wireless tag", "properties": {"tag_id": {"description": "WxLAN tag identifier for this rule usage entry", "format": "uuid", "type": "string"}, "usage": {"description": "Count recorded for this WxLAN rule usage entry", "type": "integer"}}, "type": "object"}, "stats_wireless_client_wxrule_usages": {"description": "Current WxLAN rule usage counters keyed by wireless tag", "items": {"$ref": "#/components/schemas/stats_wireless_client_wxrule_usage"}, "type": "array"}, "stats_wireless_client_zone": {"additionalProperties": false, "description": "Zone currently containing a wireless client", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Zone identifier that currently contains the wireless client"}, "since": {"description": "Time when the wireless client entered the zone, in epoch seconds", "type": "number"}}, "type": "object"}, "stats_wireless_client_zones": {"description": "Zone memberships for the wireless client, including when each membership began", "items": {"$ref": "#/components/schemas/stats_wireless_client_zone"}, "type": "array"}, "stats_wireless_clients": {"description": "Wireless client statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_wireless_client"}, "type": "array"}, "stats_wxrule": {"additionalProperties": false, "description": "WxLAN rule usage statistics for a site", "properties": {"action": {"$ref": "#/components/schemas/stats_wxrule_action", "description": "Allow or block behavior enforced by this WxLAN rule"}, "client_mac": {"$ref": "#/components/schemas/stats_wxrule_client_mac", "description": "Wireless client MAC addresses matching this WxLAN rule"}, "dst_allow_wxtags": {"$ref": "#/components/schemas/stats_wxrule_dst_allow_wxtags", "description": "Destination WxLAN tags explicitly allowed by this rule"}, "dst_deny_wxtags": {"$ref": "#/components/schemas/stats_wxrule_dst_deny_wxtags", "description": "Destination WxLAN tags denied by this rule"}, "dst_wxtags": {"$ref": "#/components/schemas/stats_wxrule_dst_wxtags", "description": "Destination WxLAN tags matched by this rule"}, "name": {"description": "Display name of the WxLAN rule", "examples": ["Guest"], "type": "string"}, "order": {"description": "Rule evaluation order for WxLAN matching", "examples": [1], "type": "integer"}, "src_wxtags": {"$ref": "#/components/schemas/stats_wxrule_src_wxtags", "description": "Source WxLAN tags matched by this rule"}, "usage": {"additionalProperties": {"$ref": "#/components/schemas/stats_wxrule_usage_properties"}, "description": "Flow counts keyed by destination WxLAN tag identifier", "examples": [{"1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3": {"num_flows": 60}, "d4134466-eec0-3756-6765-381c728a6037": {"num_flows": 60}}], "type": "object"}}, "required": ["name", "order", "src_wxtags", "dst_wxtags", "dst_allow_wxtags", "dst_deny_wxtags", "client_mac", "usage", "action"], "type": "object"}, "stats_wxrule_action": {"description": "Allow or block behavior enforced by this WxLAN rule. enum: `allow`, `block`", "enum": ["allow", "block"], "examples": ["allow"], "type": "string"}, "stats_wxrule_client_mac": {"description": "Wireless client MAC addresses matching a WxLAN rule", "examples": [["3bbbf819bb6f", "bd96cbc4910f"]], "items": {"type": "string"}, "type": "array"}, "stats_wxrule_dst_allow_wxtags": {"description": "Destination WxLAN tag identifiers explicitly allowed by a WxLAN rule", "examples": [["fff34466-eec0-3756-6765-381c728a6037", "eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "stats_wxrule_dst_deny_wxtags": {"description": "Destination WxLAN tag identifiers denied by a WxLAN rule", "examples": [["aaa34466-eec0-3756-6765-381c728a6037", "bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "stats_wxrule_dst_wxtags": {"description": "Destination WxLAN tag identifiers matched by a WxLAN rule", "examples": [["d4134466-eec0-3756-6765-381c728a6037", "1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "stats_wxrule_src_wxtags": {"description": "Source WxLAN tag identifiers matched by a WxLAN rule", "examples": [["8bfc2490-d726-3587-038d-cb2e71bd2330", "3aa8e73f-9f46-d827-8d6a-567bb7e67fc9"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "stats_wxrule_usage_properties": {"additionalProperties": false, "description": "Usage counters for one WxLAN rule destination tag", "properties": {"num_flows": {"description": "Number of flows counted for this WxLAN rule and destination tag", "type": "integer"}}, "type": "object"}, "stats_wxrules": {"description": "WxLAN rule usage statistics returned by the request", "items": {"$ref": "#/components/schemas/stats_wxrule"}, "type": "array"}, "stats_zone": {"additionalProperties": false, "description": "Zone statistics and occupancy counts for a site map zone", "properties": {"assets_wait": {"$ref": "#/components/schemas/stats_zone_assets_waits", "description": "BLE asset wait-time summary for the zone"}, "clients_wait": {"$ref": "#/components/schemas/stats_zone_clients_waits", "description": "Wi-Fi client wait-time summary for the zone"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the zone was created, in epoch seconds"}, "discovered_assets_wait": {"$ref": "#/components/schemas/stats_zone_discovered_assets_waits", "description": "Discovered BLE asset wait-time summary for the zone"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the zone"}, "map_id": {"description": "Map identifier for the zone", "examples": ["123449d4-d12f-4feb-b40f-5be0e2ae1234"], "format": "uuid", "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the zone was last modified, in epoch seconds"}, "name": {"description": "Display name of the zone", "examples": ["Zone A"], "type": "string"}, "num_assets": {"description": "Number of BLE assets currently counted in the zone", "examples": [0], "type": "integer"}, "num_clients": {"description": "Number of Wi-Fi clients currently counted in the zone, including connected and unconnected clients", "examples": [80], "type": "integer"}, "num_discovered_assets": {"description": "Number of discovered BLE assets currently counted in the zone", "examples": [0], "type": "integer"}, "num_sdkclients": {"description": "Number of SDK clients currently counted in the zone", "examples": [10], "type": "integer"}, "num_unconnected_clients": {"description": "Number of unconnected Wi-Fi clients currently counted in the zone", "examples": [80], "type": "integer"}, "occupancy_limit": {"description": "Configured occupancy limit for the zone", "examples": [4], "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier associated with the zone"}, "sdkclients_wait": {"$ref": "#/components/schemas/stats_zone_sdkclients_waits", "description": "SDK client wait-time summary for the zone"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier associated with the zone"}, "unconnected_clients_wait": {"$ref": "#/components/schemas/stats_zone_unconnected_clients_waits", "description": "Unconnected Wi-Fi client wait-time summary for the zone"}, "vertices": {"$ref": "#/components/schemas/zone_vertices", "description": "Zone polygon vertices in map pixel coordinates"}, "vertices_m": {"$ref": "#/components/schemas/zone_vertices_m", "description": "Zone polygon vertices in meters"}}, "required": ["id", "map_id", "name"], "type": "object"}, "stats_zone_assets_waits": {"additionalProperties": false, "description": "BLE asset wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [0], "type": "number"}, "max": {"description": "Longest wait time in seconds", "examples": [0], "type": "number"}, "min": {"description": "Shortest wait time in seconds", "examples": [0], "type": "number"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [0], "type": "number"}}, "type": "object"}, "stats_zone_clients_waits": {"additionalProperties": false, "description": "Client wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [1200], "type": "number"}, "max": {"description": "Longest wait time in seconds", "examples": [3610], "type": "number"}, "min": {"description": "Shortest wait time in seconds", "examples": [600], "type": "number"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [2800], "type": "number"}}, "type": "object"}, "stats_zone_details": {"additionalProperties": false, "description": "Detailed zone statistics and occupants for a site map zone", "properties": {"assets": {"$ref": "#/components/schemas/stats_zone_details_assets", "description": "BLE asset identifiers currently in the zone"}, "client_waits": {"$ref": "#/components/schemas/stats_zone_details_client_waits", "description": "Wi-Fi client wait-time summary for the zone"}, "clients": {"$ref": "#/components/schemas/stats_zone_details_clients", "description": "Wi-Fi client MAC addresses currently in the zone"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the zone"}, "map_id": {"description": "Map identifier for the zone", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "type": "string"}, "name": {"description": "Display name of the zone", "examples": ["Board Room"], "type": "string"}, "num_clients": {"description": "Number of Wi-Fi clients currently counted in the zone", "examples": [80], "type": "integer"}, "num_sdkclients": {"description": "Number of SDK clients currently counted in the zone", "examples": [0], "type": "integer"}, "sdkclients": {"$ref": "#/components/schemas/stats_zone_details_sdkclients", "description": "SDK client identifiers currently in the zone"}}, "required": ["client_waits", "id", "map_id", "name", "num_clients", "num_sdkclients"], "type": "object"}, "stats_zone_details_assets": {"description": "List of ble assets currently in the zone and when they entered", "items": {"examples": ["df8dff06ae90"], "type": "string"}, "type": "array"}, "stats_zone_details_client_waits": {"additionalProperties": false, "description": "Client wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [1200], "type": "integer"}, "max": {"description": "Longest wait time in seconds", "examples": [3610], "type": "integer"}, "min": {"description": "Shortest wait time in seconds", "examples": [600], "type": "integer"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [2800], "type": "integer"}}, "required": ["avg", "max", "min", "p95"], "type": "object"}, "stats_zone_details_clients": {"description": "List of clients currently in the zone and when they entered", "items": {"examples": ["5684dae9ac8b"], "type": "string"}, "type": "array"}, "stats_zone_details_sdkclients": {"description": "List of SDK Clients currently in the zone and when they entered", "items": {"examples": ["7e2b463d-c91c-ff7d-f3c0-6eccc6949ff8"], "type": "string"}, "type": "array"}, "stats_zone_discovered_assets_waits": {"additionalProperties": false, "description": "Discovered asset wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [0], "type": "number"}, "max": {"description": "Longest wait time in seconds", "examples": [0], "type": "number"}, "min": {"description": "Shortest wait time in seconds", "examples": [0], "type": "number"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [0], "type": "number"}}, "type": "object"}, "stats_zone_sdkclients_waits": {"additionalProperties": false, "description": "SDK client wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [0], "type": "number"}, "max": {"description": "Longest wait time in seconds", "examples": [0], "type": "number"}, "min": {"description": "Shortest wait time in seconds", "examples": [0], "type": "number"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [0], "type": "number"}}, "type": "object"}, "stats_zone_unconnected_clients_waits": {"additionalProperties": false, "description": "Unconnected Wi-Fi client wait time right now", "properties": {"avg": {"description": "Average wait time in seconds", "examples": [0], "type": "number"}, "max": {"description": "Longest wait time in seconds", "examples": [0], "type": "number"}, "min": {"description": "Shortest wait time in seconds", "examples": [0], "type": "number"}, "p95": {"description": "95th percentile of all the wait time(s)", "examples": [0], "type": "number"}}, "type": "object"}, "stats_zones": {"description": "Zone statistics records returned by a stats response", "items": {"$ref": "#/components/schemas/stats_zone"}, "type": "array"}, "strings": {"description": "Unique string values returned or accepted by this schema", "items": {"type": "string"}, "type": "array", "uniqueItems": true}, "suppressed_alarm": {"description": "Request body for suppressing organization alarms", "properties": {"applies": {"$ref": "#/components/schemas/suppressed_alarm_applies", "description": "If `scope`==`site`. Site and site-group targets where alarms are suppressed"}, "duration": {"default": 3600, "description": "Suppression length, in seconds. Maximum duration is 86400 * 180 (180 days). 0 is to un-suppress alarms", "maximum": 15552000, "minimum": 0, "type": "number"}, "scheduled_time": {"description": "Time when alarm suppression starts, in epoch seconds. Defaults to now; accepted range is from now to now + 7 days", "type": "integer"}, "scope": {"$ref": "#/components/schemas/suppressed_alarm_scope", "description": "Alarm suppression target level"}}, "type": "object"}, "suppressed_alarm_applies": {"additionalProperties": false, "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": {"$ref": "#/components/schemas/suppressed_alarm_applies_site_ids", "description": "Site identifiers included in the suppression scope. If provided, alarms are suppressed for the listed sites."}, "sitegroup_ids": {"$ref": "#/components/schemas/suppressed_alarm_applies_sitegroup_ids", "description": "Site group identifiers included in the suppression scope. If provided, alarms are suppressed for all sites in the listed site groups."}}, "type": "object"}, "suppressed_alarm_applies_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"}, "suppressed_alarm_applies_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"}, "suppressed_alarm_scope": {"default": "site", "description": "level of scope. enum: `org`, `site`", "enum": ["org", "site"], "type": "string"}, "sw_routing_policies": {"additionalProperties": {"$ref": "#/components/schemas/sw_routing_policy"}, "description": "Switch routing policies keyed by routing policy name", "type": "object"}, "sw_routing_policy": {"additionalProperties": false, "description": "Switch routing policy made of ordered match-action terms", "properties": {"terms": {"$ref": "#/components/schemas/sw_routing_policy_terms", "description": "Ordered terms evaluated by this switch routing policy"}}, "type": "object"}, "sw_routing_policy_term": {"additionalProperties": false, "description": "Switch routing policy term with match criteria and actions", "properties": {"actions": {"$ref": "#/components/schemas/sw_routing_policy_term_action", "description": "Policy actions applied when this routing policy term matches"}, "matching": {"$ref": "#/components/schemas/sw_routing_policy_term_matching", "description": "Route match criteria that must be satisfied before actions are applied"}, "name": {"description": "Display name of the switch routing policy term", "type": "string"}}, "required": ["name"], "type": "object"}, "sw_routing_policy_term_action": {"additionalProperties": false, "description": "Actions applied to routes matched by a switch routing policy term", "properties": {"accept": {"description": "Whether to accept routes that match this term", "type": "boolean"}, "community": {"$ref": "#/components/schemas/routing_policy_term_action_community", "description": "BGP communities to set when this term is used as an export policy"}, "local_preference": {"$ref": "#/components/schemas/routing_policy_local_preference", "description": "Preference value to set when this term is used as an import policy"}, "prepend_as_path": {"$ref": "#/components/schemas/routing_policy_term_action_prepend_as_path", "description": "AS path values to prepend when this term is used as an export policy"}}, "type": "object"}, "sw_routing_policy_term_matching": {"additionalProperties": false, "description": "Route match criteria for a switch routing policy term; all specified criteria must match", "properties": {"as_path": {"$ref": "#/components/schemas/routing_policy_term_matching_as_path", "description": "AS path values that routes must match"}, "community": {"$ref": "#/components/schemas/routing_policy_term_matching_community", "description": "BGP communities that routes must match"}, "prefix": {"$ref": "#/components/schemas/routing_policy_term_matching_prefix", "description": "Route prefixes that routes must match"}, "protocol": {"$ref": "#/components/schemas/sw_routing_policy_term_matching_protocol", "description": "Routing protocols that routes must match"}}, "type": "object"}, "sw_routing_policy_term_matching_protocol": {"description": "Routing protocols that can match a switch routing policy term", "items": {"$ref": "#/components/schemas/sw_routing_policy_term_matching_protocol_enum"}, "type": "array"}, "sw_routing_policy_term_matching_protocol_enum": {"description": "enum: `bgp`, `direct`, `evpn`, `ospf`, `static`", "enum": ["bgp", "direct", "evpn", "ospf", "static"], "type": "string"}, "sw_routing_policy_terms": {"description": "Ordered switch routing policy terms; at least one term is required", "items": {"$ref": "#/components/schemas/sw_routing_policy_term"}, "minItems": 1, "type": "array", "uniqueItems": true}, "switch_auto_upgrade": {"additionalProperties": false, "description": "Switch firmware auto-upgrade settings", "properties": {"custom_versions": {"$ref": "#/components/schemas/switch_auto_upgrade_custom_versions", "description": "Per-model switch firmware versions to use for auto-upgrade"}, "enabled": {"description": "Whether switch auto-upgrade is enabled", "type": "boolean"}, "snapshot": {"default": false, "description": "Whether to create a recovery snapshot during the upgrade process", "type": "boolean"}}, "type": "object"}, "switch_auto_upgrade_container": {"additionalProperties": false, "description": "Wrapper for switch firmware auto-upgrade settings", "properties": {"auto_upgrade": {"$ref": "#/components/schemas/switch_auto_upgrade", "description": "Switch firmware auto-upgrade configuration"}}, "type": "object"}, "switch_auto_upgrade_custom_versions": {"additionalProperties": {"type": "string"}, "description": "Custom version to be used. The Property Key is the switch hardware and the property value is the firmware version", "examples": [{"QFX5120-32C": "23.4R2-S2.1", "QFX5130-32CD": "23.4R2-S2.3"}], "type": "object"}, "switch_bgp_config": {"additionalProperties": false, "description": "Switch BGP configuration for a routing instance", "properties": {"auth_key": {"description": "Authentication key used for BGP neighbor sessions, when configured", "type": "string"}, "bfd_minimum_interval": {"description": "Minimum interval in milliseconds for BFD hello packets. A neighbor is considered failed when the device stops receiving replies after the specified interval. Value must be between 1 and 255000.", "maximum": 255000, "minimum": 1, "type": "integer"}, "export_policy": {"description": "Export policy must match one of the policy names defined in the `routing_policies` property.", "type": "string"}, "hold_time": {"$ref": "#/components/schemas/switch_bgp_config_hold_time", "description": "Default BGP hold time for switch BGP sessions"}, "import_policy": {"description": "Import policy must match one of the policy names defined in the `routing_policies` property.", "type": "string"}, "local_as": {"$ref": "#/components/schemas/bgp_as", "description": "Local BGP Autonomous System (AS) number for the switch"}, "neighbors": {"$ref": "#/components/schemas/switch_bgp_config_neighbors", "description": "BGP neighbor settings keyed by neighbor IP address"}, "networks": {"$ref": "#/components/schemas/switch_bgp_config_networks", "description": "Network names used to add BGP groups to the corresponding VRFs"}, "type": {"$ref": "#/components/schemas/switch_bgp_config_type", "description": "BGP session type for this switch BGP configuration"}}, "required": ["type", "local_as"], "type": "object"}, "switch_bgp_config_hold_time": {"description": "Hold time is three times the interval at which keepalive messages are sent. It indicates to the peer the length of time that it should consider the sender valid. Must be 0 or a number in the range 3-65535.", "oneOf": [{"$ref": "#/components/schemas/switch_bgp_config_hold_time_zero"}, {"$ref": "#/components/schemas/switch_bgp_config_hold_time_integer"}]}, "switch_bgp_config_hold_time_integer": {"description": "BGP hold time value from 3 to 65535 seconds", "maximum": 65535, "minimum": 3, "type": "integer"}, "switch_bgp_config_hold_time_zero": {"description": "BGP hold time value of 0", "enum": [0], "type": "integer"}, "switch_bgp_config_neighbor": {"additionalProperties": false, "description": "Per-neighbor switch BGP session settings", "properties": {"export_policy": {"description": "Export policy must match one of the policy names defined in the `routing_policies` property.", "type": "string"}, "hold_time": {"$ref": "#/components/schemas/switch_bgp_config_hold_time", "description": "BGP hold time for this neighbor"}, "import_policy": {"description": "Import policy must match one of the policy names defined in the `routing_policies` property.", "type": "string"}, "multihop_ttl": {"description": "Time-to-live value for multihop BGP sessions to this neighbor", "maximum": 255, "minimum": 1, "type": "integer"}, "neighbor_as": {"$ref": "#/components/schemas/bgp_as", "description": "Autonomous System (AS) number of the BGP neighbor. For internal BGP, this must match `local_as`. For external BGP, this must differ from `local_as`."}}, "required": ["neighbor_as"], "type": "object"}, "switch_bgp_config_neighbors": {"additionalProperties": {"$ref": "#/components/schemas/switch_bgp_config_neighbor"}, "description": "Switch BGP neighbor settings keyed by neighbor IP address", "type": "object"}, "switch_bgp_config_networks": {"description": "List of network names for BGP configuration. When a network is specified, a BGP group will be added to the VRF that network is part of.", "items": {"type": "string"}, "type": "array"}, "switch_bgp_config_type": {"description": "BGP session type for this switch BGP configuration. enum: `external`, `internal`", "enum": ["external", "internal"], "type": "string"}, "switch_dhcpd_config": {"additionalProperties": {"$ref": "#/components/schemas/switch_dhcpd_config_property"}, "description": "Switch DHCP server or relay configuration keyed by network name", "properties": {"enabled": {"default": false, "description": "Whether switch DHCP server or relay configuration is enabled", "type": "boolean"}}, "type": "object"}, "switch_dhcpd_config_dns_servers": {"description": "If `type`==`server` or `type6`==`server` - optional, if not defined, system one will be used", "examples": [["8.8.8.8", "4.4.4.4", "2001:4860:4860::8888"]], "items": {"type": "string"}, "type": "array"}, "switch_dhcpd_config_dns_suffix": {"description": "If `type`==`server` or `type6`==`server` - optional, if not defined, system one will be used", "examples": [[".mist.local", ".mist.com"]], "items": {"type": "string"}, "type": "array"}, "switch_dhcpd_config_fixed_bindings": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_fixed_binding"}, "description": "If `type`==`server` or `type6`==`server`. Property key is the MAC address. Format is `[0-9a-f]{12}` (e.g. \"5684dae9ac8b\")", "examples": [{"5684dae9ac8b": {"ip": "192.168.70.35", "name": "John"}}], "type": "object"}, "switch_dhcpd_config_options": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_option"}, "description": "If `type`==`server` or `type6`==`server`. Property key is the DHCP option number", "type": "object"}, "switch_dhcpd_config_property": {"additionalProperties": false, "description": "DHCP server or relay configuration for one switch network. The property key is the network name. In case of DHCP relay, it's common for many networks to use the same dhcp relay, comma-separated network names can be used here (e.g. \"net1,net2\")", "properties": {"dns_servers": {"$ref": "#/components/schemas/switch_dhcpd_config_dns_servers", "description": "If `type`==`server` or `type6`==`server`, DNS servers advertised to DHCP clients"}, "dns_suffix": {"$ref": "#/components/schemas/switch_dhcpd_config_dns_suffix", "description": "If `type`==`server` or `type6`==`server`, DNS search suffixes advertised to DHCP clients"}, "fixed_bindings": {"$ref": "#/components/schemas/switch_dhcpd_config_fixed_bindings", "description": "If `type`==`server` or `type6`==`server`, fixed client bindings for DHCP service"}, "gateway": {"description": "If `type`==`server` - optional, `ip` will be used if not provided", "examples": ["192.168.70.1"], "type": "string"}, "ip_end": {"description": "If `type`==`server`, ending IPv4 address for the DHCP lease pool", "examples": ["192.168.70.200"], "type": "string"}, "ip_end6": {"description": "If `type6`==`server`, ending IPv6 address for the DHCP lease pool", "examples": ["2607:f8b0:4005:808::ff"], "type": "string"}, "ip_start": {"description": "If `type`==`server`, starting IPv4 address for the DHCP lease pool", "examples": ["192.168.70.100"], "type": "string"}, "ip_start6": {"description": "If `type6`==`server`, starting IPv6 address for the DHCP lease pool", "examples": ["2607:f8b0:4005:808::2"], "type": "string"}, "lease_time": {"default": 86400, "description": "In seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]", "maximum": 604800, "minimum": 3600, "type": "integer"}, "options": {"$ref": "#/components/schemas/switch_dhcpd_config_options", "description": "If `type`==`server` or `type6`==`server`, custom DHCP options advertised to clients"}, "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": {"$ref": "#/components/schemas/dhcpd_config_servers", "description": "If `type`==`relay`, upstream IPv4 DHCP servers"}, "servers6": {"$ref": "#/components/schemas/dhcpd_config_servers6", "description": "If `type6`==`relay`, upstream IPv6 DHCP servers"}, "type": {"$ref": "#/components/schemas/switch_dhcpd_config_type", "description": "IPv4 DHCP mode for this switch network"}, "type6": {"$ref": "#/components/schemas/switch_dhcpd_config_type6", "description": "IPv6 DHCP mode for this switch network"}, "vendor_encapsulated": {"$ref": "#/components/schemas/switch_dhcpd_config_vendor_options", "description": "If `type`==`server` or `type6`==`server`, vendor-encapsulated DHCP options advertised to clients"}}, "type": "object"}, "switch_dhcpd_config_type": {"description": "enum: `none`, `relay` (DHCP Relay), `server` (DHCP Server)", "enum": ["none", "relay", "server"], "type": "string"}, "switch_dhcpd_config_type6": {"default": "none", "description": "enum: `none`, `relay` (DHCP Relay), `server` (DHCP Server)", "enum": ["none", "relay", "server"], "type": "string"}, "switch_dhcpd_config_vendor_options": {"additionalProperties": {"$ref": "#/components/schemas/dhcpd_config_vendor_option"}, "description": "If `type`==`server` or `type6`==`server`. Property key is :, with\n * enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)\n * sub option code: 1-255, sub-option code'", "type": "object"}, "switch_iot_config": {"additionalProperties": {"$ref": "#/components/schemas/switch_iot_port"}, "description": "Property Key is the IOT port name, e.g.: \n * `IN0` or `IN1` for the FPC0 input port with 5V triggered inputs\n * `OUT1` for the FPC0 output port (can only be triggered by either IN0 or IN1)\n * \"X/IN0`, `X/IN1` and `X/OUT` are used to define IOT ports on VC members", "type": "object"}, "switch_iot_port": {"additionalProperties": false, "description": "Switch IOT port configuration", "properties": {"alarm_class": {"$ref": "#/components/schemas/switch_iot_port_alarm_class", "description": "Alarm severity class raised for input-triggered switch IOT port events"}, "enabled": {"default": false, "description": "Whether this switch IOT port is enabled", "type": "boolean"}, "input_src": {"$ref": "#/components/schemas/switch_iot_port_input_src", "description": "Only for `OUT` ports. Input port that triggers this output port"}, "name": {"description": "Display name for the switch IOT port", "type": "string"}}, "type": "object"}, "switch_iot_port_alarm_class": {"default": "minor", "description": "Alarm class for the switch iot port in. enum: `minor`, `major`", "enum": ["minor", "major"], "type": "string"}, "switch_iot_port_input_src": {"default": "IN0", "description": "Only for \"OUT\" ports, input source for the switch iot port out. enum: `IN0`, `IN1`", "enum": ["IN0", "IN1"], "type": "string"}, "switch_matching": {"additionalProperties": false, "description": "Defines custom switch configuration based on different criteria", "properties": {"enable": {"description": "Whether custom switch matching rules are enabled", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/switch_matching_rules", "description": "Switch matching rules evaluated to apply custom configuration"}}, "type": "object"}, "switch_matching_rule": {"additionalProperties": {"type": "string"}, "description": "Property key defines the type of matching, value is the string to match. e.g:\n * `match_name[0:3]`: switch name must match the first 3 letters of the property value\n * `match_name[2:6]`: switch name must match the property value from the 2nd to the 6th letter\n * `match_model[0-8]`: switch model must match the first 8 letters of the property value\n * `match_role`: switch role must match the property value", "examples": [{"match_model": "EX4300", "match_name[0:3]": "abc"}], "properties": {"additional_config_cmds": {"$ref": "#/components/schemas/additional_config_cmds", "description": "Additional Junos CLI commands applied when this matching rule matches"}, "default_port_usage": {"default": "default", "description": "Port usage to assign to switch ports without any port usage assigned. Default: `default` to preserve default behavior", "type": "string"}, "ip_config": {"$ref": "#/components/schemas/switch_matching_rule_ip_config", "description": "In-band management IP configuration applied when this matching rule matches"}, "name": {"description": "Rule name. WARNING: the name `default` is reserved and can only be used for the last rule in the list", "maxLength": 32, "minLength": 1, "type": "string"}, "oob_ip_config": {"$ref": "#/components/schemas/switch_matching_rule_oob_ip_config", "description": "Out-of-band management IP configuration applied when this matching rule matches"}, "port_config": {"$ref": "#/components/schemas/wired_port_config", "description": "Per-port wired configuration applied when this matching rule matches"}, "port_mirroring": {"$ref": "#/components/schemas/switch_port_mirroring", "description": "Port mirroring configuration applied when this matching rule matches"}, "stp_config": {"$ref": "#/components/schemas/switch_stp_config", "description": "Spanning Tree Protocol configuration applied when this matching rule matches"}, "switch_mgmt": {"$ref": "#/components/schemas/switch_mgmt", "description": "Management-plane settings applied when this matching rule matches"}}, "type": "object"}, "switch_matching_rule_ip_config": {"additionalProperties": false, "description": "In-Band Management interface configuration", "properties": {"network": {"description": "VLAN Name for the management interface", "type": "string"}, "type": {"$ref": "#/components/schemas/ip_type", "description": "IP assignment mode for in-band switch management"}}, "type": "object"}, "switch_matching_rule_oob_ip_config": {"additionalProperties": false, "description": "Out-of-Band Management interface configuration", "properties": {"type": {"$ref": "#/components/schemas/ip_type", "description": "IP assignment mode for out-of-band switch management"}, "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": "For host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired", "type": "boolean"}}, "type": "object"}, "switch_matching_rules": {"description": "Ordered switch matching rules for conditional configuration", "items": {"$ref": "#/components/schemas/switch_matching_rule"}, "type": "array", "uniqueItems": true}, "switch_metric_scope": {"description": "Scope level used when querying switch metrics. enum: `site`, `switch`", "enum": ["site", "switch"], "type": "string"}, "switch_metric_type": {"description": "Switch metric type requested for active port summaries. enum: `active_ports_summary`", "enum": ["active_ports_summary"], "type": "string"}, "switch_metrics_active_ports_summary_details": {"additionalProperties": false, "description": "Port counts used by the active-port switch metric", "properties": {"active_port_count": {"description": "Number of active ports observed across evaluated switches", "type": "integer"}, "total_port_count": {"description": "Total number of ports evaluated for the active-port metric", "type": "integer"}}, "type": "object"}, "switch_metrics_compliance_major_version": {"additionalProperties": false, "description": "Version compliance grouping for one switch model", "properties": {"major_count": {"description": "Number of switches in this software version grouping", "type": "integer"}, "major_version": {"description": "Software version represented by this compliance grouping", "type": "string"}, "model": {"description": "Switch model represented by this compliance grouping", "type": "string"}, "system_names": {"$ref": "#/components/schemas/strings", "description": "Switch system names included in this compliance grouping"}}, "type": "object"}, "switch_metrics_compliance_major_versions": {"description": "Software version compliance groupings by switch model and version", "items": {"$ref": "#/components/schemas/switch_metrics_compliance_major_version"}, "type": "array"}, "switch_mgmt": {"additionalProperties": false, "description": "Switch management-plane access and proxy settings", "properties": {"ap_affinity_threshold": {"default": 10, "description": "AP affinity threshold for switch management. If set in both site settings and organization settings, the site setting value is used.", "type": "integer"}, "cli_banner": {"description": "Set Banners for switches. Allows markup formatting", "examples": ["\\t\\tWELCOME!"], "type": "string"}, "cli_idle_timeout": {"description": "Sets timeout for switches", "maximum": 60, "minimum": 1, "type": "integer"}, "config_revert_timer": {"default": 10, "description": "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"}, "disable_oob_down_alarm": {"description": "Whether to suppress alarms when the switch out-of-band management interface is down", "type": "boolean"}, "fips_enabled": {"default": false, "description": "Whether FIPS mode is enabled on the switch", "type": "boolean"}, "local_accounts": {"$ref": "#/components/schemas/config_switch_local_accounts", "description": "Local switch user accounts keyed by username"}, "mxedge_proxy_host": {"description": "IP address or FQDN of the Mist Edge used to proxy the switch management traffic to the Mist Cloud", "type": "string"}, "mxedge_proxy_port": {"$ref": "#/components/schemas/switch_mgmt_mxedge_proxy_port", "description": "Mist Edge proxy port used for switch management traffic"}, "protect_re": {"$ref": "#/components/schemas/protect_re", "description": "Control-plane protection settings for the switch"}, "radius": {"$ref": "#/components/schemas/switch_radius", "description": "Management authentication settings using RADIUS"}, "remove_existing_configs": {"default": false, "description": "By default, only the configuration generated by Mist is cleaned up during the configuration process. If `true`, all the existing configuration will be removed.", "type": "boolean"}, "root_password": {"description": "Root password for local switch access", "format": "password", "type": "string"}, "tacacs": {"$ref": "#/components/schemas/tacacs", "description": "Management authentication settings using TACACS+"}, "use_mxedge_proxy": {"description": "Whether to use Mist Edge as a proxy for switch management traffic", "type": "boolean"}}, "type": "object"}, "switch_mgmt_mxedge_proxy_port": {"anyOf": [{"default": 2222, "maximum": 65535, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "Mist Edge port used to proxy the switch management traffic to the Mist Cloud. Value in range 1-65535"}, "switch_mist_nac": {"additionalProperties": false, "description": "Mist NAC RadSec settings for a switch", "properties": {"enabled": {"description": "Whether Mist NAC RadSec is enabled for the switch", "type": "boolean"}, "network": {"description": "Switch network used for Mist NAC RadSec connectivity", "type": "string"}}, "type": "object"}, "switch_network": {"additionalProperties": false, "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": {"gateway": {"description": "Only required for EVPN-VXLAN networks, IPv4 Virtual Gateway", "type": "string"}, "gateway6": {"description": "Only required for EVPN-VXLAN networks, IPv6 Virtual 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. See also `inter_isolation_network_link` and `community_vlan_id` in port_usage", "type": "boolean"}, "isolation_vlan_id": {"description": "Required when `isolation`==`true`. Unique VLAN ID used for client isolation", "examples": ["3070"], "type": "string"}, "subnet": {"description": "Optional for pure switching, required when L3 / routing features are used", "type": "string"}, "subnet6": {"description": "Optional for pure switching, required when L3 / routing features are used", "type": "string"}, "vlan_id": {"$ref": "#/components/schemas/vlan_id_with_variable", "description": "VLAN identifier for this switch network"}}, "required": ["vlan_id"], "type": "object"}, "switch_networks": {"additionalProperties": {"$ref": "#/components/schemas/switch_network"}, "description": "Property key is network name", "type": "object"}, "switch_oob_ip_config": {"additionalProperties": false, "description": "Switch OOB IP Config:\n - If HA configuration: key parameter will be nodeX (eg: node1)\n - If there are 2 routing engines, re1 mgmt IP has to be set separately (if desired): key parameter = `re1`", "properties": {"gateway": {"description": "Default gateway for the out-of-band management interface when `type`==`static`", "type": "string"}, "ip": {"description": "Static IPv4 address for the out-of-band management interface when `type`==`static`", "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_type", "description": "IP assignment mode for the out-of-band management interface"}, "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": "For host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired", "type": "boolean"}}, "type": "object"}, "switch_ospf_config": {"description": "OSPF routing configuration for a Junos switch", "properties": {"areas": {"$ref": "#/components/schemas/switch_ospf_config_areas", "description": "OSPF areas configured on the switch"}, "enabled": {"default": false, "description": "Enable OSPF on the switch", "type": "boolean"}, "export_policy": {"description": "optional, for basic scenario, `import_policy` can be specified and can be applied to all networks in all areas if not explicitly specified", "type": "string"}, "import_policy": {"description": "optional, for basic scenario, `import_policy` can be specified and can be applied to all networks in all areas if not explicitly specified", "type": "string"}, "reference_bandwidth": {"$ref": "#/components/schemas/switch_ospf_config_reference_bandwidth", "description": "Reference bandwidth used for OSPF cost calculation"}}}, "switch_ospf_config_area": {"description": "Settings for a single OSPF area on a switch", "properties": {"no_summary": {"default": false, "description": "Disable OSPF summary routes for this area", "type": "boolean"}}}, "switch_ospf_config_areas": {"additionalProperties": {"$ref": "#/components/schemas/switch_ospf_config_area"}, "description": "Property key is the area name. Defines the OSPF areas configured on the switch.", "type": "object"}, "switch_ospf_config_reference_bandwidth": {"anyOf": [{"type": "integer"}, {"type": "string"}], "description": "Reference bandwidth. Integer(100000) or String (10g)", "examples": [100000]}, "switch_port_config_overwrite": {"additionalProperties": false, "description": "Switch port configuration overrides", "properties": {"description": {"description": "Administrative description applied to the switch port override", "type": "string"}, "disabled": {"default": false, "description": "Whether the port is disabled", "type": "boolean"}, "duplex": {"$ref": "#/components/schemas/switch_port_usage_duplex_overwrite", "description": "Link duplex mode override for the switch port"}, "mac_limit": {"$ref": "#/components/schemas/switch_port_usage_mac_limit_overwrite", "description": "MAC address learning limit override for the switch port"}, "poe_disabled": {"default": false, "description": "Whether PoE capabilities are disabled for a port", "type": "boolean"}, "poe_keep_state_when_reboot": {"default": false, "description": "Whether Perpetual PoE is enabled; keeps PoE state across reboots", "type": "boolean"}, "port_network": {"description": "Native network/vlan for untagged traffic", "type": "string"}, "speed": {"$ref": "#/components/schemas/switch_port_usage_speed_overwrite", "description": "Link speed override for the switch port"}}, "type": "object"}, "switch_port_config_overwrites": {"additionalProperties": {"$ref": "#/components/schemas/switch_port_config_overwrite"}, "description": "Property key is the port name or range (e.g. \"ge-0/0/0-10\"). This can be used to override some attributes of the port_usage without having to create a new port_usage.", "type": "object"}, "switch_port_local_usage_dot1x": {"description": "if dot1x is desired, set to dot1x. enum: `dot1x`", "enum": ["dot1x"], "type": ["string", "null"]}, "switch_port_local_usage_duplex": {"default": "auto", "description": "link connection mode. enum: `auto`, `full`, `half`", "enum": ["auto", "full", "half"], "type": "string"}, "switch_port_local_usage_dynamic_vlan_networks": {"description": "Only if `port_auth`==`dot1x`, if dynamic vlan is used, specify the possible networks/vlans RADIUS can return", "examples": [["corp", "user"]], "items": {"type": "string"}, "type": "array"}, "switch_port_local_usage_mac_auth_protocol": {"default": "eap-md5", "description": "Only if `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap`", "enum": ["eap-md5", "eap-peap", "pap"], "type": "string"}, "switch_port_local_usage_mode": {"description": "enum: `access`, `inet`, `trunk`", "enum": ["access", "inet", "trunk"], "type": "string"}, "switch_port_local_usage_storm_control": {"additionalProperties": false, "description": "Storm-control settings for this local port configuration", "properties": {"disable_port": {"default": false, "description": "Whether to disable the port when storm control is triggered", "type": "boolean"}, "no_broadcast": {"default": false, "description": "Whether to disable storm control on broadcast traffic", "type": "boolean"}, "no_multicast": {"default": false, "description": "Whether to disable storm control on multicast traffic", "type": "boolean"}, "no_registered_multicast": {"default": false, "description": "Whether to disable storm control on registered multicast traffic", "type": "boolean"}, "no_unknown_unicast": {"default": false, "description": "Whether to disable storm control on unknown unicast traffic", "type": "boolean"}, "percentage": {"default": 80, "description": "Bandwidth-percentage, configures the storm control level as a percentage of the available bandwidth", "maximum": 100, "minimum": 0, "type": "integer"}}, "type": "object"}, "switch_port_mirroring": {"additionalProperties": {"$ref": "#/components/schemas/switch_port_mirroring_property"}, "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 mirroring ports is allowed", "type": "object"}, "switch_port_mirroring_egress_port_ids": {"description": "At least one of the `input_port_ids_ingress`, `input_port_ids_egress` or `input_networks_ingress ` should be specified", "items": {"examples": ["ge-0/0/3"], "type": "string"}, "type": "array"}, "switch_port_mirroring_ingress_networks": {"description": "At least one of the `input_port_ids_ingress`, `input_port_ids_egress` or `input_networks_ingress ` should be specified", "items": {"examples": ["corp"], "type": "string"}, "type": "array"}, "switch_port_mirroring_ingress_port_ids": {"description": "At least one of the `input_port_ids_ingress`, `input_port_ids_egress` or `input_networks_ingress ` should be specified", "items": {"examples": ["ge-0/0/3"], "type": "string"}, "type": "array"}, "switch_port_mirroring_property": {"additionalProperties": false, "description": "Input and output settings for one switch port mirroring session", "properties": {"input_networks_ingress": {"$ref": "#/components/schemas/switch_port_mirroring_ingress_networks", "description": "At least one mirror input source should be specified. Networks whose ingress traffic is mirrored"}, "input_port_ids_egress": {"$ref": "#/components/schemas/switch_port_mirroring_egress_port_ids", "description": "At least one mirror input source should be specified. Switch ports whose egress traffic is mirrored"}, "input_port_ids_ingress": {"$ref": "#/components/schemas/switch_port_mirroring_ingress_port_ids", "description": "At least one mirror input source should be specified. Switch ports whose ingress traffic is mirrored"}, "output_ip_address": {"description": "Exactly one of the `output_ip_address`, `output_port_id` or `output_network` should be provided", "examples": ["1.2.3.4"], "type": "string"}, "output_network": {"description": "Exactly one of the `output_ip_address`, `output_port_id` or `output_network` should be provided", "examples": ["analyze"], "type": "string"}, "output_port_id": {"description": "Exactly one of the `output_ip_address`, `output_port_id` or `output_network` should be provided", "examples": ["ge-0/0/5"], "type": "string"}}, "type": "object"}, "switch_port_usage": {"additionalProperties": false, "description": "Junos switch port usage template and authentication settings", "properties": {"all_networks": {"default": false, "description": "Only if `mode`==`trunk`. Whether to trunk all network/vlans", "type": "boolean"}, "allow_dhcpd": {"description": "Only applies when `mode`!=`dynamic`. Controls whether DHCP server traffic is allowed on ports using this configuration if DHCP snooping is enabled. This is a tri-state setting; `true`: ports become trusted ports allowing DHCP server traffic, `false`: ports become untrusted blocking DHCP server traffic, undefined: use system defaults (access ports default to untrusted, trunk ports default to trusted).", "type": "boolean"}, "allow_multiple_supplicants": {"default": false, "description": "Only if `mode`!=`dynamic`", "type": "boolean"}, "bypass_auth_when_server_down": {"default": false, "description": "Only if `mode`!=`dynamic` and `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_unknown_client": {"default": false, "description": "Only if `mode`!=`dynamic` and `port_auth`=`dot1x`. Bypass auth for all (including unknown clients) if set to true when RADIUS server is down", "type": "boolean"}, "bypass_auth_when_server_down_for_voip": {"default": false, "description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Bypass auth for VOIP if set to true when RADIUS server is down", "type": "boolean"}, "community_vlan_id": {"description": "Only if `mode`!=`dynamic`. To be used together with `isolation` under networks. Signaling that this port connects to the networks isolated but wired clients belong to the same community can talk to each other", "type": "integer"}, "description": {"description": "Only if `mode`!=`dynamic`", "type": "string"}, "disable_autoneg": {"default": false, "description": "Only if `mode`!=`dynamic`. If speed and duplex are specified, whether to disable autonegotiation", "type": "boolean"}, "disabled": {"default": false, "description": "Only if `mode`!=`dynamic`. Whether the port is disabled", "type": "boolean"}, "duplex": {"$ref": "#/components/schemas/switch_port_usage_duplex", "description": "Only if `mode`!=`dynamic`. Link duplex mode for this port usage"}, "dynamic_vlan_networks": {"$ref": "#/components/schemas/switch_port_usage_dynamic_vlan_networks", "description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Networks or VLANs that RADIUS can return for dynamic VLAN assignment"}, "enable_mac_auth": {"default": false, "description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Whether to enable MAC Auth", "type": "boolean"}, "enable_qos": {"default": false, "description": "Only if `mode`!=`dynamic`", "type": "boolean"}, "guest_network": {"description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed)", "type": ["string", "null"]}, "inter_isolation_network_link": {"default": false, "description": "Only if `mode`!=`dynamic`. `inter_isolation_network_link` is used together with `isolation` under networks, signaling that this port connects to isolated networks", "type": "boolean"}, "inter_switch_link": {"default": false, "description": "Only if `mode`!=`dynamic`. `inter_switch_link` is used together with `isolation` under networks. NOTE: `inter_switch_link` works only between Juniper devices. This has to be applied to both ports connected together", "type": "boolean"}, "mac_auth_only": {"description": "Only if `mode`!=`dynamic` and `enable_mac_auth`==`true`", "type": "boolean"}, "mac_auth_preferred": {"description": "Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x.", "type": "boolean"}, "mac_auth_protocol": {"$ref": "#/components/schemas/switch_port_usage_mac_auth_protocol", "description": "Only if `mode`!=`dynamic` and `enable_mac_auth`==`true`. MAC authentication protocol to use; ignored if Mist NAC is enabled"}, "mac_limit": {"$ref": "#/components/schemas/switch_port_usage_mac_limit", "description": "Only if `mode`!=`dynamic`. Maximum number of MAC addresses allowed on the port; 0 means unlimited"}, "mode": {"$ref": "#/components/schemas/switch_port_usage_mode", "description": "Switching mode for this port usage"}, "mtu": {"$ref": "#/components/schemas/switch_port_usage_mtu", "description": "Only if `mode`!=`dynamic`. MTU for ports using this port usage"}, "networks": {"$ref": "#/components/schemas/switch_port_usage_networks", "description": "Only if `mode`==`trunk`. Network or VLAN names to trunk"}, "persist_mac": {"default": false, "description": "Only if `mode`==`access` and `port_auth`!=`dot1x`. Whether the port should retain dynamically learned MAC addresses", "type": "boolean"}, "poe_disabled": {"default": false, "description": "Only if `mode`!=`dynamic`. Whether PoE capabilities are disabled for a port", "type": "boolean"}, "poe_keep_state_when_reboot": {"default": false, "description": "Only if `mode`!=`dynamic`. Whether Perpetual PoE is enabled; keeps PoE state across reboots", "type": "boolean"}, "poe_priority": {"$ref": "#/components/schemas/poe_priority", "description": "Only if `mode`!=`dynamic`. PoE priority for ports using this port usage"}, "port_auth": {"$ref": "#/components/schemas/switch_port_usage_dot1x", "description": "Only if `mode`!=`dynamic`. 802.1X authentication mode for this port usage"}, "port_network": {"description": "Only if `mode`!=`dynamic`. Native network/vlan for untagged traffic", "type": "string"}, "reauth_interval": {"$ref": "#/components/schemas/switch_port_usage_reauth_interval", "description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. RADIUS reauthentication interval for clients on the port"}, "reset_default_when": {"$ref": "#/components/schemas/switch_port_usage_dynamic_reset_default_when", "description": "Only if `mode`==`dynamic`. Condition that resets a dynamic port to the default port usage"}, "rules": {"$ref": "#/components/schemas/switch_port_usage_dynamic_rules", "description": "Only if `mode`==`dynamic`. Dynamic matching rules that select the port usage to apply"}, "server_fail_network": {"description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Sets server fail fallback vlan", "type": ["string", "null"]}, "server_fail_retry_interval": {"default": 120, "description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. Interval, in seconds. Sets the wait time before retrying authentication after RADIUS failure to reduce client flapping. Range 120-65535", "maximum": 65535, "minimum": 120, "type": "integer"}, "server_reject_network": {"description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`. When RADIUS server reject / fails", "type": ["string", "null"]}, "speed": {"$ref": "#/components/schemas/switch_port_usage_speed", "description": "Only if `mode`!=`dynamic`. Link speed for this port usage"}, "storm_control": {"$ref": "#/components/schemas/switch_port_usage_storm_control", "description": "Only if `mode`!=`dynamic`. Storm-control settings for this port usage"}, "stp_disable": {"default": false, "description": "Only if `mode`!=`dynamic` and `stp_required`==`false`. Drop bridge protocol data units (BPDUs ) that enter any interface or a specified interface", "type": "boolean"}, "stp_edge": {"default": false, "description": "Only if `mode`!=`dynamic`. When enabled, the port is not expected to receive BPDU frames", "type": "boolean"}, "stp_no_root_port": {"default": false, "description": "Only if `mode`!=`dynamic`", "type": "boolean"}, "stp_p2p": {"default": false, "description": "Only if `mode`!=`dynamic`", "type": "boolean"}, "stp_required": {"default": false, "description": "Only if `mode`!=`dynamic`. Whether to remain in block state if no BPDU is received", "type": "boolean"}, "ui_evpntopo_id": {"description": "Optional for Campus Fabric Core-Distribution ESI-LAG profile. Helper used by the UI to select this port profile as the ESI-Lag between Distribution and Access switches", "format": "uuid", "type": "string"}, "use_vstp": {"default": false, "description": "If this is connected to a vstp network", "type": "boolean"}, "voip_network": {"description": "Only if `mode`!=`dynamic`. Network/vlan for voip traffic, must also set port_network. to authenticate device, set port_auth", "type": ["string", "null"]}}, "type": "object"}, "switch_port_usage_dot1x": {"description": "Only if `mode`!=`dynamic`. If dot1x is desired, set to dot1x. enum: `dot1x`", "enum": ["dot1x"], "type": ["string", "null"]}, "switch_port_usage_duplex": {"default": "auto", "description": "Only if `mode`!=`dynamic`. Link connection mode. enum: `auto`, `full`, `half`", "enum": ["auto", "full", "half"], "type": "string"}, "switch_port_usage_duplex_overwrite": {"default": "auto", "description": "Link connection mode. enum: `auto`, `full`, `half`", "enum": ["auto", "full", "half"], "type": "string"}, "switch_port_usage_dynamic_reset_default_when": {"default": "link_down", "description": "Only if `mode`==`dynamic` Control when the DPC port should be changed to the default port usage. enum: `link_down`, `none` (let the DPC port keep at the current port usage)", "enum": ["link_down", "none"], "examples": ["link_down"], "type": "string"}, "switch_port_usage_dynamic_rule": {"additionalProperties": false, "description": "Dynamic port usage rule evaluated against LLDP, RADIUS, or peer MAC attributes", "properties": {"description": {"description": "Optional description of the rule", "type": "string"}, "equals": {"description": "Exact value that the selected source attribute must match", "type": "string"}, "equals_any": {"$ref": "#/components/schemas/switch_port_usage_dynamic_rule_equals_any", "description": "List of values where any match satisfies this dynamic rule"}, "expression": {"description": "\"[0:3]\":\"abcdef\" -> \"abc\"\n\"split(.)[1]\": \"a.b.c\" -> \"b\"\n\"split(-)[1][0:3]: \"a1234-b5678-c90\" -> \"b56\"", "type": "string"}, "src": {"$ref": "#/components/schemas/switch_port_usage_dynamic_rule_src", "description": "Source attribute evaluated by this dynamic rule"}, "usage": {"description": "Port usage name to apply when this dynamic rule matches", "type": "string"}}, "required": ["src"], "type": "object"}, "switch_port_usage_dynamic_rule_equals_any": {"description": "Use `equals_any` to match any item in a list", "items": {"type": "string"}, "type": "array"}, "switch_port_usage_dynamic_rule_src": {"description": "enum: `link_peermac`, `lldp_chassis_id`, `lldp_hardware_revision`, `lldp_manufacturer_name`, `lldp_oui`, `lldp_serial_number`, `lldp_system_description`, `lldp_system_name`, `radius_dynamicfilter`, `radius_usermac`, `radius_username`", "enum": ["link_peermac", "lldp_chassis_id", "lldp_hardware_revision", "lldp_manufacturer_name", "lldp_oui", "lldp_serial_number", "lldp_system_description", "lldp_system_name", "radius_dynamicfilter", "radius_usermac", "radius_username"], "type": "string"}, "switch_port_usage_dynamic_rules": {"description": "Only if `mode`==`dynamic`. Dynamic matching rules that select the port usage to apply", "items": {"$ref": "#/components/schemas/switch_port_usage_dynamic_rule"}, "type": "array"}, "switch_port_usage_dynamic_vlan_networks": {"description": "Only if `mode`!=`dynamic` and `port_auth`==`dot1x`, if dynamic vlan is used, specify the possible networks/vlans RADIUS can return", "examples": [["corp", "user"]], "items": {"type": "string"}, "type": "array"}, "switch_port_usage_mac_auth_protocol": {"default": "eap-md5", "description": "Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap`", "enum": ["eap-md5", "eap-peap", "pap"], "type": "string"}, "switch_port_usage_mac_limit": {"anyOf": [{"default": 0, "maximum": 16383, "minimum": 0, "type": "integer"}, {"type": "string"}], "description": "Only if `mode`!=`dynamic`, max number of MAC addresses, default is 0 for unlimited, otherwise range is 1 to 16383 (upper bound constrained by platform)"}, "switch_port_usage_mac_limit_overwrite": {"anyOf": [{"default": 0, "maximum": 16383, "minimum": 0, "type": "integer"}, {"type": "string"}], "description": "Max number of MAC addresses, default is 0 for unlimited, otherwise range is 1 to 16383 (upper bound constrained by platform)"}, "switch_port_usage_mode": {"description": "`mode`==`dynamic` must only be used if the port usage name is `dynamic`. enum: `access`, `dynamic`, `inet`, `trunk`", "enum": ["access", "dynamic", "inet", "trunk"], "type": "string"}, "switch_port_usage_mtu": {"anyOf": [{"maximum": 9216, "minimum": 256, "type": "integer"}, {"type": "string"}, {"type": "null"}], "description": "Only if `mode`!=`dynamic` media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation. The default value is 1514."}, "switch_port_usage_networks": {"description": "Only if `mode`==`trunk`, the list of network/vlans", "items": {"type": "string"}, "type": "array"}, "switch_port_usage_reauth_interval": {"anyOf": [{"default": 3600, "maximum": 65535, "minimum": 10, "type": "integer"}, {"type": "string"}], "description": "Only if `mode`!=`dynamic` and `port_auth`=`dot1x` reauthentication interval range (min: 10, max: 65535, default: 3600). Set to 0 to disable reauthentication (no-reauthentication)."}, "switch_port_usage_speed": {"default": "auto", "description": "Only if `mode`!=`dynamic`, Port speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`", "enum": ["10m", "100m", "1g", "2.5g", "5g", "10g", "25g", "40g", "100g", "auto"], "type": "string"}, "switch_port_usage_speed_overwrite": {"default": "auto", "description": "Port Speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto`", "enum": ["10m", "100m", "1g", "2.5g", "5g", "10g", "25g", "40g", "100g", "auto"], "type": "string"}, "switch_port_usage_storm_control": {"additionalProperties": false, "description": "Switch storm control. Only if `mode`!=`dynamic`", "properties": {"disable_port": {"default": false, "description": "Whether to disable the port when storm control is triggered", "type": "boolean"}, "no_broadcast": {"default": false, "description": "Whether to disable storm control on broadcast traffic", "type": "boolean"}, "no_multicast": {"default": false, "description": "Whether to disable storm control on multicast traffic", "type": "boolean"}, "no_registered_multicast": {"default": false, "description": "Whether to disable storm control on registered multicast traffic", "type": "boolean"}, "no_unknown_unicast": {"default": false, "description": "Whether to disable storm control on unknown unicast traffic", "type": "boolean"}, "percentage": {"default": 80, "description": "Bandwidth-percentage, configures the storm control level as a percentage of the available bandwidth", "maximum": 100, "minimum": 0, "type": "integer"}}, "type": "object"}, "switch_port_usages": {"additionalProperties": {"$ref": "#/components/schemas/switch_port_usage"}, "description": "Property key is the port usage name. Defines the profiles of port configuration configured on the switch", "type": "object"}, "switch_radius": {"additionalProperties": false, "description": "Switch RADIUS override settings. By default, the switch `radius_config` is used; set `use_different_radius` to use alternate RADIUS settings.", "properties": {"enabled": {"description": "Whether RADIUS is enabled for switch management authentication", "type": "boolean"}, "radius_config": {"$ref": "#/components/schemas/switch_radius_config", "description": "RADIUS configuration used when alternate RADIUS settings are required"}, "use_different_radius": {"description": "Selector for alternate RADIUS settings instead of the default switch `radius_config`", "type": "string"}}, "type": "object"}, "switch_radius_config": {"additionalProperties": false, "description": "Switch RADIUS authentication and accounting configuration", "properties": {"acct_immediate_update": {"description": "Whether immediate RADIUS accounting updates are sent", "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", "maximum": 65535, "minimum": 0, "type": "integer"}, "acct_servers": {"$ref": "#/components/schemas/radius_acct_servers", "description": "RADIUS accounting servers used by this switch configuration"}, "auth_server_selection": {"$ref": "#/components/schemas/switch_radius_config_auth_server_selection", "description": "Selection strategy for RADIUS authentication servers"}, "auth_servers": {"$ref": "#/components/schemas/radius_auth_servers", "description": "RADIUS authentication servers used by this switch configuration"}, "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, "description": "Whether RADIUS Change of Authorization (CoA) is enabled", "type": "boolean"}, "coa_port": {"$ref": "#/components/schemas/radius_coa_port", "description": "UDP port used for RADIUS Change of Authorization (CoA)"}, "fast_dot1x_timers": {"default": false, "description": "Whether fast 802.1X timers are enabled for RADIUS authentication", "type": "boolean"}, "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`. Explicit source IP address for RADIUS traffic", "type": "string"}}, "type": "object"}, "switch_radius_config_auth_server_selection": {"default": "ordered", "description": "Selection strategy for RADIUS authentication servers. enum: `ordered`, `unordered`", "enum": ["ordered", "unordered"], "type": "string"}, "switch_search": {"additionalProperties": false, "description": "Switch record returned by device search endpoints", "properties": {"clustered": {"description": "Whether the switch is part of a virtual chassis or cluster", "type": "boolean"}, "evpn_missing_links": {"description": "Whether EVPN topology links are missing for this switch", "type": "boolean"}, "evpntopo_id": {"description": "EVPN topology ID associated with this switch", "type": "string"}, "ext_ip": {"description": "External IP address observed for switch management traffic", "type": "string"}, "hostname": {"$ref": "#/components/schemas/strings", "description": "Observed hostnames detected for the switch in search results"}, "ip": {"description": "Management IP address currently reported for the switch", "type": "string"}, "last_config_status": {"description": "Most recent configuration status reported for the switch", "type": "string"}, "last_hostname": {"description": "Most recent hostname detected for the switch", "type": "string"}, "last_trouble_code": {"description": "Most recent trouble code reported for the switch", "type": "string"}, "last_trouble_timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the most recent switch trouble code was reported"}, "mac": {"description": "Switch MAC address reported in search results", "type": "string"}, "managed": {"deprecated": true, "description": "Whether the switch is managed by Mist. Deprecated in favor of `mist_configured`", "type": "boolean"}, "mist_configured": {"description": "whether the device can be configured by Mist or not. This deprecates `managed` (for adopted device) and `disable_auto_config` for claimed device)", "type": "boolean"}, "model": {"description": "Switch model reported for this search result", "type": "string"}, "num_members": {"description": "Number of members in the switch virtual chassis, when applicable", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this switch search result"}, "radius_stats": {"$ref": "#/components/schemas/device_search_radius_stats", "description": "RADIUS statistics for this switch keyed by server IP address"}, "role": {"description": "Switch role reported for this search result", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site that contains this switch search result"}, "time_drifted": {"description": "Whether the switch clock has drifted from the expected time", "type": "boolean"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time associated with this switch search result"}, "type": {"$ref": "#/components/schemas/device_type_switch", "description": "Device type for this switch search result"}, "uptime": {"description": "Device uptime for the switch, in seconds", "type": "integer"}, "version": {"description": "Software version currently running on the switch", "type": "string"}}, "required": ["type"], "type": "object"}, "switch_stp_config": {"additionalProperties": false, "description": "Switch spanning-tree protocol configuration", "properties": {"bridge_priority": {"default": "32k", "description": "Switch STP priority. Range [0, 4k, 8k.. 60k] in steps of 4k. Bridge priority applies to both VSTP and RSTP.", "examples": ["40k"], "type": "string"}}, "type": "object"}, "switch_virtual_chassis": {"additionalProperties": false, "description": "Required for preprovisioned Virtual Chassis", "properties": {"members": {"$ref": "#/components/schemas/switch_virtual_chassis_members", "description": "Virtual Chassis members and their expected roles"}, "preprovisioned": {"default": false, "description": "To configure whether the VC is preprovisioned or nonprovisioned", "type": "boolean"}}, "type": "object"}, "switch_virtual_chassis_member": {"additionalProperties": false, "description": "Virtual Chassis member identified by MAC address and role", "properties": {"mac": {"description": "Virtual Chassis member MAC address; for FPC0 this matches the device ID MAC", "examples": ["aff827549235"], "type": "string"}, "member_id": {"description": "Virtual Chassis member identifier", "type": "integer"}, "vc_role": {"$ref": "#/components/schemas/switch_virtual_chassis_member_vc_role", "description": "Role of this member in the Virtual Chassis"}}, "required": ["mac", "member_id", "vc_role"], "type": "object"}, "switch_virtual_chassis_member_vc_role": {"description": "Both vc_role master and backup will be matched to routing-engine role in Junos preprovisioned VC config. enum: `backup`, `linecard`, `master`", "enum": ["backup", "linecard", "master"], "type": "string"}, "switch_virtual_chassis_members": {"description": "List of Virtual Chassis members", "items": {"$ref": "#/components/schemas/switch_virtual_chassis_member"}, "type": "array"}, "switch_vrf_instance": {"additionalProperties": false, "description": "Switch VRF instance routing and network membership settings", "examples": [{"extra_routes": {"0.0.0.0/0": {"via": "192.168.31.1"}}, "networks": ["guest"]}], "properties": {"aggregate_routes": {"$ref": "#/components/schemas/aggregate_routes", "description": "IPv4 aggregate routes configured for this VRF instance"}, "aggregate_routes6": {"$ref": "#/components/schemas/aggregate_routes6", "description": "IPv6 aggregate routes configured for this VRF instance"}, "evpn_auto_loopback_subnet": {"description": "IPv4 subnet used for automatic EVPN loopback addresses in this VRF instance", "examples": ["100.101.0.0/24"], "type": "string"}, "evpn_auto_loopback_subnet6": {"description": "IPv6 subnet used for automatic EVPN loopback addresses in this VRF instance", "type": "string"}, "extra_routes": {"$ref": "#/components/schemas/vrf_extra_routes", "description": "Additional IPv4 static routes configured for this VRF instance"}, "extra_routes6": {"$ref": "#/components/schemas/vrf_extra_routes6", "description": "Additional IPv6 static routes configured for this VRF instance"}, "networks": {"$ref": "#/components/schemas/strings", "description": "Names of switch networks included in this VRF instance"}}, "type": "object"}, "switch_vrf_instances": {"additionalProperties": {"$ref": "#/components/schemas/switch_vrf_instance"}, "description": "Property key is the network name", "examples": [{"guest": {"extra_routes": {"0.0.0.0/0": {"via": "192.168.31.1"}}, "networks": ["guest"]}}], "type": "object"}, "synthetictest": {"description": "Request body for triggering a site synthetic test", "properties": {"email": {"description": "Contact email address supplied when triggering the site synthetic test", "examples": ["test@mist.com"], "format": "email", "type": "string"}}, "type": "object"}, "synthetictest_config": {"additionalProperties": false, "description": "Synthetic test configuration for Marvis Minis", "properties": {"aggressiveness": {"$ref": "#/components/schemas/synthetictest_config_aggressiveness", "description": "Overall aggressiveness level for synthetic test probes"}, "custom_probes": {"$ref": "#/components/schemas/synthetictest_config_custom_probes", "description": "Custom synthetic probe definitions keyed by probe name"}, "disabled": {"default": false, "description": "Whether synthetic tests are disabled", "type": "boolean"}, "lan_networks": {"$ref": "#/components/schemas/synthetictest_config_lan_networks", "description": "LAN network probe groups used by synthetic tests"}, "vlans": {"$ref": "#/components/schemas/synthetictest_config_vlans", "description": "Deprecated VLAN-based synthetic test settings"}, "wan_speedtest": {"$ref": "#/components/schemas/synthetictest_config_wan_speedtest", "description": "WAN speedtest settings for synthetic tests"}}, "type": "object"}, "synthetictest_config_aggressiveness": {"default": "auto", "description": "Aggressiveness level for a synthetic test. enum: `auto`, `high`, `med`, `low`", "enum": ["auto", "high", "med", "low"], "type": "string"}, "synthetictest_config_custom_probe": {"additionalProperties": false, "description": "Custom probe definition for synthetic tests", "properties": {"aggressiveness": {"$ref": "#/components/schemas/synthetictest_config_aggressiveness", "description": "Probe aggressiveness level for this custom synthetic probe"}, "target": {"description": "Can be URL (e.g. http://x.com, https://x.com:8080/path/to/resource), IP address, or IP:port combination", "examples": ["10.3.5.3:8080"], "type": "string"}, "threshold": {"description": "Response-time threshold for this custom probe, in milliseconds", "examples": [100], "type": "integer"}, "type": {"$ref": "#/components/schemas/synthetictest_config_custom_probe_type", "description": "Probe type used by this custom synthetic probe"}}, "type": "object"}, "synthetictest_config_custom_probe_type": {"default": "icmp", "description": "enum: `application`, `curl`, `icmp`, `reachability`, `tcp`", "enum": ["application", "curl", "icmp", "reachability", "tcp"], "type": "string"}, "synthetictest_config_custom_probes": {"additionalProperties": {"$ref": "#/components/schemas/synthetictest_config_custom_probe"}, "description": "Custom probes to be used for synthetic tests", "type": "object"}, "synthetictest_config_lan_network": {"additionalProperties": false, "description": "configure minis probes to be tested on lan networks of gateways", "properties": {"networks": {"$ref": "#/components/schemas/synthetictest_config_lan_networks_networks", "description": "LAN network names where synthetic probes are run"}, "probes": {"$ref": "#/components/schemas/synthetictest_config_probes", "description": "Synthetic probe names to run on the listed LAN networks"}}, "type": "object"}, "synthetictest_config_lan_networks": {"description": "List of networks to be used for synthetic tests", "items": {"$ref": "#/components/schemas/synthetictest_config_lan_network"}, "type": "array"}, "synthetictest_config_lan_networks_networks": {"description": "List of networks to be used for synthetic tests", "examples": [["pos-stations", "pos-machines"]], "items": {"type": "string"}, "type": "array"}, "synthetictest_config_probes": {"description": "app name comes from `custom_probes` above or /const/synthetic_test_probes", "items": {"type": "string"}, "type": "array"}, "synthetictest_config_vlan": {"additionalProperties": false, "description": "Deprecated VLAN-based synthetic test settings", "properties": {"custom_test_urls": {"$ref": "#/components/schemas/synthetictest_config_vlan_custom_test_urls", "description": "Deprecated custom URLs tested by VLAN-based synthetic probes"}, "disabled": {"default": false, "description": "For some vlans where we don't want this to run", "type": "boolean"}, "probes": {"$ref": "#/components/schemas/synthetictest_config_probes", "description": "Synthetic probe names to run for the listed VLANs"}, "vlan_ids": {"$ref": "#/components/schemas/synthetictest_config_vlan_vlan_ids", "description": "VLAN identifiers where synthetic probes are run"}}, "type": "object"}, "synthetictest_config_vlan_custom_test_urls": {"deprecated": true, "description": "Deprecated custom URLs tested by VLAN-based synthetic probes", "examples": [["https://www.abc.com/", "https://10.3.5.1:8080/about"]], "items": {"type": "string"}, "type": "array"}, "synthetictest_config_vlan_vlan_ids": {"description": "VLAN identifiers where deprecated VLAN-based synthetic probes run", "examples": [[10, 20, "{{vlan}}"]], "items": {"$ref": "#/components/schemas/vlan_id_with_variable"}, "type": "array"}, "synthetictest_config_vlans": {"deprecated": true, "description": "Deprecated VLAN-based synthetic test configurations", "items": {"$ref": "#/components/schemas/synthetictest_config_vlan"}, "type": "array"}, "synthetictest_config_wan_speedtest": {"additionalProperties": false, "description": "WAN speedtest scheduling settings for synthetic tests", "properties": {"enabled": {"description": "Whether scheduled WAN speedtests are enabled", "type": "boolean"}, "time_of_day": {"$ref": "#/components/schemas/time_of_day", "description": "Scheduled time of day for WAN speedtests"}}, "type": "object"}, "synthetictest_device": {"description": "Request body for triggering a synthetic test on a device", "properties": {"host": {"description": "If `type`==`lan_connectivity`. Hostname or IP address to probe for LAN connectivity testing", "examples": ["www.example.com"], "type": "string"}, "hostname": {"description": "If `type`==`dns`. Hostname to resolve during the DNS synthetic test", "examples": ["google.com\""], "type": "string"}, "ip": {"description": "If `type`==`arp`. IP address to resolve through ARP during the synthetic test", "examples": ["192.168.3.5"], "type": "string"}, "password": {"description": "If `type`==`radius`. Password used for RADIUS authentication testing", "examples": ["test123"], "format": "password", "type": "string"}, "ping_count": {"default": 10, "description": "If `type`==`lan_connectivity`. Number of ping probes to send during the LAN connectivity test", "maximum": 60, "minimum": 10, "type": "integer"}, "ping_details": {"default": false, "description": "If `type`==`lan_connectivity`. Whether to include per-ping results in the LAN connectivity test output", "type": "boolean"}, "ping_size": {"default": 56, "description": "If `type`==`lan_connectivity`. Payload size, in bytes, for each ping probe", "maximum": 65535, "minimum": 56, "type": "integer"}, "port_id": {"description": "If `type`==`speedtest`, required for ssr", "examples": ["wan0"], "type": "string"}, "protocol": {"$ref": "#/components/schemas/synthetictest_device_protocol", "description": "If `type`==`lan_connectivity`. Protocol or protocol combination used for the connectivity test"}, "tenant": {"description": "If `type`==`curl` or `type`==`lan_connectivity`", "examples": ["lan_network1"], "type": "string"}, "timeout": {"default": 60, "description": "If `type`==`curl`. Timeout, in seconds, for the HTTP request", "examples": [60], "maximum": 120, "minimum": 30, "type": "integer"}, "traceroute_udp_port": {"default": 33434, "description": "SRX only, traceroute udp port", "maximum": 65535, "minimum": 0, "type": "integer"}, "type": {"$ref": "#/components/schemas/synthetictest_type", "description": "Synthetic test type to run against the target"}, "url": {"description": "If `type`==`curl`. URL requested during the HTTP synthetic test", "examples": ["https://www.example.com"], "type": "string"}, "username": {"description": "If `type`==`radius`. Username used for RADIUS authentication testing", "examples": ["user"], "type": "string"}, "vlan_id": {"$ref": "#/components/schemas/synthetictest_device_vlan_id", "description": "Required for AP. VLAN ID used by the synthetic test when the target device is an AP"}}, "required": ["type"], "type": "object"}, "synthetictest_device_protocol": {"default": "ping+traceroute", "description": "If `type`==`lan_connectivity`. Protocol or protocol combination used by the LAN connectivity test. enum: `ping`, `traceroute`, `ping+traceroute`", "enum": ["ping", "ping+traceroute", "traceroute"], "type": "string"}, "synthetictest_device_vlan_id": {"description": "Required for AP. VLAN ID used by the synthetic test when the target device is an AP", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "synthetictest_info": {"additionalProperties": false, "description": "Synthetic test status or result record", "properties": {"by": {"description": "Actor that triggered the synthetic test", "examples": ["user"], "type": "string"}, "device_type": {"$ref": "#/components/schemas/device_type", "description": "Device category that ran the synthetic test"}, "failed": {"description": "Whether the synthetic test failed", "examples": [false], "type": "boolean"}, "latency": {"description": "Measured latency for the synthetic test, in milliseconds", "examples": [40], "type": "integer"}, "mac": {"description": "Device MAC address that ran the synthetic test", "type": "string"}, "port_id": {"description": "Interface identifier used to run the synthetic test", "examples": ["ge-0/0/2"], "type": "string"}, "reason": {"description": "Failure reason reported for the synthetic test, when available", "examples": ["interface not ready to perform test"], "type": "string"}, "rx_mbps": {"description": "Receive throughput measured by the synthetic speed test, in Mbps", "examples": [322], "type": "integer"}, "start_time": {"description": "Epoch timestamp, in seconds, when the synthetic test started", "examples": [1675718807], "type": "integer"}, "status": {"description": "Current execution status of the synthetic test", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the synthetic test result was recorded"}, "tx_mbps": {"description": "Transmit throughput measured by the synthetic speed test, in Mbps", "examples": [199], "type": "integer"}, "type": {"$ref": "#/components/schemas/synthetictest_type", "description": "Synthetic test type for this result"}, "vlan_id": {"description": "Identifier of the VLAN used by the synthetic test", "examples": [20], "type": "integer"}}, "type": "object"}, "synthetictest_protocol": {"description": "Protocol used by a synthetic test probe. enum: `ping`, `traceroute`", "enum": ["ping", "traceroute"], "type": "string"}, "synthetictest_radius_server": {"description": "Request body for testing RADIUS server availability from a switch", "properties": {"password": {"description": "Specify the password associated with the username", "format": "password", "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"}, "synthetictest_type": {"description": "enum: `arp`, `curl`, `dhcp`, `dhcp6`, `dns`, `lan_connectivity`, `radius`, `speedtest`", "enum": ["arp", "curl", "dhcp", "dhcp6", "dns", "lan_connectivity", "radius", "speedtest"], "type": "string"}, "system_defined_port_usages": {"description": "system-default port usages. enum: `ap`, `iot`, `uplink``", "enum": ["ap", "iot", "uplink"], "type": "string"}, "tacacs": {"additionalProperties": false, "description": "TACACS+ settings for switch management authentication and accounting", "properties": {"acct_servers": {"$ref": "#/components/schemas/tacacs_acct_servers", "description": "TACACS+ accounting servers used for switch management sessions"}, "default_role": {"$ref": "#/components/schemas/tacacs_default_role", "description": "Default switch-management role to use for TACACS+ logins"}, "enabled": {"description": "Whether TACACS+ is enabled for switch management authentication", "type": "boolean"}, "network": {"description": "Source network used for connectivity to the TACACS+ servers", "type": "string"}, "tacplus_servers": {"$ref": "#/components/schemas/tacacs_auth_servers", "description": "TACACS+ authentication servers used for switch management logins"}}, "type": "object"}, "tacacs_acct_server": {"additionalProperties": false, "description": "TACACS+ accounting server settings", "properties": {"host": {"description": "Address or hostname of the TACACS+ accounting server", "type": "string"}, "port": {"description": "TCP port used by the TACACS+ accounting server", "type": "string"}, "secret": {"description": "Shared secret used with this TACACS+ accounting server", "format": "password", "type": "string"}, "timeout": {"default": 10, "description": "TACACS+ accounting server timeout, in seconds", "type": "integer"}}, "type": "object"}, "tacacs_acct_servers": {"description": "List of TACACS+ accounting servers", "items": {"$ref": "#/components/schemas/tacacs_acct_server"}, "type": "array"}, "tacacs_auth_server": {"additionalProperties": false, "description": "TACACS+ authentication server settings", "properties": {"host": {"description": "Address or hostname of the TACACS+ authentication server", "type": "string"}, "port": {"description": "TCP port used by the TACACS+ authentication server", "type": "string"}, "secret": {"description": "Shared secret used with this TACACS+ authentication server", "format": "password", "type": "string"}, "timeout": {"default": 10, "description": "TACACS+ authentication server timeout, in seconds", "type": "integer"}}, "type": "object"}, "tacacs_auth_servers": {"description": "List of TACACS+ authentication servers", "items": {"$ref": "#/components/schemas/tacacs_auth_server"}, "type": "array"}, "tacacs_default_role": {"default": "none", "description": "enum: `admin`, `helpdesk`, `none`, `read`", "enum": ["admin", "helpdesk", "none", "read"], "type": "string"}, "template": {"description": "WLAN template configuration applied across sites or site groups", "properties": {"applies": {"$ref": "#/components/schemas/template_applies", "description": "Organizations, sites, or site groups targeted by this WLAN template"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Timestamp when the WLAN template was created"}, "deviceprofile_ids": {"$ref": "#/components/schemas/template_deviceprofile_ids", "description": "Device profile IDs that further limit where this WLAN template applies"}, "exceptions": {"$ref": "#/components/schemas/template_exceptions", "description": "Sites or site groups excluded from this WLAN template even when included by the application scope"}, "filter_by_deviceprofile": {"description": "Whether to further filter by Device Profile", "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the WLAN template"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Timestamp when the WLAN template was last modified"}, "name": {"description": "Display name of the WLAN template", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns this WLAN template"}}, "required": ["name"], "type": "object"}, "template_applies": {"additionalProperties": false, "description": "Where this template should be applied to, can be org_id, site_ids, sitegroup_ids", "properties": {"org_id": {"description": "Organization included in the WLAN template application scope", "format": "uuid", "type": "string"}, "site_ids": {"$ref": "#/components/schemas/template_applies_site_ids", "description": "Sites included in the WLAN template application scope"}, "sitegroup_ids": {"$ref": "#/components/schemas/template_applies_sitegroup_ids", "description": "Site groups included in the WLAN template application scope"}}, "type": "object"}, "template_applies_site_ids": {"description": "List of site ids", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "template_applies_sitegroup_ids": {"description": "List of sitegroup ids", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "template_deviceprofile_ids": {"description": "List of Device Profile ids", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "template_exceptions": {"additionalProperties": false, "description": "Where this template should not be applied to (takes precedence)", "properties": {"site_ids": {"$ref": "#/components/schemas/template_exceptions_site_ids", "description": "Sites excluded from the WLAN template application scope"}, "sitegroup_ids": {"$ref": "#/components/schemas/template_exceptions_sitegroup_ids", "description": "Site groups excluded from the WLAN template application scope"}}, "type": "object"}, "template_exceptions_site_ids": {"description": "List of site ids", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "template_exceptions_sitegroup_ids": {"description": "List of sitegroup ids", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "templates": {"description": "WLAN template records returned by a template list response", "items": {"$ref": "#/components/schemas/template"}, "type": "array"}, "test_cradlepoint": {"additionalProperties": false, "description": "Cradlepoint integration connectivity test result", "properties": {"error": {"description": "if status is `inactive` this field returns the reason for it being inactive.", "examples": ["Cradlepoint API keys are no longer valid, please verify and update the keys under organization settings."], "readOnly": true, "type": "string"}, "last_status": {"$ref": "#/components/schemas/test_cradlepoint_last_status", "description": "Integration status detected during the most recent Cradlepoint sync"}}, "type": "object"}, "test_cradlepoint_last_status": {"description": "status of integration detected during last sync. enum: `active`, `inactive`", "enum": ["active", "inactive"], "examples": ["inactive"], "readOnly": true, "type": "string"}, "test_sms_global": {"description": "Request body for validating SMSGlobal SMS gateway credentials", "properties": {"smsglobal_api_key": {"description": "SMSGlobal API key used to send the test SMS", "examples": ["123456"], "type": "string"}, "smsglobal_api_secret": {"description": "SMSGlobal API secret used to send the test SMS", "examples": ["abcdef"], "format": "password", "type": "string"}, "smsglobal_sender": {"description": "Optional sender's number or sender ID. If not provided, uses the default number associated with the account", "examples": ["61400000002"], "type": "string"}, "to": {"description": "Phone number of the recipient of SMS with country code", "examples": ["+911122334455"], "type": "string"}}, "required": ["smsglobal_api_key", "smsglobal_api_secret", "to"], "type": "object"}, "test_telstra": {"description": "Request body for validating Telstra SMS gateway credentials", "properties": {"telstra_client_id": {"description": "Telstra client identifier used to send the test SMS", "examples": ["123456"], "type": "string"}, "telstra_client_secret": {"description": "Telstra client secret used to send the test SMS", "examples": ["abcdef"], "format": "password", "type": "string"}, "to": {"description": "Phone number of the recipient of SMS with country code", "examples": ["+911122334455"], "type": "string"}}, "required": ["telstra_client_id", "telstra_client_secret", "to"], "type": "object"}, "test_twilio": {"description": "Request body for validating Twilio SMS gateway credentials", "properties": {"from": {"description": "One of the numbers you have in your Twilio account", "examples": ["+185051234567"], "type": "string"}, "to": {"description": "Phone number of the recipient of SMS", "examples": ["+19999999999"], "type": "string"}, "twilio_auth_token": {"description": "Twilio Auth Token used to send the test SMS", "examples": ["2135be04736a1a0a314bce432d61721a"], "type": "string"}, "twilio_sid": {"description": "Twilio account SID used to send the test SMS", "examples": ["REDACTED_TWILIO_ACCOUNT_SID"], "type": "string"}}, "required": ["twilio_sid", "twilio_auth_token", "from", "to"], "type": "object"}, "ticket": {"description": "Support ticket record with status, comments, and metadata", "properties": {"case_number": {"description": "Support case number associated with this ticket", "readOnly": true, "type": "string"}, "comments": {"$ref": "#/components/schemas/ticket_comments", "description": "Discussion comments recorded on this support ticket"}, "created_at": {"description": "Time when this support ticket was created, in epoch seconds", "readOnly": true, "type": "integer"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this support ticket"}, "requester": {"description": "User who opened or requested this support ticket", "readOnly": true, "type": "string"}, "requester_email": {"description": "Email of the requester", "format": "email", "type": "string"}, "status": {"$ref": "#/components/schemas/ticket_status", "description": "Current lifecycle status of this support ticket"}, "subject": {"description": "Short summary of the support request", "type": "string"}, "type": {"description": "Question (default) / bug / critical", "type": "string"}, "updated_at": {"description": "Time when this support ticket was last updated, in epoch seconds", "readOnly": true, "type": "integer"}}, "required": ["subject", "type"], "type": "object"}, "ticket_attachment": {"additionalProperties": false, "description": "Download information for a support ticket attachment", "properties": {"content_url": {"description": "Download URL for the support ticket attachment", "examples": ["https://api.mist.com/api/v1/forward/download?jwt=..."], "format": "url", "type": "string"}}, "type": "object"}, "ticket_comment": {"description": "Comment on a support ticket", "properties": {"attachment_ids": {"$ref": "#/components/schemas/ticket_comments_attachment_ids", "description": "Identifiers of attachments linked to this ticket comment"}, "attachments": {"$ref": "#/components/schemas/ticket_comments_attachments", "description": "Attachment metadata returned with this ticket comment"}, "author": {"description": "User who wrote this ticket comment", "readOnly": true, "type": "string"}, "comment": {"description": "Text body of this ticket comment", "type": "string"}, "created_at": {"description": "Time when this ticket comment was created, in epoch seconds", "readOnly": true, "type": "integer"}}, "required": ["author", "comment", "created_at"], "type": "object"}, "ticket_comment_import_file": {"additionalProperties": false, "description": "Multipart payload for adding a ticket comment with an attachment", "properties": {"comment": {"description": "Text body for the ticket comment submitted with the uploaded file", "examples": ["this is urgent"], "type": "string"}, "file": {"contentMediaType": "application/octet-stream", "description": "Binary file payload to attach to the ticket comment", "type": "string"}}, "type": "object"}, "ticket_comments": {"description": "List of comments on a support ticket", "items": {"$ref": "#/components/schemas/ticket_comment"}, "type": "array"}, "ticket_comments_attachment": {"additionalProperties": false, "description": "Metadata for an attachment on a ticket comment", "properties": {"content_type": {"description": "MIME type of the ticket comment attachment", "examples": ["image/png"], "type": "string"}, "content_url": {"description": "Download URL for the ticket comment attachment", "examples": ["https://api.mist.com/api/v1/forward/download?jwt=..."], "format": "url", "type": "string"}, "created_at": {"description": "Time when this ticket comment attachment was created, in epoch seconds", "examples": [1453908369], "type": "integer"}, "file_name": {"description": "Original file name of the ticket comment attachment", "examples": ["crash.png"], "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this ticket comment attachment"}, "size_in_bytes": {"description": "Attachment file size, in bytes", "examples": [1943], "type": "integer"}}, "type": "object"}, "ticket_comments_attachment_id": {"description": "Unique identifier for a ticket comment attachment", "examples": ["00000000-0000-0000-0000-15231a659c13"], "format": "uuid", "readOnly": true, "type": "string"}, "ticket_comments_attachment_ids": {"description": "List of ticket comment attachment identifiers", "examples": [["00000000-0000-0000-0000-15231a659c78"]], "items": {"$ref": "#/components/schemas/ticket_comments_attachment_id"}, "readOnly": true, "type": "array"}, "ticket_comments_attachments": {"description": "List of attachment metadata objects for a ticket comment", "items": {"$ref": "#/components/schemas/ticket_comments_attachment"}, "readOnly": true, "type": "array"}, "ticket_status": {"description": "Ticket status. enum: `closed`, `open`, `pending`, `solved`. `open` means Mist is working on it, `pending` means requester attention is needed, `solved` means Mist considers it resolved but it can still be updated or rated, and `closed` means it is archived", "enum": ["closed", "open", "pending", "solved"], "type": "string"}, "ticket_upload_attachments_file": {"additionalProperties": false, "description": "Multipart upload payload containing a ticket attachment file", "properties": {"file": {"contentMediaType": "application/octet-stream", "description": "Ekahau or ibwave file", "type": "string"}}, "type": "object"}, "tickets": {"description": "Support ticket records returned by a ticket list response", "items": {"$ref": "#/components/schemas/ticket"}, "type": "array"}, "time_of_day": {"default": "any", "description": "`any` / HH:MM (24-hour format)", "examples": ["12:00"], "type": "string"}, "timestamp": {"description": "Epoch timestamp, in seconds", "format": "double", "readOnly": true, "type": "number"}, "troubleshoot_call_item": {"additionalProperties": false, "description": "Per-sample call troubleshooting metrics", "properties": {"ap_num_clients": {"description": "Troubleshooting metric value for AP client count", "examples": [-0.08802365511655807], "type": "number"}, "ap_rtt": {"description": "Troubleshooting metric value for AP round-trip time", "examples": [0.09924473613500595], "type": "number"}, "audio_in": {"$ref": "#/components/schemas/call_troubleshoot_data", "description": "Troubleshooting metrics for the inbound audio stream"}, "audio_out": {"$ref": "#/components/schemas/call_troubleshoot_data", "description": "Troubleshooting metrics for the outbound audio stream"}, "client_cpu": {"description": "Troubleshooting metric value for client CPU load", "examples": [0.00834270566701889], "type": "number"}, "client_n_streams": {"description": "Troubleshooting metric value for the number of client spatial streams", "examples": [0.00734270566701889], "type": "number"}, "client_radio_band": {"description": "Troubleshooting metric value for the client radio band", "examples": [0.5841414928436279], "type": "number"}, "client_rssi": {"description": "Troubleshooting metric value for client RSSI", "examples": [0.7594696879386902], "type": "number"}, "client_rx_bytes": {"description": "Troubleshooting metric value for bytes received by the client", "examples": [2.365511655807e-05], "type": "number"}, "client_rx_rates": {"description": "Troubleshooting metric value for client receive data rates", "examples": [0.02441493794322014], "type": "number"}, "client_rx_retries": {"description": "Troubleshooting metric value for client receive retries", "examples": [-0.14325742423534393], "type": "number"}, "client_tx_bytes": {"description": "Troubleshooting metric value for bytes transmitted by the client", "examples": [0.00102365511655807], "type": "number"}, "client_tx_rates": {"description": "Troubleshooting metric value for client transmit data rates", "examples": [0.22236637771129608], "type": "number"}, "client_tx_retries": {"description": "Troubleshooting metric value for client transmit retries", "examples": [0.3308201730251312], "type": "number"}, "client_vpn_distance": {"description": "Troubleshooting metric value for client VPN distance", "examples": [-0.0001660545531194657], "type": "number"}, "client_wifi_version": {"description": "Troubleshooting metric value for the client Wi-Fi version", "examples": [7.0566701889e-07], "type": "number"}, "expected": {"description": "Model baseline value expected for this call sample", "examples": [-2.8630001056670187], "type": "number"}, "radio_ap_change": {"description": "Troubleshooting metric value for AP changes on the radio path", "examples": [0.01850946433842182], "type": "number"}, "radio_bandwidth": {"description": "Troubleshooting metric value for radio channel bandwidth", "examples": [-0.021175479516386986], "type": "number"}, "radio_channel": {"description": "Troubleshooting metric value for the radio channel", "examples": [0.11686426401138306], "type": "number"}, "radio_rx_failed": {"description": "Troubleshooting metric value for failed radio receive attempts", "examples": [1.1782013177871704], "type": "number"}, "radio_tx_power": {"description": "Troubleshooting metric value for radio transmit power", "examples": [0.121039018034935], "type": "number"}, "radio_util": {"description": "Troubleshooting metric value for radio utilization", "examples": [0.2452986091375351], "type": "number"}, "radio_util_interference": {"description": "Troubleshooting metric value for radio interference utilization", "examples": [3.4367904663085938], "type": "number"}, "site_num_clients": {"description": "Troubleshooting metric value for the number of clients at the site", "examples": [0.055026158690452576], "type": "number"}, "site_wan_avg_download_mbps": {"description": "Troubleshooting metric value for site WAN average download throughput", "examples": [3.0566701889e-07], "type": "number"}, "site_wan_avg_upload_mbps": {"description": "Troubleshooting metric value for site WAN average upload throughput", "examples": [5.566701889e-08], "type": "number"}, "site_wan_download_mbps": {"description": "Troubleshooting metric value for site WAN download throughput", "examples": [8.0566701889e-07], "type": "number"}, "site_wan_jitter": {"description": "Troubleshooting metric value for site WAN jitter", "examples": [1.00566701889e-06], "type": "number"}, "site_wan_rtt": {"description": "Troubleshooting metric value for site WAN round-trip time", "examples": [4.0566701889e-07], "type": "number"}, "site_wan_upload_mbps": {"description": "Troubleshooting metric value for site WAN upload throughput", "examples": [2.0566701889e-07], "type": "number"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when this call troubleshooting sample was recorded"}, "video_in": {"$ref": "#/components/schemas/call_troubleshoot_data", "description": "Troubleshooting metrics for the inbound video stream"}, "video_out": {"$ref": "#/components/schemas/call_troubleshoot_data", "description": "Troubleshooting metrics for the outbound video stream"}}, "type": "object"}, "troubleshoot_type": {"description": "enum: `wan`, `wired`, `wireless`", "enum": ["wan", "wired", "wireless"], "type": "string"}, "tunnel_config": {"additionalProperties": false, "description": "Gateway tunnel configuration for provider-managed or custom tunnels", "properties": {"auto_provision": {"$ref": "#/components/schemas/tunnel_config_auto_provision", "description": "Provider auto-provisioning settings for tunnel endpoints"}, "ike_lifetime": {"description": "Only if `provider`==`custom-ipsec`. IKE lifetime configured for the custom IPsec tunnel", "type": "integer"}, "ike_mode": {"$ref": "#/components/schemas/tunnel_config_ike_mode", "description": "Only if `provider`==`custom-ipsec`. IKE negotiation mode for the tunnel"}, "ike_proposals": {"$ref": "#/components/schemas/tunnel_config_ike_proposals", "description": "If `provider`==`custom-ipsec`, IKE proposals used for custom IPsec negotiation"}, "ipsec_lifetime": {"description": "If `provider`==`custom-ipsec`, IPsec lifetime configured for the custom tunnel", "type": "integer"}, "ipsec_proposals": {"$ref": "#/components/schemas/tunnel_config_ipsec_proposals", "description": "Only if `provider`==`custom-ipsec`. IPsec proposals used for custom IPsec negotiation"}, "local_id": {"description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`", "type": "string"}, "local_subnets": {"$ref": "#/components/schemas/tunnel_config_local_subnets", "description": "Local protected subnets advertised by this tunnel"}, "mode": {"$ref": "#/components/schemas/tunnel_config_tunnel_mode", "description": "Tunnel failover mode used for primary and secondary endpoints"}, "networks": {"$ref": "#/components/schemas/tunnel_config_networks", "description": "Destination networks reachable through this tunnel"}, "primary": {"$ref": "#/components/schemas/tunnel_config_node", "description": "Main remote tunnel endpoint settings"}, "probe": {"$ref": "#/components/schemas/tunnel_config_probe", "description": "Tunnel health probe settings"}, "protocol": {"$ref": "#/components/schemas/tunnel_config_protocol", "description": "Only if `provider`==`custom-ipsec`. Tunnel protocol for custom tunnel negotiation"}, "provider": {"$ref": "#/components/schemas/tunnel_config_provider", "description": "Tunnel provider used when auto provisioning is disabled"}, "psk": {"description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`", "type": "string"}, "remote_subnets": {"$ref": "#/components/schemas/tunnel_config_remote_subnets", "description": "Remote protected subnets reached through policy-based IPsec"}, "secondary": {"$ref": "#/components/schemas/tunnel_config_node", "description": "Backup remote tunnel endpoint settings"}, "version": {"$ref": "#/components/schemas/tunnel_config_version", "description": "Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. Tunnel version value for custom tunnel configuration"}}, "type": "object"}, "tunnel_config_auth_algo": {"description": "enum: `md5`, `sha1`, `sha2`", "enum": ["md5", "sha1", "sha2"], "type": "string"}, "tunnel_config_auto_provision": {"additionalProperties": false, "description": "Auto-provisioning configuration for the tunnel. This takes precedence over the `primary` and `secondary` nodes.", "properties": {"enabled": {"description": "Enable auto provisioning for the tunnel. If enabled, the `primary` and `secondary` nodes will be ignored.", "type": "boolean"}, "latlng": {"$ref": "#/components/schemas/tunnel_config_auto_provision_lat_lng", "description": "Geographic coordinate override used for tunnel POP selection"}, "primary": {"$ref": "#/components/schemas/tunnel_config_auto_provision_node", "description": "Main auto-provisioned tunnel endpoint settings"}, "provider": {"$ref": "#/components/schemas/tunnel_config_auto_provision_provider", "description": "Tunnel provider used for automatic endpoint provisioning"}, "region": {"description": "API override for POP selection in the case user wants to override the auto discovery of remote network location and force the tunnel to use the specified peer location.", "type": "string"}, "secondary": {"$ref": "#/components/schemas/tunnel_config_auto_provision_node", "description": "Backup auto-provisioned tunnel endpoint settings"}, "service_connection": {"description": "if `provider`==`prisma-ipsec`. By default, we'll use the location of the site to determine the optimal Remote Network location, optionally, service_connection can be considered, then we'll also consider this along with the site location. Define service_connection if the traffic is to be routed to a specific service connection. This field takes a service connection name that is configured in the Prisma cloud, Prisma Access Setup -> Service Connections.", "examples": ["Juniper-Lab-SC-1"], "type": "string"}}, "required": ["provider"], "type": "object"}, "tunnel_config_auto_provision_lat_lng": {"additionalProperties": false, "description": "Geographic coordinate override for tunnel POP selection", "properties": {"lat": {"description": "Geographic latitude used for POP selection override", "examples": [37.295833], "format": "double", "type": "number"}, "lng": {"description": "Geographic longitude used for POP selection override", "examples": [-122.032946], "format": "double", "type": "number"}}, "required": ["lat", "lng"], "type": "object"}, "tunnel_config_auto_provision_node": {"description": "Auto-provisioned tunnel endpoint settings", "properties": {"probe_ips": {"$ref": "#/components/schemas/strings", "description": "Probe IP addresses used to monitor auto-provisioned tunnel reachability"}, "wan_names": {"$ref": "#/components/schemas/tunnel_config_auto_provision_node_wan_names", "description": "WAN interface names used by the auto-provisioned tunnel endpoint"}}}, "tunnel_config_auto_provision_node_wan_names": {"description": "Optional, only needed if `vars_only`==`false`", "items": {"examples": ["wan0"], "type": "string"}, "type": "array"}, "tunnel_config_auto_provision_provider": {"description": "Tunnel provider used for automatic endpoint provisioning. enum: `jse-ipsec`, `zscaler-ipsec`", "enum": ["jse-ipsec", "zscaler-ipsec"], "type": "string"}, "tunnel_config_dh_group": {"default": "14", "description": "Only if `provider`==`custom-ipsec`. Diffie-Hellman group for IPsec phase 2. enum: `1`, `14`, `15`, `16`, `19`, `2`, `20`, `21`, `24`, `5`. `14` is the default 2048-bit group; `19`, `20`, `21`, and `24` are ECP groups", "enum": ["1", "14", "15", "16", "19", "2", "20", "21", "24", "5"], "type": "string"}, "tunnel_config_enc_algo": {"default": "aes256", "description": "enum: `3des`, `aes128`, `aes256`, `aes_gcm128`, `aes_gcm256`", "enum": ["3des", "aes128", "aes256", "aes_gcm128", "aes_gcm256"], "type": ["string", "null"]}, "tunnel_config_ike_dh_group": {"default": "14", "description": "Diffie-Hellman group for IKE phase 1. enum: `1`, `14`, `15`, `16`, `19`, `2`, `20`, `21`, `24`, `5`. `14` is the default 2048-bit group; `19`, `20`, `21`, and `24` are ECP groups", "enum": ["1", "14", "15", "16", "19", "2", "20", "21", "24", "5"], "type": "string"}, "tunnel_config_ike_mode": {"default": "main", "description": "Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main`", "enum": ["aggressive", "main"], "type": "string"}, "tunnel_config_ike_proposal": {"additionalProperties": false, "description": "IKE proposal settings for custom IPsec tunnels", "properties": {"auth_algo": {"$ref": "#/components/schemas/tunnel_config_auth_algo", "description": "Integrity algorithm used by this IKE proposal"}, "dh_group": {"$ref": "#/components/schemas/tunnel_config_ike_dh_group", "description": "Diffie-Hellman group used by this IKE proposal"}, "enc_algo": {"$ref": "#/components/schemas/tunnel_config_enc_algo", "description": "Cipher algorithm used by this IKE proposal"}}, "type": "object"}, "tunnel_config_ike_proposals": {"description": "If `provider`==`custom-ipsec`, IKE proposals used for custom IPsec negotiation", "items": {"$ref": "#/components/schemas/tunnel_config_ike_proposal"}, "type": "array"}, "tunnel_config_ipsec_proposal": {"additionalProperties": false, "description": "IPsec proposal settings for custom IPsec tunnels", "properties": {"auth_algo": {"$ref": "#/components/schemas/tunnel_config_auth_algo", "description": "Integrity algorithm used by this IPsec proposal"}, "dh_group": {"$ref": "#/components/schemas/tunnel_config_dh_group", "description": "Diffie-Hellman group used by this IPsec proposal"}, "enc_algo": {"$ref": "#/components/schemas/tunnel_config_enc_algo", "description": "Cipher algorithm used by this IPsec proposal"}}, "type": "object"}, "tunnel_config_ipsec_proposals": {"description": "Only if `provider`==`custom-ipsec`. IPsec proposals used for custom IPsec negotiation", "items": {"$ref": "#/components/schemas/tunnel_config_ipsec_proposal"}, "type": "array"}, "tunnel_config_local_subnets": {"description": "List of Local protected subnet for policy-based IPSec negotiation", "items": {"type": "string"}, "type": "array"}, "tunnel_config_networks": {"description": "If `provider`==`custom-ipsec` or `provider`==`prisma-ipsec`, networks reachable via this tunnel", "items": {"type": "string"}, "type": "array"}, "tunnel_config_node": {"additionalProperties": false, "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`", "properties": {"hosts": {"$ref": "#/components/schemas/tunnel_config_node_hosts", "description": "Remote gateway host addresses for this tunnel node"}, "internal_ips": {"$ref": "#/components/schemas/tunnel_config_node_internal_ips", "description": "Internal IP addresses configured on this tunnel node"}, "probe_ips": {"$ref": "#/components/schemas/strings", "description": "Health-check IP addresses used to monitor this tunnel node"}, "remote_ids": {"$ref": "#/components/schemas/tunnel_config_node_remote_ids", "description": "IKE identities expected from this tunnel node"}, "wan_names": {"$ref": "#/components/schemas/tunnel_config_node_wan_names", "description": "Interface names that source tunnel traffic for this node"}}, "required": ["hosts", "wan_names"], "type": "object"}, "tunnel_config_node_hosts": {"description": "Remote gateway host addresses for a tunnel node", "items": {"description": "IP address of the remote host", "type": "string"}, "type": "array"}, "tunnel_config_node_internal_ips": {"description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`", "items": {"type": "string"}, "type": "array"}, "tunnel_config_node_remote_ids": {"description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`", "items": {"type": "string"}, "type": "array"}, "tunnel_config_node_wan_names": {"description": "Interface names that source tunnel traffic for a tunnel node", "items": {"type": "string"}, "type": "array"}, "tunnel_config_probe": {"additionalProperties": false, "description": "Tunnel health probe settings", "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": {"$ref": "#/components/schemas/tunnel_config_probe_type", "description": "Protocol used by the custom IPsec tunnel health probe"}}, "type": "object"}, "tunnel_config_probe_type": {"default": "icmp", "description": "Protocol used by the custom IPsec tunnel health probe. enum: `http`, `icmp`", "enum": ["http", "icmp"], "type": "string"}, "tunnel_config_protocol": {"description": "Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec`", "enum": ["gre", "ipsec"], "type": "string"}, "tunnel_config_provider": {"description": "Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `custom-gre`, `jse-ipsec`, `prisma-ipsec`, `zscaler-gre`, `zscaler-ipsec`", "enum": ["custom-ipsec", "custom-gre", "jse-ipsec", "prisma-ipsec", "zscaler-gre", "zscaler-ipsec"], "type": "string"}, "tunnel_config_remote_subnets": {"description": "List of Remote protected subnet for policy-based IPSec negotiation", "items": {"type": "string"}, "type": "array"}, "tunnel_config_tunnel_mode": {"default": "active-standby", "description": "Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby`", "enum": ["active-active", "active-standby"], "type": "string"}, "tunnel_config_version": {"default": "2", "description": "Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2`", "enum": ["1", "2"], "type": "string"}, "tunnel_priority": {"description": "Relative preference assigned to the tunnel. enum: `primary`, `secondary`", "enum": ["primary", "secondary"], "type": "string"}, "tunnel_provider_options": {"additionalProperties": false, "description": "Provider-specific options for gateway tunnel auto provisioning", "properties": {"jse": {"$ref": "#/components/schemas/tunnel_provider_options_jse", "description": "Juniper Secure Edge provisioning options for tunnel endpoints"}, "prisma": {"$ref": "#/components/schemas/tunnel_provider_options_prisma", "description": "Palo Alto Prisma Access provisioning options for tunnel endpoints"}, "zscaler": {"$ref": "#/components/schemas/tunnel_provider_options_zscaler", "description": "Provider settings for Zscaler tunnel endpoints"}}, "type": "object"}, "tunnel_provider_options_jse": {"additionalProperties": false, "description": "For jse-ipsec, this allows provisioning of adequate resource on JSE. Make sure adequate licenses are added", "properties": {"num_users": {"description": "User capacity to provision on Juniper Secure Edge", "examples": [5], "type": "integer"}, "org_name": {"description": "JSE Organization name. The list of available organizations can be retrieved with the [Get Org JSE Info](/#operations/getOrgJseInfo) API Call", "examples": ["JSE_ORG1"], "type": "string"}}, "type": "object"}, "tunnel_provider_options_prisma": {"additionalProperties": false, "description": "Prisma Access provider options for tunnel auto provisioning", "properties": {"service_account_name": {"description": "For prisma-ipsec, service account name to used for tunnel auto provisioning", "examples": ["sa1@1823425211"], "type": "string"}}, "type": "object"}, "tunnel_provider_options_zscaler": {"additionalProperties": false, "description": "For zscaler-ipsec and zscaler-gre", "properties": {"aup_block_internet_until_accepted": {"default": false, "description": "Whether Zscaler blocks internet access until the Acceptable Use Policy is accepted", "type": "boolean"}, "aup_enabled": {"default": false, "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)", "type": "boolean"}, "aup_force_ssl_inspection": {"default": false, "description": "Proxy HTTPs traffic, requiring Zscaler cert to be installed in browser", "type": "boolean"}, "aup_timeout_in_days": {"description": "Required if `aup_enabled`==`true`. Days before AUP is requested again", "maximum": 180, "minimum": 1, "type": "integer"}, "auth_required": {"default": false, "description": "Enable this option to enforce user authentication", "type": "boolean"}, "caution_enabled": {"default": false, "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users", "type": "boolean"}, "dn_bandwidth": {"description": "Download bandwidth cap of the link, in Mbps. Disabled if not set", "examples": [200], "format": "double", "maximum": 99999, "minimum": 0.1, "type": ["number", "null"]}, "idle_time_in_minutes": {"description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation", "maximum": 43200, "minimum": 0, "type": "integer"}, "ofw_enabled": {"default": false, "description": "If `true`, enable the firewall control option", "type": "boolean"}, "sub_locations": {"$ref": "#/components/schemas/zscaler_sub_locations", "description": "Per-network Zscaler sub-location settings"}, "surrogate_IP": {"default": false, "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies", "type": "boolean"}, "surrogate_IP_enforced_for_known_browsers": {"description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers", "type": "boolean"}, "surrogate_refresh_time_in_minutes": {"description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy", "maximum": 43200, "minimum": 1, "type": "integer"}, "up_bandwidth": {"description": "Download bandwidth cap of the link, in Mbps. Disabled if not set", "examples": [200], "format": "double", "maximum": 99999, "minimum": 0.1, "type": ["number", "null"]}, "xff_forward_enabled": {"default": false, "description": "Location uses proxy chaining to forward traffic", "type": "boolean"}}, "type": "object"}, "tunnel_provider_options_zscaler_sub_location": {"additionalProperties": false, "description": "Zscaler sub-location settings for a specific network", "properties": {"aup_block_internet_until_accepted": {"default": false, "description": "Whether this sub-location blocks internet access until the Acceptable Use Policy is accepted", "type": "boolean"}, "aup_enabled": {"default": false, "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)", "type": "boolean"}, "aup_force_ssl_inspection": {"default": false, "description": "Proxy HTTPs traffic, requiring Zscaler cert to be installed in browser", "type": "boolean"}, "aup_timeout_in_days": {"description": "Required if `aup_enabled`==`true`. Days before AUP is requested again", "maximum": 180, "minimum": 1, "type": "integer"}, "auth_required": {"default": false, "description": "Enable this option to authenticate users", "type": "boolean"}, "caution_enabled": {"default": false, "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users", "type": "boolean"}, "dn_bandwidth": {"description": "Download bandwidth cap of the link, in Mbps. Disabled if not set", "examples": [200], "format": "double", "maximum": 99999, "minimum": 0.1, "type": ["number", "null"]}, "idle_time_in_minutes": {"description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation", "maximum": 43200, "minimum": 0, "type": "integer"}, "name": {"description": "[network]($h/Orgs%20Networks/_overview) name", "type": "string"}, "ofw_enabled": {"default": false, "description": "If `true`, enable the firewall control option", "type": "boolean"}, "surrogate_IP": {"default": false, "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies", "type": "boolean"}, "surrogate_IP_enforced_for_known_browsers": {"description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers", "type": "boolean"}, "surrogate_refresh_time_in_minutes": {"description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy", "maximum": 43200, "minimum": 1, "type": "integer"}, "up_bandwidth": {"description": "Download bandwidth cap of the link, in Mbps. Disabled if not set", "examples": [200], "format": "double", "maximum": 99999, "minimum": 0.1, "type": ["number", "null"]}}, "type": "object"}, "tunnel_type": {"default": "wxtunnel", "description": "Tunnel category, either WAN tunnel or WxLAN tunnel. enum: `wan`, `wxtunnel`", "enum": ["wan", "wxtunnel"], "type": "string"}, "tunnel_via": {"default": "primary", "description": "If `via`==`tunnel`, specifies which tunnel (primary/secondary) this neighbor is associated with. enum: `primary`, `secondary`", "enum": ["primary", "secondary"], "type": "string"}, "tunterm_dhcpd_config": {"additionalProperties": {"$ref": "#/components/schemas/tunterm_dhcpd_config_property"}, "description": "DHCP server/relay configuration of Mist Tunneled VLANs. Property key is the VLAN ID", "properties": {"enabled": {"default": false, "description": "Whether DHCP relay is enabled for tunnel termination VLANs", "type": "boolean"}, "servers": {"$ref": "#/components/schemas/strings", "description": "DHCP server IP addresses used as relay targets"}, "type": {"$ref": "#/components/schemas/tunterm_dhcpd_type", "description": "DHCP forwarding mode for tunnel termination VLANs"}}, "type": "object"}, "tunterm_dhcpd_config_property": {"additionalProperties": false, "description": "Per-VLAN DHCP relay configuration for tunnel termination", "properties": {"enabled": {"default": false, "description": "Whether DHCP relay is enabled for this tunneled VLAN", "type": "boolean"}, "servers": {"$ref": "#/components/schemas/strings", "description": "DHCP server IP addresses used as relay targets for this VLAN"}, "type": {"$ref": "#/components/schemas/tunterm_dhcpd_type", "description": "DHCP forwarding mode for this tunneled VLAN"}}, "type": "object"}, "tunterm_dhcpd_type": {"default": "relay", "description": "DHCP handling mode for tunnel termination. enum: `relay`", "enum": ["relay"], "type": "string"}, "tunterm_monitoring": {"description": "Tunnel termination monitoring checks", "items": {"$ref": "#/components/schemas/tunterm_monitoring_item"}, "type": "array"}, "tunterm_monitoring_item": {"additionalProperties": false, "description": "Monitoring check for tunnel termination reachability", "properties": {"host": {"description": "Can be ip, ipv6, hostname", "examples": ["10.2.8.15"], "minLength": 1, "type": "string"}, "port": {"description": "When `protocol`==`tcp`, TCP port checked by the monitoring probe", "examples": [80], "type": "integer"}, "protocol": {"$ref": "#/components/schemas/tunterm_monitoring_protocol", "description": "Monitoring method used for this tunnel termination check"}, "src_vlan_id": {"description": "Optional source for the monitoring check, vlan_id configured in tunterm_other_ip_configs", "examples": [5], "type": "integer"}, "timeout": {"default": 300, "description": "Maximum time for this monitoring check, in seconds", "examples": [300], "type": "integer"}}, "type": "object"}, "tunterm_monitoring_protocol": {"description": "enum: `arp`, `ping`, `tcp`", "enum": ["arp", "ping", "tcp"], "examples": ["tcp"], "minLength": 1, "type": "string"}, "tunterm_port_config": {"additionalProperties": false, "description": "Ethernet port configuration for tunnel termination interfaces", "properties": {"downstream_ports": {"$ref": "#/components/schemas/tunterm_port_config_downstream_ports", "description": "Ports connected downstream toward APs for tunnel termination"}, "separate_upstream_downstream": {"default": false, "description": "Whether to separate upstream / downstream ports. default is false where all ports will be used.", "type": "boolean"}, "upstream_port_vlan_id": {"$ref": "#/components/schemas/tunterm_port_config_upstream_port_vlan_id", "description": "Native VLAN ID applied to upstream tunnel termination ports"}, "upstream_ports": {"$ref": "#/components/schemas/tunterm_port_config_upstream_ports", "description": "Ports connected upstream toward the LAN for tunnel termination"}}, "type": "object"}, "tunterm_port_config_downstream_ports": {"description": "List of ports to be used for downstream (to AP) purpose", "examples": [["2", "3"]], "items": {"type": "string"}, "type": "array"}, "tunterm_port_config_upstream_port_vlan_id": {"description": "Native VLAN ID for upstream ports", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "tunterm_port_config_upstream_ports": {"description": "List of ports to be used for upstream purpose (to LAN)", "examples": [["0", "1"]], "items": {"type": "string"}, "type": "array"}, "two_factor_code": {"description": "Request body for verifying a 2FA one-time password", "properties": {"two_factor": {"description": "One-time password generated by the user's authenticator app", "examples": ["123456"], "type": "string"}}, "required": ["two_factor"], "type": "object"}, "two_factor_string": {"description": "Request body for submitting a 2FA login code", "properties": {"two_factor": {"description": "One-time 2FA login code generated by the user's authenticator app", "examples": ["123456"], "type": "string"}}, "required": ["two_factor"], "type": "object"}, "tx_bps": {"description": "Rate of transmitting traffic, bits/seconds, last known", "examples": [634301], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "tx_bytes": {"description": "Amount of traffic sent since connection", "examples": [211217389682], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "tx_pkts": {"description": "Amount of packets sent since connection", "examples": [812204062], "format": "int64", "readOnly": true, "type": ["integer", "null"]}, "tx_rate": {"description": "Transmit data rate reported for a wireless or mesh link, in Mbps", "format": "float", "readOnly": true, "type": ["number", "null"]}, "tx_retries": {"description": "Amount of tx retries", "readOnly": true, "type": ["integer", "null"]}, "ui_settings": {"description": "Site UI settings databoard", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when the databoard was created, in epoch seconds"}, "defaultScopeId": {"description": "Scope identifier used by default for this databoard", "examples": ["67970e46-4e12-11e6-9188-0242ad112847"], "type": "string"}, "defaultScopeType": {"description": "Scope type used by default for this databoard", "examples": ["site"], "type": "string"}, "defaultTimeRange": {"$ref": "#/components/schemas/ui_settings_default_time_range", "description": "Time range used by default for this databoard"}, "description": {"description": "Text describing the databoard", "examples": ["Description of the databoard"], "type": "string"}, "for_site": {"description": "Whether this databoard is scoped to a site", "examples": [true], "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the databoard"}, "isCustomDataboard": {"description": "Whether this databoard is custom-created", "type": "boolean"}, "isScopeLinked": {"description": "Whether tile scopes are linked to the databoard default scope", "type": "boolean"}, "isTimeRangeLinked": {"description": "Whether tile time ranges are linked to the databoard default time range", "type": "boolean"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when the databoard was last modified, in epoch seconds"}, "name": {"description": "Display name of the databoard", "examples": ["New Databoard"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the databoard"}, "purpose": {"description": "UI surface or purpose for this databoard", "examples": ["databoard"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this databoard"}, "tiles": {"$ref": "#/components/schemas/ui_settings_tiles", "description": "Configured tiles for this databoard"}}, "required": ["description", "purpose"], "type": "object"}, "ui_settings_default_time_range": {"additionalProperties": false, "description": "Default time range applied to a site UI databoard", "properties": {"end": {"description": "Upper bound of the default databoard time range, in epoch seconds", "examples": [1508828400], "type": "integer"}, "endDate": {"description": "Display date for the end of the default databoard time range", "examples": ["10/23/2017"], "type": "string"}, "interval": {"description": "Bucket interval used for the default databoard time range", "examples": ["1d"], "type": "string"}, "name": {"description": "Display name for the default databoard time range", "examples": ["This Week"], "type": "string"}, "shortName": {"description": "Compact display label for the default databoard time range", "examples": ["thisWeek"], "type": "string"}, "start": {"description": "Lower bound of the default databoard time range, in epoch seconds", "examples": [1508655600], "type": "integer"}, "usePreset": {"description": "Whether the default databoard time range uses a named preset", "examples": [true], "type": "boolean"}}, "type": "object"}, "ui_settings_list": {"description": "Site UI settings records returned by a list response", "items": {"$ref": "#/components/schemas/ui_settings"}, "type": "array"}, "ui_settings_tile": {"additionalProperties": false, "description": "Tile shown on a site UI databoard", "properties": {"chartBand": {"description": "Band or category filter applied to the tile chart", "examples": ["2.4 ghz"], "type": "string"}, "chartColor": {"description": "Hex color used to render the tile chart", "examples": ["#00B4AD"], "type": "string"}, "chartDirection": {"description": "Traffic direction displayed by the tile chart", "examples": ["tx + rx"], "type": "string"}, "chartRankBy": {"description": "Ranking field used by the tile chart", "type": "string"}, "chartType": {"description": "Visualization chart type for this tile", "examples": ["timeSeries"], "type": "string"}, "colspan": {"description": "Number of grid columns spanned by this tile", "examples": [5], "type": "integer"}, "column": {"description": "Grid column where this tile starts", "examples": [1], "type": "integer"}, "hideEmptyRows": {"description": "Whether empty rows are hidden in this tile", "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this databoard tile"}, "metric": {"$ref": "#/components/schemas/ui_settings_tile_metric", "description": "Selected measurement configuration displayed by this tile"}, "name": {"description": "Display name of this databoard tile", "examples": ["New Analysis"], "type": "string"}, "row": {"description": "Grid row where this tile starts", "examples": [1], "type": "integer"}, "rowspan": {"description": "Number of grid rows spanned by this tile", "examples": [2], "type": "integer"}, "scopeId": {"description": "Identifier of the scope used by this tile", "examples": ["e0c767834b4c"], "type": "string"}, "scopeType": {"description": "Type of scope used by this tile", "examples": ["client"], "type": "string"}, "sortedColumnIds": {"$ref": "#/components/schemas/ui_settings_tile_sorted_columns_ids", "description": "Column identifiers that define the tile sort order"}, "timeRange": {"$ref": "#/components/schemas/ui_settings_tile_time_range", "description": "Time range override for this tile"}, "trendType": {"description": "Rendering style for trend data in this tile", "examples": ["line"], "type": "string"}, "vizType": {"description": "Display visualization type used by this tile", "examples": ["averageTimeSeriesChart"], "type": "string"}}, "type": "object"}, "ui_settings_tile_metric": {"additionalProperties": false, "description": "Metric selected for a site UI databoard tile", "properties": {"apiName": {"description": "Metric API name requested by this tile", "examples": ["client_dhcp_latency"], "type": "string"}}, "type": "object"}, "ui_settings_tile_sorted_columns_id": {"description": "Identifier of a table column used for tile sorting", "type": "string"}, "ui_settings_tile_sorted_columns_ids": {"description": "Ordered tile table column identifiers used for sorting", "items": {"$ref": "#/components/schemas/ui_settings_tile_sorted_columns_id"}, "type": "array"}, "ui_settings_tile_time_range": {"additionalProperties": false, "description": "Time range override for a site UI databoard tile", "properties": {"end": {"description": "Upper bound of the tile time range, in epoch seconds", "examples": [1508823743], "type": "number"}, "endDate": {"description": "Display date for the end of the tile time range", "examples": ["10/23/2017"], "type": "string"}, "interval": {"description": "Bucket interval used for the tile time range", "examples": ["1d"], "type": "string"}, "name": {"description": "Display name for the tile time range", "examples": ["Past 7 Days"], "type": "string"}, "shortName": {"description": "Compact display label for the tile time range", "examples": ["7d"], "type": "string"}, "start": {"description": "Lower bound of the tile time range, in epoch seconds", "examples": [1508223600], "type": "integer"}, "usePreset": {"description": "Whether the tile time range uses a named preset", "examples": [true], "type": "boolean"}}, "type": "object"}, "ui_settings_tiles": {"description": "List of tiles in a site UI databoard", "items": {"$ref": "#/components/schemas/ui_settings_tile"}, "type": "array", "uniqueItems": true}, "upgrade_bios": {"description": "BIOS upgrade request for a single device", "properties": {"reboot": {"default": false, "description": "Whether to restart the device immediately after the upgrade completes", "type": "boolean"}, "version": {"description": "BIOS version to install on the device", "examples": ["CDEN_P_EX1_00.20.01.00"], "type": "string"}}, "type": "object"}, "upgrade_bios_multi": {"description": "BIOS upgrade request for multiple devices", "properties": {"device_ids": {"$ref": "#/components/schemas/upgrade_bios_multi_device_ids", "description": "Specific device IDs to include in the BIOS upgrade"}, "models": {"$ref": "#/components/schemas/upgrade_bios_multi_models", "description": "Device models to include in the BIOS upgrade"}, "reboot": {"default": false, "description": "Whether to restart the selected devices immediately after the upgrade completes", "type": "boolean"}, "version": {"description": "BIOS version to install on the selected devices", "examples": ["CDEN_P_EX1_00.15.01.00"], "type": "string"}}, "type": "object"}, "upgrade_bios_multi_device_ids": {"description": "Device IDs selected for a multi-device BIOS upgrade", "items": {"examples": ["00000000-0000-0000-1000-5c5b35584a6f"], "format": "uuid", "type": "string"}, "type": "array"}, "upgrade_bios_multi_models": {"description": "Device models selected for a multi-device BIOS upgrade", "items": {"examples": ["EX4400-48T"], "type": "string"}, "type": "array"}, "upgrade_device_canary_phases": {"default": [1, 10, 50, 100], "description": "Only if `strategy`==`canary`. Phases for canary deployment. Each phase represents percentage of devices that need to be upgraded in that phase. default is [1, 10, 50, 100]", "items": {"type": "integer"}, "type": "array"}, "upgrade_device_models": {"description": "Models which will be selected for upgrade", "items": {"type": "string"}, "type": "array"}, "upgrade_device_rrm_mesh_upgrade": {"default": "sequential", "description": "For APs only and if `strategy`==`rrm`. Whether to upgrade mesh AP\u2019s parallelly or sequentially at the end of the upgrade. enum: `parallel`, `sequential`", "enum": ["parallel", "sequential"], "type": "string"}, "upgrade_device_rrm_node_order": {"default": "fringe_to_center", "description": "For APs only and if `strategy`==`rrm`. Used in rrm to determine whether to start upgrade from fringe or center AP\u2019s. enum: `center_to_fringe`, `fringe_to_center`", "enum": ["center_to_fringe", "fringe_to_center"], "type": "string"}, "upgrade_device_rule": {"additionalProperties": {"type": "string"}, "description": "Device selection rule keyed by match criterion, with string values to match", "type": "object"}, "upgrade_device_rules": {"description": "Rules used to identify devices which will be selected for upgrade. Device will be selected as long as it satisfies any one rule \nProperty key defines the type of matching, value is the string to match. e.g:\n * `match_name`: Device name must match the property value\n * `match_name[0:3]`: Device name must match the first 3 letters of the property value\n * `match_name[2:6]`: Device name must match the property value from the 2nd to the 6th letter\n * `match_model`: Device model must match the property value\n * `match_model[1:3]`: Device model must match the property value from the 1st to the 3rd letter\n * `match_role`: Device role must match the property value\n * `match_role[0:3]`: Device role must match the property value from the 1st to the 3rd letter\n * `match_evpn_role`: Device EVPN topology role must match the property value\n * `match_evpn_role[0:3]`: Device EVPN topology role must match the property value from the 1st to the 3rd letter", "examples": [[{"match_model": "AP43", "match_name[2:8]": "access"}, {"match_model": "AP45"}]], "items": {"$ref": "#/components/schemas/upgrade_device_rule"}, "type": "array"}, "upgrade_device_status": {"description": "status upgrade is in. enum: `cancelled`, `completed`, `created`, `downloaded`, `downloading`, `failed`, `upgrading`, `queued`", "enum": ["cancelled", "completed", "created", "downloaded", "downloading", "failed", "queued", "upgrading"], "type": "string"}, "upgrade_device_strategy": {"default": "big_bang", "description": "enum: `big_bang` (upgrade all at once), `canary`, `rrm` (APs only), `serial` (one at a time)", "enum": ["big_bang", "canary", "rrm", "serial"], "type": "string"}, "upgrade_devices_max_failure_percentage": {"default": 5, "description": "If `strategy`!=`big_bang`. percentage of failures allowed across the entire upgrade", "maximum": 100, "minimum": 0, "type": "integer"}, "upgrade_devices_max_failures": {"description": "If `strategy`==`canary`. Number of failures allowed within each phase. Only applicable for `canary`. Array length should be same as `canary_phases`. Will be used if provided, else `max_failure_percentage` will be used", "items": {"type": "integer"}, "type": "array"}, "upgrade_devices_plan": {"description": "List of Devices MAC addresses part of the phase", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_plans": {"additionalProperties": {"$ref": "#/components/schemas/upgrade_devices_plan"}, "description": "If `strategy`!=`big_bang`, a dictionary of phase number to devices part of that phase", "type": "object"}, "upgrade_devices_targets": {"additionalProperties": false, "description": "Read-only device target lists grouped by upgrade status", "properties": {"download_requested": {"$ref": "#/components/schemas/upgrade_devices_targets_download_requested", "description": "Device MAC addresses for devices requested to download firmware"}, "downloaded": {"$ref": "#/components/schemas/upgrade_devices_targets_downloaded", "description": "Device MAC addresses for devices that have downloaded firmware"}, "downloading": {"$ref": "#/components/schemas/upgrade_devices_targets_downloading", "description": "Device MAC addresses for devices currently downloading firmware"}, "failed": {"$ref": "#/components/schemas/upgrade_devices_targets_failed", "description": "Device MAC addresses for devices that failed to upgrade"}, "reboot_in_progress": {"$ref": "#/components/schemas/upgrade_devices_targets_reboot_in_progress", "description": "Device MAC addresses for devices currently rebooting"}, "rebooted": {"$ref": "#/components/schemas/upgrade_devices_targets_rebooted", "description": "Device MAC addresses for devices that rebooted successfully"}, "scheduled": {"$ref": "#/components/schemas/upgrade_devices_targets_scheduled", "description": "Device MAC addresses for devices scheduled for upgrade by the cloud"}, "skipped": {"$ref": "#/components/schemas/upgrade_devices_targets_skipped", "description": "Device MAC addresses for devices skipped because the requested version matched the running version"}, "total": {"description": "Count of devices part of this upgrade", "type": "integer"}, "upgraded": {"$ref": "#/components/schemas/upgrade_devices_targets_upgraded", "description": "Device MAC addresses for devices that upgraded successfully"}}, "readOnly": true, "type": "object"}, "upgrade_devices_targets_download_requested": {"description": "List of device MAC addresses that the cloud requested to download firmware", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_downloaded": {"description": "List of device MAC addresses that have downloaded the firmware", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_downloading": {"description": "List of device MAC addresses that are currently downloading the firmware", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_failed": {"description": "List of device MAC addresses that failed to upgrade", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_reboot_in_progress": {"description": "List of device MAC addresses for devices that are rebooting", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_rebooted": {"description": "List of device MAC addresses that rebooted successfully", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_scheduled": {"description": "List of device MAC addresses that the cloud scheduled an upgrade for", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_skipped": {"description": "List of device MAC addresses that skipped upgrade because requested version was same as running version. Use force to always upgrade", "items": {"type": "string"}, "type": "array"}, "upgrade_devices_targets_upgraded": {"description": "List of device MAC addresses that upgraded successfully", "items": {"type": "string"}, "type": "array"}, "upgrade_fpga": {"description": "FPGA upgrade request for a single device", "properties": {"reboot": {"default": false, "description": "Whether to restart the device immediately after the upgrade completes", "type": "boolean"}, "version": {"description": "FPGA version to install on the device", "examples": ["REV37"], "type": "string"}}, "type": "object"}, "upgrade_fpga_multi": {"description": "FPGA upgrade request for multiple devices", "properties": {"device_ids": {"$ref": "#/components/schemas/upgrade_fpga_multi_device_ids", "description": "Specific device IDs to include in the FPGA upgrade"}, "models": {"$ref": "#/components/schemas/upgrade_fpga_multi_models", "description": "Device models to include in the FPGA upgrade"}, "reboot": {"default": false, "description": "Whether to restart the selected devices immediately after the upgrade completes", "type": "boolean"}, "version": {"description": "FPGA version to install on the selected devices", "examples": ["REV37"], "type": "string"}}, "type": "object"}, "upgrade_fpga_multi_device_ids": {"description": "Device IDs selected for a multi-device FPGA upgrade", "items": {"examples": ["00000000-0000-0000-1000-5c5b35584a6f"], "format": "uuid", "type": "string"}, "type": "array"}, "upgrade_fpga_multi_models": {"description": "Device models selected for a multi-device FPGA upgrade", "items": {"examples": ["EX4400-48T"], "type": "string"}, "type": "array"}, "upgrade_info_status": {"description": "enum: `error`, `inprogress`, `scheduled`, `starting`, `success`", "enum": ["error", "inprogress", "scheduled", "starting", "success"], "type": "string"}, "upgrade_org_devices": {"description": "Organization-wide device upgrade request", "properties": {"all_sites": {"default": false, "description": "If `true`, will upgrade all sites in this org", "type": "boolean"}, "canary_phases": {"$ref": "#/components/schemas/upgrade_device_canary_phases", "description": "Only if `strategy`==`canary`. Canary phase percentages for the organization upgrade"}, "device_type": {"$ref": "#/components/schemas/device_type", "description": "Device family selected for the organization upgrade"}, "download_strategy": {"$ref": "#/components/schemas/upgrade_org_devices_download_strategy", "description": "Firmware download orchestration strategy for the organization upgrade"}, "max_failure_percentage": {"$ref": "#/components/schemas/upgrade_devices_max_failure_percentage", "description": "If `strategy`!=`big_bang`. Allowed failure percentage across the organization upgrade"}, "max_failures": {"$ref": "#/components/schemas/upgrade_devices_max_failures", "description": "If `strategy`==`canary`. Per-phase failure limits for the organization upgrade"}, "models": {"$ref": "#/components/schemas/upgrade_org_devices_models", "description": "Device models selected for the organization upgrade"}, "p2p_cluster_size": {"default": 10, "description": "For APs only and if `enable_p2p`==`true`.", "examples": [0], "minimum": 0, "type": "integer"}, "p2p_parallelism": {"description": "For APs only and if `enable_p2p`==`true`. Number of parallel p2p download batches to create", "type": "integer"}, "reboot_at": {"deprecated": true, "description": "For Switches and Gateways only and if `reboot`==`true`. Reboot start time in epoch seconds, default is `start_time`", "examples": [1624399840], "type": "integer"}, "reboot_datetime": {"description": "Process start date and time, ISO8601 format. Exclude timezone component if site local timezone needs to be used", "examples": ["2024-06-13 15:00:00-07:00"], "type": "string"}, "reboot_strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Device reboot orchestration strategy for selected devices"}, "rrm_first_batch_percentage": {"description": "For APs only and if `strategy`==`rrm`. Percentage of APs that need to be present in the first RRM batch", "examples": [2], "type": "integer"}, "rrm_max_batch_percentage": {"description": "For APs only and if `strategy`==`rrm`. Max percentage of APs that need to be present in each RRM batch", "examples": [10], "type": "integer"}, "rrm_mesh_upgrade": {"$ref": "#/components/schemas/upgrade_device_rrm_mesh_upgrade", "description": "For APs only and if `strategy`==`rrm`. Mesh AP upgrade order for the organization upgrade"}, "rrm_node_order": {"$ref": "#/components/schemas/upgrade_device_rrm_node_order", "description": "For APs only and if `strategy`==`rrm`. AP ordering direction for RRM upgrade batches"}, "rrm_slow_ramp": {"description": "For APs only and if `strategy`==`rrm`. True will make rrm batch sizes slowly ramp up", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/upgrade_device_rules", "description": "Selection rules used to choose devices for this organization upgrade"}, "site_ids": {"$ref": "#/components/schemas/upgrade_org_devices_site_ids", "description": "Identifiers of sites used to limit the organization upgrade"}, "snapshot": {"default": false, "description": "For Junos devices only. Perform recovery snapshot after device is rebooted", "type": "boolean"}, "start_datetime": {"description": "Process start date and time, ISO8601 format", "examples": ["2024-06-13 15:00:00-07:00"], "type": "string"}, "start_time": {"deprecated": true, "description": "Upgrade start time in epoch seconds, default is now", "examples": [1624399840], "type": "integer"}, "strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Upgrade orchestration strategy for selected devices"}, "versions": {"$ref": "#/components/schemas/upgrade_org_devices_versions", "description": "Target firmware versions for this organization upgrade"}}, "type": "object"}, "upgrade_org_devices_download_strategy": {"default": "big_bang", "description": "enum:\n * `big_bang`: download all at once, no orchestration\n * `serial`: one at a time'\n * `canary`: upgrade in phases", "enum": ["canary", "big_bang", "serial"], "type": "string"}, "upgrade_org_devices_item": {"additionalProperties": false, "description": "Organization device upgrade job returned by upgrade APIs", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the organization upgrade job"}, "site_upgrades": {"$ref": "#/components/schemas/upgrade_org_devices_item_site_upgrades", "description": "Per-site upgrade jobs created by this organization upgrade"}}, "type": "object"}, "upgrade_org_devices_item_site_upgrade": {"additionalProperties": false, "description": "Site upgrade mapping returned for an organization upgrade", "properties": {"site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site that received this upgrade job"}, "upgrade_id": {"description": "Identifier of the site-level upgrade job", "examples": ["ebbdbd0b-1bcf-4e55-8a6a-3416049a52b1"], "format": "uuid", "type": "string"}}, "type": "object"}, "upgrade_org_devices_item_site_upgrades": {"description": "Site-level upgrade jobs created for an organization upgrade", "items": {"$ref": "#/components/schemas/upgrade_org_devices_item_site_upgrade"}, "type": "array"}, "upgrade_org_devices_list": {"description": "Organization device upgrade jobs returned by a list response", "items": {"$ref": "#/components/schemas/upgrade_org_devices_item"}, "type": "array"}, "upgrade_org_devices_models": {"description": "Only devices of these model types will be selected for upgrade", "items": {"$ref": "#/components/schemas/strings"}, "type": "array"}, "upgrade_org_devices_site_ids": {"description": "Only devices belonging to these sites will be selected for upgrade. Will be ignored if `all_sites`==`true`", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "upgrade_org_devices_upgrade": {"additionalProperties": false, "description": "Upgrade entry for a single site within an organization upgrade job", "properties": {"site_id": {"$ref": "#/components/schemas/site_id", "description": "Identifier of the site for this upgrade entry"}, "upgrade": {"$ref": "#/components/schemas/upgrade_org_devices_upgrade_info", "description": "Site-level job details for this upgrade entry"}}, "type": "object"}, "upgrade_org_devices_upgrade_info": {"additionalProperties": false, "description": "Site-level upgrade job details within an organization upgrade", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique value identifying the site-level upgrade job"}, "start_time": {"description": "Epoch timestamp, in seconds, when the site-level upgrade starts", "examples": [1717658765], "type": "integer"}, "status": {"$ref": "#/components/schemas/upgrade_device_status", "description": "Current status of the site-level upgrade job"}, "targets": {"$ref": "#/components/schemas/upgrade_devices_targets", "description": "Device targets grouped by upgrade state"}}, "type": "object"}, "upgrade_org_devices_upgrade_infos": {"description": "Per-site upgrade entries created for an organization device upgrade", "items": {"$ref": "#/components/schemas/upgrade_org_devices_upgrade"}, "type": "array"}, "upgrade_org_devices_version": {"additionalProperties": false, "description": "Target firmware version entry for an organization upgrade request", "properties": {"firmware_type": {"$ref": "#/components/schemas/upgrade_org_devices_version_firmware_type", "description": "Firmware family this version entry applies to"}, "force": {"default": false, "description": "If `firmware_type`==`ap`, set to `true` if upgrade is needed when target version <= running version", "type": "boolean"}, "model_version": {"$ref": "#/components/schemas/upgrade_org_devices_version_model_version", "description": "If `firmware_type`==`junos`, model-specific firmware version overrides"}, "version": {"description": "Firmware version to deploy for this entry", "type": "string"}}, "type": "object"}, "upgrade_org_devices_version_firmware_type": {"description": "Firmware family this version entry applies to. enum: `ap`, `junos`", "enum": ["ap", "junos"], "type": "string"}, "upgrade_org_devices_version_model_version": {"additionalProperties": {"type": "string"}, "description": "If `firmware_type`==`junos`, used to select different versions for different models (Overrides `version` for the specified models). Property key is the hadware model (e.g. `EX4400-24MP`), Property value is the firmware version (e.g. `23.4R1.9`)", "type": "object"}, "upgrade_org_devices_versions": {"description": "Target firmware version entries for an organization upgrade request", "items": {"$ref": "#/components/schemas/upgrade_org_devices_version"}, "type": "array"}, "upgrade_site_devices": {"description": "Site device upgrade request", "properties": {"canary_phases": {"$ref": "#/components/schemas/upgrade_device_canary_phases", "description": "Only if `strategy`==`canary`. Canary phase percentages for the site upgrade"}, "device_ids": {"$ref": "#/components/schemas/upgrade_site_devices_device_ids", "description": "Specific device IDs selected for the site upgrade"}, "enable_p2p": {"description": "For APs only. Whether to allow local AP-to-AP FW upgrade", "type": "boolean"}, "force": {"default": false, "description": "`force`==`true` will force upgrade when requested version is same as running version", "type": "boolean"}, "max_failure_percentage": {"$ref": "#/components/schemas/upgrade_devices_max_failure_percentage", "description": "If `strategy`!=`big_bang`. Allowed failure percentage across the site upgrade"}, "max_failures": {"$ref": "#/components/schemas/upgrade_devices_max_failures", "description": "If `strategy`==`canary`. Per-phase failure limits for the site upgrade"}, "models": {"$ref": "#/components/schemas/upgrade_device_models", "description": "Device models selected for the site upgrade"}, "p2p_cluster_size": {"default": 10, "description": "For APs only and if `enable_p2p`==`true`.", "examples": [0], "minimum": 0, "type": "integer"}, "p2p_parallelism": {"description": "For APs only and if `enable_p2p`==`true`. Number of parallel p2p download batches to create", "type": "integer"}, "reboot": {"default": false, "description": "For Switches and Gateways only (APs are automatically rebooted). Reboot device immediately after upgrade is completed", "type": "boolean"}, "reboot_at": {"description": "For Switches and Gateways only and if `reboot`==`true`. Reboot start time in epoch seconds, default is `start_time`", "examples": [1624399840], "type": "integer"}, "rrm_first_batch_percentage": {"description": "For APs only and if `strategy`==`rrm`. Percentage of APs that need to be present in the first RRM batch", "examples": [2], "type": "integer"}, "rrm_max_batch_percentage": {"description": "For APs only and if `strategy`==`rrm`. Max percentage of APs that need to be present in each RRM batch", "examples": [10], "type": "integer"}, "rrm_mesh_upgrade": {"$ref": "#/components/schemas/upgrade_device_rrm_mesh_upgrade", "description": "For APs only and if `strategy`==`rrm`. Mesh AP upgrade order for the site upgrade"}, "rrm_node_order": {"$ref": "#/components/schemas/upgrade_device_rrm_node_order", "description": "For APs only and if `strategy`==`rrm`. AP ordering direction for RRM upgrade batches"}, "rrm_slow_ramp": {"description": "For APs only and if `strategy`==`rrm`. True will make rrm batch sizes slowly ramp up", "type": "boolean"}, "rules": {"$ref": "#/components/schemas/upgrade_device_rules", "description": "Selection rules used to choose devices for this site upgrade"}, "snapshot": {"default": false, "description": "For Junos devices only. Perform recovery snapshot after device is rebooted", "type": "boolean"}, "start_time": {"description": "Upgrade start time in epoch seconds, default is now", "examples": [1624399840], "type": "integer"}, "strategy": {"$ref": "#/components/schemas/upgrade_device_strategy", "description": "Upgrade orchestration strategy for selected devices"}, "version": {"description": "Specific version / stable, default is to use the latest available version", "examples": ["3.1.5"], "type": "string"}}, "type": "object"}, "upgrade_site_devices_counts": {"additionalProperties": false, "description": "Device counts grouped by status for a site upgrade job", "properties": {"download_requested": {"description": "Count of devices which cloud has requested to download firmware", "type": "integer"}, "downloaded": {"description": "Count of ap's 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"}, "upgrade_site_devices_device_ids": {"description": "Device IDs selected for a site device upgrade", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "usage_org_licenses": {"description": "Organization license usage records returned by a usage response", "items": {"$ref": "#/components/schemas/license_usage_org"}, "type": "array", "uniqueItems": true}, "use_auto_ap_values": {"description": "Request to accept or reject cached AP placement or orientation values on a map", "properties": {"accept": {"default": false, "description": "Whether to accept cached values; false rejects them for the selected APs", "type": "boolean"}, "for": {"$ref": "#/components/schemas/use_auto_ap_values_for", "description": "Localization value type to accept or reject"}, "macs": {"$ref": "#/components/schemas/use_auto_ap_values_macs", "description": "AP MAC addresses whose cached values are accepted or rejected"}}, "type": "object"}, "use_auto_ap_values_for": {"default": "placement", "description": "The selector to choose auto placement or auto orientation. enum: `orientation`, `placement`", "enum": ["orientation", "placement"], "type": "string"}, "use_auto_ap_values_macs": {"description": "AP MAC addresses to accept or reject. If omitted, the API applies the decision to the full map.", "items": {"type": "string"}, "type": "array"}, "user_apitoken": {"description": "User API token metadata", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this user API token was created, in epoch seconds"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this user API token"}, "key": {"description": "Secret API token value returned for this token", "examples": ["1qkb...QQCL"], "readOnly": true, "type": "string"}, "last_used": {"description": "Time when this user API token was last used, in epoch seconds; null if never used", "examples": [1690115110], "readOnly": true, "type": ["integer", "null"]}, "name": {"description": "Display label for this user API token", "examples": ["org_token_xyz"], "type": "string"}}, "type": "object"}, "user_apitokens": {"description": "List of user API tokens", "items": {"$ref": "#/components/schemas/user_apitoken"}, "type": "array"}, "user_mac": {"description": "Organization user MAC entry", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this user MAC entry"}, "labels": {"$ref": "#/components/schemas/user_mac_labels", "description": "Applied labels for this user MAC entry"}, "mac": {"description": "Client MAC address for this entry. Only non-local-admin MAC addresses are accepted", "examples": ["5684dae9ac8b"], "type": "string"}, "name": {"description": "Display name for this user MAC entry", "examples": ["Printer2"], "type": "string"}, "notes": {"description": "Free-form notes about this user MAC entry", "examples": ["MAC address refers to Canon printers"], "type": "string"}, "radius_group": {"description": "RADIUS group associated with this user MAC entry", "examples": ["VIP"], "type": "string"}, "vlan": {"description": "Network VLAN value associated with this user MAC entry", "examples": ["30"], "type": "string"}}, "required": ["mac"], "type": "object"}, "user_mac_import": {"additionalProperties": false, "description": "Result of importing user MAC entries", "properties": {"added": {"$ref": "#/components/schemas/user_mac_import_added", "description": "MAC addresses added by the import"}, "detail": {"description": "Status message returned for asynchronous imports", "type": "string"}, "errors": {"$ref": "#/components/schemas/user_mac_import_errors", "description": "Import error messages for user MAC entries"}, "updated": {"$ref": "#/components/schemas/user_mac_import_updated", "description": "MAC addresses updated by the import"}}, "type": "object"}, "user_mac_import_added": {"description": "MAC addresses added during a user MAC import", "examples": [["921b638445cd"]], "items": {"type": "string"}, "type": "array"}, "user_mac_import_errors": {"description": "Error messages returned during a user MAC import", "examples": [["921b638445ce - mac invalid", "921b638445cf - mac already provided"]], "items": {"type": "string"}, "type": "array"}, "user_mac_import_updated": {"description": "MAC addresses updated during a user MAC import", "examples": [["721b638445ef", "721b638445ee"]], "items": {"type": "string"}, "type": "array"}, "user_mac_labels": {"description": "Labels applied to a user MAC entry", "examples": [["byod", "flr1"]], "items": {"type": "string"}, "type": "array"}, "user_macs": {"description": "List of user MAC entries", "items": {"$ref": "#/components/schemas/user_mac"}, "type": "array"}, "user_macs_count": {"additionalProperties": false, "description": "User MACs count response", "properties": {"end": {"description": "Query end timestamp for user MAC counts", "type": "integer"}, "limit": {"description": "Maximum number of distinct count results to return", "type": "integer"}, "results": {"description": "User MAC entries returned by the count query", "items": {"$ref": "#/components/schemas/user_mac"}, "type": "array"}, "start": {"description": "Query start timestamp for user MAC counts", "type": "integer"}, "total": {"description": "Overall number of user MAC count results", "type": "integer"}}, "type": "object"}, "user_macs_update": {"additionalProperties": false, "description": "Result of a bulk user MAC update", "properties": {"detail": {"description": "Status message returned for asynchronous batch updates", "type": "string"}, "errors": {"$ref": "#/components/schemas/strings", "description": "Update errors reported for user MAC entries"}, "updated": {"$ref": "#/components/schemas/uuids", "description": "User MAC entry IDs updated by the request"}}, "type": "object"}, "usermacs_id": {"description": "Request body for deleting multiple user MAC entries", "properties": {"usermac_ids": {"$ref": "#/components/schemas/uuids", "description": "User MAC entry IDs to delete"}}, "type": "object"}, "username_password": {"description": "Credential payload used to validate an identity provider login", "properties": {"password": {"description": "Credential password used for the validation attempt", "format": "password", "type": "string"}, "username": {"description": "Credential username used for the validation attempt", "type": "string"}}, "type": "object"}, "utils_bounce_port": {"description": "Request to bounce one or more device ports", "properties": {"ports": {"$ref": "#/components/schemas/utils_bounce_port_ports", "description": "Device ports to bounce"}}, "type": "object"}, "utils_bounce_port_ports": {"description": "Device port identifiers to bounce", "items": {"type": "string"}, "type": "array"}, "utils_cable_tests": {"description": "Request body for running a switch cable test on a port", "properties": {"port": {"description": "The port to run the cable test", "type": "string"}}, "required": ["port"], "type": "object"}, "utils_clear_arp": {"description": "Request to clear ARP entries on a device", "properties": {"ip": {"description": "The IP address for which to clear an ARP entry. port_id must be specified.", "examples": ["10.1.1.1"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to clear ARP entries"}, "port_id": {"description": "The device interface on which to clear the ARP cache.", "examples": ["wan"], "type": "string"}, "vlan": {"description": "The VLAN on which to clear the ARP cache. port_id must be specified.", "examples": [1000], "type": "integer"}, "vrf": {"description": "The vrf for which to clear an ARP entry. applicable for switch.", "examples": ["guest"], "type": "string"}}, "type": "object"}, "utils_clear_bgp": {"description": "Request to clear BGP sessions on a device", "properties": {"neighbor": {"default": "all", "description": "can be ip, ipv6, all", "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to clear BGP sessions"}, "type": {"$ref": "#/components/schemas/utils_clear_bgp_type", "description": "BGP clear operation type to run"}, "vrf": {"description": "Routing instance or VRF containing the BGP session", "type": "string"}}, "required": ["neighbor", "type"], "type": "object"}, "utils_clear_bgp_type": {"default": "hard", "description": "enum: `hard`, `in`, `out`, `soft`", "enum": ["hard", "in", "out", "soft"], "type": "string"}, "utils_clear_bpdu": {"description": "Request to clear detected BPDU errors on switch ports", "properties": {"ports": {"$ref": "#/components/schemas/utils_clear_bpdu_ports", "description": "Switch ports on which to clear detected BPDU errors"}}, "type": "object"}, "utils_clear_bpdu_ports": {"description": "List of ports on which to clear the detected BPDU error, or `all` for all ports", "items": {"type": "string"}, "type": "array"}, "utils_clear_macs": {"description": "Request to clear learned MAC addresses from device ports", "properties": {"ports": {"$ref": "#/components/schemas/utils_clear_macs_ports", "description": "Switch ports on which to clear learned MAC addresses"}}, "type": "object"}, "utils_clear_macs_ports": {"description": "Device ports on which to clear learned MAC addresses. Must include logical unit number", "items": {"type": "string"}, "type": "array"}, "utils_clear_session": {"description": "To use five tuples to lookup the session to be cleared, all must be provided", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to clear sessions"}, "service_name": {"description": "Service name, only supported in SSR", "examples": ["internet-wan_and_lte"], "type": "string"}, "session_ids": {"$ref": "#/components/schemas/utils_clear_session_session_ids", "description": "Session identifiers to clear"}}, "type": "object"}, "utils_clear_session_session_ids": {"description": "Session identifiers to clear", "examples": [["88776655-0123-4567-890a-112233445566"]], "items": {"format": "uuid", "type": "string"}, "type": "array"}, "utils_devices_restart": {"description": "Request to restart a device or device node", "properties": {"member": {"description": "Virtual Chassis member number to restart", "maximum": 9, "minimum": 0, "type": "integer"}, "node": {"$ref": "#/components/schemas/utils_devices_restart_node", "description": "SRX or SSR node to restart"}}, "type": "object"}, "utils_devices_restart_multi": {"description": "Request to restart multiple devices", "properties": {"device_ids": {"$ref": "#/components/schemas/utils_devices_restart_multi_device_ids", "description": "Identifiers of devices to restart"}, "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_devices_restart_multi_device_ids": {"description": "List of device identifiers to restart", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "utils_devices_restart_node": {"description": "only for SRX/SSR: if node is not present, both nodes are restarted. For other devices: node should not be present. enum: `node0`, `node1`", "enum": ["node0", "node1"], "type": "string"}, "utils_mac_table": {"description": "MAC table lookup filters", "properties": {"mac_address": {"description": "Client MAC address filter for the MAC table lookup", "examples": ["f8c1165c6400"], "type": "string"}, "port_id": {"description": "Interface identifier filter for the MAC table lookup", "examples": ["ge-0/0/0.0"], "type": "string"}, "vlan_id": {"description": "VLAN identifier filter for the MAC table lookup", "examples": ["ge-0/0/0.0"], "type": "string"}}, "type": "object"}, "utils_monitor_traffic": {"description": "Request body for monitoring traffic on one port or all ports", "properties": {"port": {"description": "Interface name to monitor; omit this field to monitor all ports", "examples": ["ge-0/0/1"], "type": "string"}}, "type": "object"}, "utils_ping": {"description": "Request body for running a ping utility command", "properties": {"count": {"default": 10, "description": "Number of echo requests to send", "type": "integer"}, "egress_interface": {"description": "Interface through which ping packets should egress", "type": "string"}, "host": {"description": "Destination IP address, IPv6 address, or hostname to ping", "examples": ["1.1.1.1"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node from which to send ping packets"}, "size": {"default": 56, "description": "ICMP payload size, in bytes", "maximum": 65535, "minimum": 56, "type": "integer"}, "use_ipv6": {"default": false, "description": "applicable when host is hostname", "type": "boolean"}, "vrf": {"description": "Routing instance or VRF through which ping packets are sent", "type": "string"}}, "required": ["host"], "type": "object"}, "utils_release_dhcp": {"description": "Request to release the DHCP lease on a device interface", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to release the DHCP lease"}, "port_id": {"description": "Network interface whose current DHCP lease should be released", "examples": ["ge-0/0/1.10"], "minLength": 1, "type": "string"}}, "required": ["port_id"], "type": "object"}, "utils_release_dhcp_leases": {"description": "Note: \n * valid combinations for Junos: \n * `port_id` \n * `macs` + `network`\n * valid combinations for SSR: \n * `port_id` \n * `macs` + `network`\n * `port_id` + `network`\n * `network`\n * if network or port_id is specified and macs is empty, it means all clients under network or port_id", "properties": {"macs": {"$ref": "#/components/schemas/utils_release_dhcp_leases_macs", "description": "Client MAC addresses whose DHCP leases should be released"}, "network": {"description": "DHCP network containing the leases to release", "examples": ["guest"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to release DHCP leases"}, "port_id": {"description": "Network interface containing the DHCP leases to release", "examples": ["ge-0/0/1.10"], "minLength": 1, "type": "string"}}, "required": ["port_id"], "type": "object"}, "utils_release_dhcp_leases_macs": {"description": "Client MAC addresses whose DHCP leases should be released", "examples": [["90ec77aabbcc", "90ec77aabbdd"]], "items": {"type": "string"}, "type": "array"}, "utils_reset_radio_config": {"description": "Request to reset AP radio settings to RRM-managed values", "properties": {"bands": {"$ref": "#/components/schemas/utils_reset_radio_config_bands", "description": "Radio bands to reset to RRM management"}, "force": {"default": false, "description": "Whether to reset radios that are currently disabled; default `false` honors radios intentionally disabled by the user", "type": "boolean"}}, "required": ["bands"], "type": "object"}, "utils_reset_radio_config_bands": {"description": "Radio bands to reset, such as `24`, `5`, or `6`", "items": {"type": "string"}, "type": "array"}, "utils_rrm_optimize": {"description": "Request to optimize RRM for selected AP radio bands", "properties": {"bands": {"$ref": "#/components/schemas/utils_rrm_optimize_bands", "description": "Radio bands to include in the RRM optimization"}, "macs": {"$ref": "#/components/schemas/utils_rrm_optimize_macs", "description": "AP MAC addresses to target for optimization; omitted or empty targets all APs"}, "txpower_only": {"default": false, "description": "When true, adjust only transmit power so clients are not disconnected", "type": "boolean"}}, "required": ["bands"], "type": "object"}, "utils_rrm_optimize_bands": {"description": "Radio bands to include in the RRM optimization", "items": {"type": "string"}, "type": "array"}, "utils_rrm_optimize_macs": {"description": "AP MAC addresses to target for optimization. Neighboring APs may also change; omitted or empty targets all APs", "items": {"examples": ["5c5b35000001"], "type": "string"}, "type": "array"}, "utils_send_ble_beacon": {"description": "Request to transmit an arbitrary BLE beacon frame from selected APs", "properties": {"beacon_frame": {"description": "Raw BLE beacon frame payload to transmit", "examples": ["68b329da9893e34099c7d8ad5cb9c940"], "type": "string"}, "beacon_freq": {"description": "Transmission interval for the arbitrary BLE beacon frame", "examples": [100], "type": "integer"}, "duration": {"description": "Number of seconds to continue sending the BLE beacon frame", "examples": [10], "maximum": 60, "minimum": 1, "type": "integer"}, "macs": {"$ref": "#/components/schemas/utils_send_ble_beacon_macs", "description": "AP MAC addresses of devices that should transmit the BLE beacon"}, "map_ids": {"$ref": "#/components/schemas/utils_send_ble_beacon_map_ids", "description": "Identifiers of maps whose APs should transmit the BLE beacon"}}, "type": "object"}, "utils_send_ble_beacon_macs": {"description": "AP MAC addresses of devices that should transmit the BLE beacon", "examples": [["5c5b35584a6f", "5c5b350ea3b3"]], "items": {"type": "string"}, "type": "array"}, "utils_send_ble_beacon_map_ids": {"description": "Map identifiers used to select APs that should transmit the BLE beacon", "examples": [["845a23bf-bed9-e43c-4c86-6fa474be7ae5"]], "items": {"type": "string"}, "type": "array"}, "utils_send_support_logs": {"description": "Request to upload support files from a device", "properties": {"info": {"$ref": "#/components/schemas/utils_send_support_logs_info", "description": "Support file bundle type to upload"}, "node": {"description": "Optional for SSR: if node is not present, both nodes support files are uploaded", "type": "string"}, "num_messages_files": {"default": 1, "description": "Number of most recent messages files to upload when `info`==`messages`", "maximum": 10, "minimum": 1, "type": "integer"}}, "type": "object"}, "utils_send_support_logs_info": {"default": "full", "description": "Optional, enum: \n * `code-dumps`: Upload all core dump files, if any found. Uploads for all members of VC on switches.\n * `full`: 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 5 most recent `/var/log/messages*` files, and Mist agent logs\n * `messages`: Upload 1 to 10 `/var/log/messages*` files\n * `outbound-ssh`: Upload 1 file that concatenates all `/var/log/outbound-ssh.log*` files\n * `process`: Upload 1 file with output of show `system processes extensive``\n * `var-logs`: Upload all non-empty files in the `/var/log/` directory", "enum": ["code-dumps", "full", "messages", "outbound-ssh", "process", "var-logs"], "type": "string"}, "utils_service_ping": {"description": "Service ping request for SSR devices", "properties": {"count": {"default": 10, "description": "Number of ICMP echo requests to send for the service ping", "type": "integer"}, "host": {"description": "Destination IPv4 address for the service ping", "format": "ipv4", "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node from which to send the service ping"}, "service": {"description": "Ping packet takes the same path as the service", "type": "string"}, "size": {"default": 56, "description": "ICMP payload size, in bytes", "maximum": 65535, "minimum": 56, "type": "integer"}, "tenant": {"description": "Routing tenant context in which the packet is sent", "type": "string"}}, "required": ["host", "service"], "type": "object"}, "utils_show_arp": {"description": "ARP table lookup request for device command output", "properties": {"duration": {"default": 0, "description": "Refresh duration in seconds; set only when `interval` is nonzero", "maximum": 300, "minimum": 0, "type": "integer"}, "interval": {"default": 0, "description": "Refresh interval in seconds for repeated command output", "maximum": 10, "minimum": 0, "type": "integer"}, "ip": {"description": "Address filter for the ARP table lookup", "examples": ["192.168.30.7"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node to run the command on, required for Gateways"}, "port_id": {"description": "Device port identifier filter for the ARP table lookup", "examples": ["ge-0/0/0.0"], "type": "string"}, "vrf": {"description": "Routing instance or VRF filter for the ARP table lookup", "examples": ["guest"], "type": "string"}}, "type": "object"}, "utils_show_bgp_summary": {"description": "BGP summary command request", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show the BGP summary"}}, "type": "object"}, "utils_show_dhcp_leases": {"description": "DHCP leases command request", "properties": {"network": {"description": "DHCP network for the leases, returns full table if not specified", "examples": ["guest"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show DHCP leases"}}, "required": ["network"], "type": "object"}, "utils_show_dot1x": {"description": "802.1X table lookup request for device command output", "properties": {"duration": {"default": 0, "description": "Refresh duration in seconds; set only when `interval` is nonzero", "maximum": 300, "minimum": 0, "type": "integer"}, "interval": {"default": 0, "description": "Refresh interval in seconds for repeated command output", "maximum": 10, "minimum": 0, "type": "integer"}, "port_id": {"description": "Device port identifier filter for the 802.1X table lookup", "examples": ["ge-0/0/0.0"], "type": "string"}}, "type": "object"}, "utils_show_evpn_database": {"description": "EVPN database lookup request for device command output", "properties": {"duration": {"default": 0, "description": "Refresh duration in seconds; set only when `interval` is nonzero", "maximum": 300, "minimum": 0, "type": "integer"}, "interval": {"default": 0, "description": "Refresh interval in seconds for repeated command output", "maximum": 10, "minimum": 0, "type": "integer"}, "mac": {"description": "Client MAC address filter for the EVPN database lookup", "examples": ["f8c1165c6400"], "type": "string"}, "port_id": {"description": "Interface identifier filter for the EVPN database lookup", "examples": ["ge-0/0/0.0"], "type": "string"}}, "type": "object"}, "utils_show_forwarding_table": {"description": "Forwarding table lookup request for device command output", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show the forwarding table"}, "prefix": {"description": "IPv4 or IPv6 prefix filter for forwarding table entries", "examples": ["3.1.1.0/24"], "type": "string"}, "service_ip": {"description": "Only supported with SSR", "examples": ["3.1.1.10"], "type": "string"}, "service_name": {"description": "Only supported with SSR", "examples": ["internet-wan_and_lte"], "type": "string"}, "service_port": {"description": "Only supported with SSR", "examples": [32768], "type": "integer"}, "service_protocol": {"description": "Only supported with SSR", "examples": ["udp"], "type": "string"}, "service_tenant": {"description": "Only supported with SSR", "examples": ["branch1-wifi-mgt"], "type": "string"}, "vrf": {"description": "Routing instance or VRF filter for forwarding table entries", "examples": ["guest"], "type": "string"}}, "type": "object"}, "utils_show_ospf_database": {"description": "OSPF database command request for SSR and SRX devices", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show the OSPF database"}, "self_originate": {"default": false, "description": "Whether to show only self-originated OSPF database entries", "type": "boolean"}, "vrf": {"description": "Routing instance or VRF filter for OSPF database output", "examples": ["lan"], "type": "string"}}, "type": "object"}, "utils_show_ospf_interfaces": {"description": "OSPF interfaces command request for SSR and SRX devices", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show OSPF interfaces"}, "port_id": {"description": "Network interface filter for OSPF interface output", "examples": ["ge-0/0/3"], "type": "string"}, "vrf": {"description": "Routing instance or VRF filter for OSPF interface output", "examples": ["lan"], "type": "string"}}, "type": "object"}, "utils_show_ospf_neighbors": {"description": "OSPF neighbors command request for SSR and SRX devices", "properties": {"neighbor": {"description": "OSPF neighbor IP address filter", "examples": ["10.1.1.1"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show OSPF neighbors"}, "port_id": {"description": "Network interface filter for OSPF neighbor output", "examples": ["ge-0/0/3"], "type": "string"}, "vrf": {"description": "Routing instance or VRF filter for OSPF neighbor output", "examples": ["lan"], "type": "string"}}, "type": "object"}, "utils_show_ospf_summary": {"description": "OSPF summary command request for SSR and SRX devices", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show the OSPF summary"}, "vrf": {"description": "Routing instance or VRF filter for OSPF summary output", "examples": ["lan"], "type": "string"}}, "type": "object"}, "utils_show_route": {"description": "Route table lookup request for device command output", "properties": {"duration": {"default": 0, "description": "Refresh duration in seconds; set only when `interval` is nonzero", "maximum": 300, "minimum": 0, "type": "integer"}, "interval": {"default": 0, "description": "Refresh interval in seconds for repeated command output", "maximum": 10, "minimum": 0, "type": "integer"}, "neighbor": {"description": "BGP neighbor IP address filter for received or advertised routes", "examples": ["192.168.4.1"], "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node", "description": "HA cluster node on which to show routes"}, "prefix": {"description": "IPv4 or IPv6 prefix filter for route entries", "examples": ["192.168.0.5/30"], "type": "string"}, "protocol": {"$ref": "#/components/schemas/utils_show_route_protocol", "description": "Routing protocol filter for route entries"}, "route": {"description": "if neighbor is specified, received / advertised; if not specified, both will be shown\n * for SSR, show bgp neighbors 10.250.18.202 received-routes/advertised-routes\n * for SRX and Switches, show route receive-protocol/advertise-protocol bgp 192.168.255.12", "examples": ["advertised"], "type": "string"}, "vrf": {"description": "Routing instance or VRF filter for route entries", "examples": ["default"], "type": "string"}}, "type": "object"}, "utils_show_route_protocol": {"default": "bgp", "description": "enum: `any`, `bgp`, `direct`, `evpn`, `ospf`, `static`", "enum": ["any", "bgp", "direct", "evpn", "ospf", "static"], "type": "string"}, "utils_show_service_path": {"description": "Service path lookup request for SSR devices", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show the service path"}, "service_name": {"description": "Exact service name for which to display the service path", "examples": ["any"], "type": "string"}}, "type": "object"}, "utils_show_session": {"description": "Active session lookup request for device command output", "properties": {"node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node on which to show active sessions"}, "service_name": {"description": "The exact service name for which to display the active sessions", "examples": ["any"], "type": "string"}, "session_id": {"description": "Identifier of the session to show in detail", "type": "string"}}, "type": "object"}, "utils_traceroute": {"description": "Request body for running a traceroute utility command", "properties": {"host": {"description": "Destination IP address, IPv6 address, or hostname for traceroute", "type": "string"}, "network": {"default": "internal", "description": "For SSR, source network from which to initiate traceroute", "type": "string"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node from which to run traceroute"}, "port": {"default": 33434, "description": "When `protocol`==`udp`, not supported in SSR. The udp port to use", "type": "integer"}, "protocol": {"$ref": "#/components/schemas/utils_traceroute_protocol", "description": "Transport protocol to use for traceroute"}, "timeout": {"default": 60, "description": "Not supported in SSR. Maximum time in seconds to wait for the response", "type": "integer"}, "use_ipv6": {"default": false, "description": "Whether to resolve hostname targets over IPv6", "type": "boolean"}, "vrf": {"description": "For SRX, routing instance or VRF from which to initiate traceroute; master VRF/RI is used by default", "type": "string"}}, "type": "object"}, "utils_traceroute_protocol": {"default": "udp", "description": "enum: `icmp` (Only supported by AP/MxEdge), `udp`", "enum": ["icmp", "udp"], "type": "string"}, "utils_tunterm_bounce_port": {"description": "Request to bounce Mist Edge TunTerm data ports", "properties": {"hold_time": {"description": "In milli seconds, hold time between multiple port bounces", "type": "integer"}, "ports": {"$ref": "#/components/schemas/utils_tunterm_bounce_port_ports", "description": "TunTerm data ports to bounce"}}, "required": ["ports"], "type": "object"}, "utils_tunterm_bounce_port_ports": {"description": "TunTerm data port identifiers to bounce", "items": {"type": "string"}, "type": "array"}, "utils_zeroize_fips": {"description": "Request body for confirming FIPS AP zeroize operations", "properties": {"password": {"description": "Confirmation password for the FIPS zeroize operation", "format": "password", "type": "string"}}, "required": ["password"], "type": "object"}, "utils_zigbee_join": {"additionalProperties": false, "description": "Request body for temporarily allowing Zigbee end-device joins", "properties": {"duration": {"default": 600, "description": "Number of seconds to permit new Zigbee end-device joins; range is 30-3600", "maximum": 3600, "minimum": 30, "type": "integer"}}, "type": "object"}, "uuids": {"description": "UUID string values used as identifiers", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "var_source": {"description": "Source level where a variable is defined. enum: `deviceprofile`, `site`", "enum": ["deviceprofile", "site"], "type": "string"}, "vars": {"additionalProperties": {"type": "string"}, "description": "Dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars", "examples": [{"RADIUS_IP1": "172.31.2.5", "RADIUS_SECRET": "11s64632d"}], "type": "object"}, "vars_annotation": {"additionalProperties": false, "description": "Annotation for a single var, helping identify its purpose and enabling auto-complete/enumeration in UI", "properties": {"note": {"description": "User-provided note to describe what this var was created for", "type": "string"}, "type": {"default": "generic", "description": "Used to identify where to enumerate / auto-complete the field from. Default is `generic` (plain string, no special handling).\n\nenum: `generic`, `mxtunnel_id`", "type": "string"}}, "type": "object"}, "vars_annotations": {"additionalProperties": {"$ref": "#/components/schemas/vars_annotation"}, "description": "Optional annotations for vars defined in this site. Keys match var names; values describe the var purpose and type for UI auto-complete.", "examples": [{"MXTUNNEL_GUEST": {"type": "mxtunnel_id"}, "RADIUS_IP1": {"note": "RADIUS server IP address for US East Campus"}}], "type": "object"}, "vbeacon": {"description": "Virtual beacon configuration for SDK proximity notifications", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the virtual beacon was created"}, "for_site": {"description": "Whether this virtual beacon is defined at site scope", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the virtual beacon"}, "major": {"description": "Bluetooth beacon major value used for proximity matching", "examples": [1356], "type": "integer"}, "map_id": {"description": "Floorplan map identifier containing the virtual beacon", "examples": ["63eda950-c6da-11e4-a628-60f81dd250cc"], "format": "uuid", "type": "string"}, "message": {"description": "Notification message displayed by the SDK application when a client is near the virtual beacon", "examples": ["Welcome to Mist"], "type": "string"}, "minor": {"description": "Bluetooth beacon minor value used for proximity matching", "examples": [21], "type": "integer"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the virtual beacon was last modified"}, "name": {"description": "Display name or label for the virtual beacon", "examples": ["conference room"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier that owns the virtual beacon"}, "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/ble_config_power_mode", "description": "Transmit power mode for the virtual beacon"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier that owns the virtual beacon"}, "url": {"description": "Destination URL shown by the SDK application when a client is near the virtual beacon", "examples": ["https://www.mist.com/any"], "type": "string"}, "uuid": {"description": "Bluetooth beacon UUID used for proximity matching", "examples": ["31375aeb-b8d3-1ea6-83bf-a31eb04e1c38"], "format": "uuid", "type": "string"}, "wayfinding_nodename": {"description": "Name to be used in wayfinding_path or wayfinding_grid blob", "examples": ["node1"], "type": "string"}, "x": {"description": "Horizontal pixel coordinate of the virtual beacon on the map", "examples": [53.5], "format": "double", "type": "number"}, "y": {"description": "Vertical pixel coordinate of the virtual beacon on the map", "examples": [173.1], "format": "double", "type": "number"}}, "type": "object"}, "vbeacons": {"description": "Virtual beacon records returned by a list response", "items": {"$ref": "#/components/schemas/vbeacon"}, "type": "array"}, "vc_port": {"description": "Request to change the Virtual Chassis port mode on a switch", "properties": {"mode": {"$ref": "#/components/schemas/vc_port_mode", "description": "Virtual Chassis port mode to apply"}}, "type": "object"}, "vc_port_mode": {"description": "enum: `network`, `vcp-higig`, `vcp-hgoe`", "enum": ["network", "vcp-higig", "vcp-hgoe"], "type": "string"}, "version_string": {"description": "JSI device upgrade target version request", "properties": {"version": {"description": "Target software version for the JSI device upgrade", "type": "string"}}, "type": "object"}, "virtual_chassis_config": {"description": "Virtual Chassis creation or configuration request", "properties": {"locating": {"description": "Whether the Virtual Chassis is currently in locate mode", "readOnly": true, "type": "boolean"}, "members": {"$ref": "#/components/schemas/virtual_chassis_config_members", "description": "Virtual Chassis members and their expected roles and VC ports"}, "preprovisioned": {"default": false, "description": "Whether to create the Virtual Chassis in pre-provisioned mode", "type": "boolean"}}, "type": "object"}, "virtual_chassis_config_member": {"additionalProperties": false, "description": "Virtual Chassis member configuration", "properties": {"locating": {"description": "Whether this Virtual Chassis member is currently in locate mode", "readOnly": true, "type": "boolean"}, "mac": {"description": "Member MAC address; for FPC0 this matches the device MAC address", "type": "string"}, "member_id": {"description": "Member ID used for a pre-provisioned Virtual Chassis", "type": "integer"}, "vc_ports": {"$ref": "#/components/schemas/strings", "description": "Port names to use as Virtual Chassis ports on this member"}, "vc_role": {"$ref": "#/components/schemas/virtual_chassis_config_member_vc_role", "description": "Role of this member in the Virtual Chassis"}}, "required": ["mac", "vc_role"], "type": "object"}, "virtual_chassis_config_member_vc_role": {"description": "enum: `backup`, `linecard`, `master`", "enum": ["backup", "linecard", "master"], "type": "string"}, "virtual_chassis_config_members": {"description": "Virtual Chassis member configurations", "items": {"$ref": "#/components/schemas/virtual_chassis_config_member"}, "type": "array"}, "virtual_chassis_member_update": {"additionalProperties": false, "description": "Member update for a Virtual Chassis add, remove, or preprovision operation", "properties": {"mac": {"description": "Required if `op`==`add` or `op`==`preprovision`; MAC address of the member to add or preprovision", "type": "string"}, "member": {"description": "Required if `op`==`remove`; member ID to remove from the Virtual Chassis", "type": "integer"}, "member_id": {"description": "Required if `op`==`preprovision`. Optional if `op`==`add`; target member ID for the Virtual Chassis member", "type": "integer"}, "vc_ports": {"$ref": "#/components/schemas/virtual_chassis_member_update_vc_ports", "description": "Required if `op`==`add` or `op`==`preprovision`; port names to use as Virtual Chassis ports"}, "vc_role": {"$ref": "#/components/schemas/virtual_chassis_member_update_vc_role", "description": "Required if `op`==`add` or `op`==`preprovision`; role of the member in the Virtual Chassis"}}, "type": "object"}, "virtual_chassis_member_update_vc_ports": {"description": "Required if `op`==`add` or `op`==`preprovision`", "items": {"type": "string"}, "type": "array"}, "virtual_chassis_member_update_vc_role": {"description": "Required if `op`==`add` or `op`==`preprovision`. enum: `backup`, `linecard`, `master`", "enum": ["backup", "linecard", "master"], "type": "string"}, "virtual_chassis_port": {"description": "Request to set or delete Virtual Chassis ports on members", "properties": {"members": {"$ref": "#/components/schemas/virtual_chassis_port_members", "description": "Virtual Chassis members and ports affected by the operation"}, "op": {"$ref": "#/components/schemas/virtual_chassis_port_operation", "description": "Action to perform on the specified Virtual Chassis ports"}}, "required": ["op", "members"], "type": "object"}, "virtual_chassis_port_members": {"description": "Virtual Chassis member port selections for a port operation", "items": {"$ref": "#/components/schemas/config_vc_port_member"}, "type": "array", "uniqueItems": true}, "virtual_chassis_port_operation": {"description": "Action to perform on the specified Virtual Chassis ports. enum: `delete`, `set`", "enum": ["delete", "set"], "minLength": 1, "type": "string"}, "virtual_chassis_update": {"description": "Virtual Chassis member update request", "properties": {"member": {"description": "Only if `op`==`renumber`; existing member ID to renumber", "type": "integer"}, "members": {"$ref": "#/components/schemas/virtual_chassis_update_members", "description": "Member updates for add, remove, or preprovision operations"}, "new-member": {"description": "Only if `op`==`renumber`; new member ID to assign", "type": "integer"}, "op": {"$ref": "#/components/schemas/virtual_chassis_update_op", "description": "Action to perform on the Virtual Chassis"}, "remove_inventory": {"default": false, "description": "Only if `op`==`preprovision`. When removing members from a pre-provisioned VC, set to `true` to delete the inventory records for removed members (e.g. for RMA). Members being removed must be in \"not-present\" state.", "type": "boolean"}}, "type": "object"}, "virtual_chassis_update_members": {"description": "Member updates for a Virtual Chassis operation", "items": {"$ref": "#/components/schemas/virtual_chassis_member_update"}, "type": "array"}, "virtual_chassis_update_op": {"description": "enum: `add`, `preprovision`, `remove`, `renumber`", "enum": ["add", "preprovision", "remove", "renumber"], "type": "string"}, "visits_scope": {"default": "site", "description": "enum: `map`, `rssizone`, `site`, `zone`", "enum": ["map", "rssizone", "site", "zone"], "type": "string"}, "vlan_id_with_variable": {"description": "VLAN ID, either numeric or expressed as a template variable string", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "vlan_ids": {"description": "list of VLAN IDs on which rogue APs are ignored", "items": {"maximum": 4096, "minimum": 0, "type": "integer"}, "type": "array"}, "vpn": {"description": "Organization VPN overlay configuration", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the VPN configuration was created"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the VPN configuration"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the VPN configuration was last modified"}, "name": {"description": "Display name of the VPN configuration", "minLength": 1, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the VPN configuration"}, "path_selection": {"$ref": "#/components/schemas/vpn_path_selection", "description": "Path selection settings used when `type`==`hub_spoke`"}, "paths": {"$ref": "#/components/schemas/vpn_paths", "description": "VPN path definitions keyed by VPN name for `hub_spoke` mode or interface name for `mesh` mode"}, "type": {"$ref": "#/components/schemas/vpn_mode", "description": "VPN topology mode for this configuration"}}, "required": ["name", "paths"], "type": "object"}, "vpn_mode": {"default": "hub_spoke", "description": "VPN topology mode for this configuration. enum: `hub_spoke`, `mesh`", "enum": ["hub_spoke", "mesh"], "type": "string"}, "vpn_path": {"additionalProperties": false, "description": "VPN path settings used by an organization VPN", "properties": {"bfd_profile": {"$ref": "#/components/schemas/vpn_path_bfd_profile", "description": "BFD profile used for this VPN path"}, "bfd_use_tunnel_mode": {"default": false, "description": "If `type`==`mesh` and for SSR only, whether to use tunnel mode", "type": "boolean"}, "ip": {"description": "Source IP address for this VPN path, if different from the WAN port IP", "type": "string"}, "peer_paths": {"$ref": "#/components/schemas/vpn_path_peer_paths", "description": "Peer path preferences used when `type`==`mesh`"}, "pod": {"default": 1, "description": "Grouping index used to place this VPN path into a pod", "examples": [2], "maximum": 128, "minimum": 1, "type": "integer"}, "traffic_shaping": {"$ref": "#/components/schemas/vpn_path_traffic_shaping", "description": "Traffic shaping settings applied to this VPN path"}}, "type": "object"}, "vpn_path_bfd_profile": {"default": "broadband", "description": "BFD profile used for this VPN path. enum: `broadband`, `lte`", "enum": ["broadband", "lte"], "type": "string"}, "vpn_path_peer_paths": {"additionalProperties": {"$ref": "#/components/schemas/vpn_path_peer_paths_peer"}, "description": "If `type`==`mesh`, property key is the peer interface name", "type": "object"}, "vpn_path_peer_paths_peer": {"additionalProperties": false, "description": "Peer path preference settings for mesh VPN routing", "properties": {"preference": {"description": "Lower numeric value makes this outgoing WAN path more preferred", "type": "integer"}}, "type": "object"}, "vpn_path_selection": {"additionalProperties": false, "description": "Only if `type`==`hub_spoke`; path selection behavior for VPN paths", "properties": {"strategy": {"$ref": "#/components/schemas/vpn_path_selection_strategy", "description": "Path selection strategy for a hub-and-spoke VPN"}}, "type": "object"}, "vpn_path_selection_strategy": {"default": "disabled", "description": "enum: `disabled`, `simple`, `manual`", "enum": ["disabled", "simple", "manual"], "type": "string"}, "vpn_path_traffic_shaping": {"additionalProperties": false, "description": "Traffic shaping settings for a VPN path", "properties": {"class_percentage": {"$ref": "#/components/schemas/vpn_path_traffic_shaping_class_percentage", "description": "Bandwidth percentages for high, medium, low, and best-effort traffic classes"}, "enabled": {"description": "Whether traffic shaping is enabled for this VPN path", "type": "boolean"}, "max_tx_kbps": {"description": "Maximum transmit rate for this VPN path, in Kbps; `null` means no explicit limit", "type": ["integer", "null"]}}, "type": "object"}, "vpn_path_traffic_shaping_class_percentage": {"default": [80, 10, 9, 1], "description": "percentages for different class of traffic: high / medium / low / best-effort adding up to 100", "items": {"type": "integer"}, "maxItems": 4, "minItems": 4, "type": "array"}, "vpn_paths": {"additionalProperties": {"$ref": "#/components/schemas/vpn_path"}, "description": "For `type`==`hub_spoke`, Property key is the VPN name. For `type`==`mesh`, Property key is the Interface name", "type": "object"}, "vpn_peer_stat": {"additionalProperties": false, "description": "VPN peer path statistics returned by organization VPN peer searches", "properties": {"is_active": {"description": "Whether this VPN peer path is the active redundant path", "type": "boolean"}, "jitter": {"description": "Last sampled VPN peer jitter, in milliseconds", "minimum": 0, "type": "number"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when this VPN peer was last observed, in epoch seconds"}, "latency": {"description": "Last sampled VPN peer latency, in milliseconds", "minimum": 0, "type": "number"}, "loss": {"description": "Packet loss in percentage", "maximum": 100, "minimum": 0, "type": "number"}, "mac": {"description": "Local router MAC address for the VPN link", "minLength": 1, "type": "string"}, "mos": {"description": "Mean Opinion Score, a measure of the quality of the VPN link", "maximum": 5, "minimum": 0, "type": "number"}, "mtu": {"description": "Maximum transmission unit for the VPN peer path, in bytes", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization identifier for the VPN peer statistic"}, "peer_mac": {"description": "Peer router MAC address for the VPN link", "minLength": 1, "type": "string"}, "peer_port_id": {"description": "Peer router interface identifier for the VPN link", "minLength": 1, "type": "string"}, "peer_router_name": {"description": "Peer router name reported for the VPN link", "minLength": 1, "type": "string"}, "peer_site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for the peer side of the VPN link"}, "port_id": {"description": "Local router interface identifier for the VPN link", "minLength": 1, "type": "string"}, "router_name": {"description": "Local router name reported for the VPN link", "minLength": 1, "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site identifier for the local side of the VPN link"}, "type": {"description": "VPN implementation type for the peer, such as `ipsec` for SRX or `svr` for SSR", "minLength": 1, "type": "string"}, "up": {"description": "Whether the VPN peer is currently up", "type": "boolean"}, "uptime": {"description": "Gateway-reported VPN peer uptime value, in seconds", "type": "integer"}}, "type": "object"}, "vpn_peer_stat_search": {"additionalProperties": false, "description": "Search response containing VPN peer path statistics", "properties": {"end": {"description": "Search window end timestamp, in epoch seconds", "type": "number"}, "limit": {"description": "Maximum number of VPN peer statistics returned", "type": "integer"}, "next": {"description": "URL for the next page of VPN peer statistics, when more results are available", "type": "string"}, "results": {"$ref": "#/components/schemas/vpn_peer_stat_search_results", "description": "VPN peer statistic rows returned by the search"}, "start": {"description": "Search window start timestamp, in epoch seconds", "type": "number"}, "total": {"description": "Number of VPN peer statistics matching the search", "type": "integer"}}, "required": ["end", "limit", "results", "start", "total"], "type": "object"}, "vpn_peer_stat_search_results": {"description": "VPN peer statistic rows returned by a search response", "items": {"$ref": "#/components/schemas/vpn_peer_stat"}, "type": "array", "uniqueItems": true}, "vpn_type": {"description": "VPN type for tunnel or peer configuration. enum: `ipsec`, `svr`", "enum": ["ipsec", "svr"], "type": "string"}, "vpns": {"description": "VPN records returned by a list response", "items": {"$ref": "#/components/schemas/vpn"}, "type": "array"}, "vrf_config": {"additionalProperties": false, "description": "VRF enablement settings applied when supported on the device", "properties": {"enabled": {"description": "Whether to enable VRF (when supported on the device)", "type": "boolean"}}, "type": "object"}, "vrf_extra_route": {"additionalProperties": false, "description": "Additional IPv4 static route for a VRF instance", "properties": {"via": {"description": "IPv4 next-hop address for this VRF extra route", "format": "ipv4", "type": "string"}}, "type": "object"}, "vrf_extra_route6": {"additionalProperties": false, "description": "Additional IPv6 static route for a VRF instance", "properties": {"via": {"description": "IPv6 next-hop address for this VRF extra route", "format": "ipv6", "type": "string"}}, "type": "object"}, "vrf_extra_routes": {"additionalProperties": {"$ref": "#/components/schemas/vrf_extra_route"}, "description": "Property key is the destination CIDR (e.g. \"10.0.0.0/8\")", "examples": [{"0.0.0.0/0": {"via": "192.168.1.10"}}], "type": "object"}, "vrf_extra_routes6": {"additionalProperties": {"$ref": "#/components/schemas/vrf_extra_route6"}, "description": "Property key is the destination CIDR (e.g. \"2a02:1234:420a:10c9::/64\")", "examples": [{"2a02:1234:420a:10c9::/64": {"via": "2a02:1234:200a::100"}}], "type": "object"}, "vrrp_config": {"additionalProperties": false, "description": "Junos VRRP configuration applied to a switch or switch profile", "properties": {"enabled": {"description": "Whether VRRP configuration is enabled", "type": "boolean"}, "groups": {"$ref": "#/components/schemas/vrrp_config_groups", "description": "VRRP groups keyed by group name"}}, "type": "object"}, "vrrp_config_group": {"additionalProperties": false, "description": "VRRP group behavior settings", "properties": {"preempt": {"default": false, "description": "If `true`, allow preemption (a backup router can preempt a primary router)", "type": "boolean"}, "priority": {"description": "VRRP priority for this router in the group", "type": "integer"}}, "type": "object"}, "vrrp_config_groups": {"additionalProperties": {"$ref": "#/components/schemas/vrrp_config_group"}, "description": "Property key is the VRRP name", "type": "object"}, "vrrp_group": {"additionalProperties": false, "description": "Junos VRRP group authentication and network settings", "properties": {"auth_key": {"description": "If `auth_type`==`md5`, authentication key used by the VRRP group", "examples": ["auth-key-1"], "type": "string"}, "auth_password": {"description": "If `auth_type`==`simple`, password used by the VRRP group", "format": "password", "type": "string"}, "auth_type": {"$ref": "#/components/schemas/vrrp_group_auth_type", "description": "Authentication method used by the VRRP group"}, "networks": {"$ref": "#/components/schemas/vrrp_group_networks", "description": "VRRP network mappings and their virtual IP addresses"}}, "type": "object"}, "vrrp_group_auth_type": {"default": "md5", "description": "Authentication method used by the VRRP group. enum: `md5`, `simple`", "enum": ["md5", "simple"], "examples": ["md5"], "type": "string"}, "vrrp_group_network": {"additionalProperties": false, "description": "Virtual IP assignment for a VRRP network", "properties": {"ip": {"description": "Virtual IP address used by the VRRP group on this network", "type": "string"}}, "type": "object"}, "vrrp_group_networks": {"additionalProperties": {"$ref": "#/components/schemas/vrrp_group_network"}, "description": "Property key is the network name", "examples": [{"data": {"ip": "10.182.96.1"}, "mgmt": {"ip": "10.182.104.1"}, "v10": {"ip": "10.182.104.129"}, "wap": {"ip": "10.182.102.1"}}], "type": "object"}, "vs_instance": {"additionalProperties": {"$ref": "#/components/schemas/vs_instance_property"}, "description": "Optional, for EX9200 only to segregate virtual-switches. Property key is the instance name", "type": "object"}, "vs_instance_property": {"additionalProperties": false, "description": "EX9200 virtual-switch instance settings", "properties": {"networks": {"$ref": "#/components/schemas/vs_instance_property_networks", "description": "List of network names included in this virtual-switch instance"}}, "type": "object"}, "vs_instance_property_networks": {"description": "Network names included in a virtual-switch instance", "items": {"examples": ["guest"], "type": "string"}, "type": "array"}, "wan_extra_routes": {"additionalProperties": false, "description": "Additional IPv4 route for a WAN interface", "properties": {"via": {"description": "IPv4 next-hop address for this WAN extra route", "format": "ipv4", "type": "string"}}, "type": "object"}, "wan_extra_routes6": {"additionalProperties": false, "description": "Additional IPv6 route for a WAN interface", "properties": {"via": {"description": "IPv6 next-hop address for this WAN extra route", "format": "ipv6", "type": "string"}}, "type": "object"}, "wan_tunnel_protocol": {"description": "Tunnel protocol used for the connection. enum: `gre`, `ipsec`", "enum": ["gre", "ipsec"], "type": "string"}, "wan_usages": {"additionalProperties": false, "description": "WAN usage record returned by site WAN usage searches", "properties": {"mac": {"description": "Local router MAC address for the WAN usage record", "examples": ["5c5b35000001"], "type": "string"}, "path_type": {"description": "WAN path type used by this usage record", "examples": ["vpn"], "type": "string"}, "path_weight": {"description": "Configured weight for the WAN path", "examples": [10], "type": "integer"}, "peer_mac": {"description": "Remote peer MAC address for the WAN path", "examples": ["0200018c95e1"], "type": "string"}, "peer_port_id": {"description": "Remote peer interface identifier for the WAN path", "examples": ["ge-0/0/3"], "type": "string"}, "policy": {"description": "WAN path policy that selected this path", "examples": ["policy1"], "type": "string"}, "port_id": {"description": "Local router interface identifier for the WAN path", "examples": ["ge-0/0/0.0"], "type": "string"}, "tenant": {"description": "Network tenant context for the WAN usage record", "examples": ["tenant1"], "type": "string"}}, "type": "object"}, "wan_usages_count_distinct": {"default": "policy", "description": "enum: `mac`, `path_type`, `peer_mac`, `peer_port_id`, `policy`, `port_id`, `tenant`", "enum": ["mac", "path_type", "peer_mac", "peer_port_id", "policy", "port_id", "tenant"], "type": "string"}, "wayfinding_import_json": {"description": "Vendor wayfinding map metadata imported from Jibestream or Micello", "oneOf": [{"$ref": "#/components/schemas/map_jibestream"}, {"$ref": "#/components/schemas/map_micello"}]}, "webhook": {"description": "Webhook configuration for delivering selected Mist events to an external destination", "properties": {"assetfilter_ids": {"$ref": "#/components/schemas/webhook_assetfilter_ids", "description": "Asset filter identifiers used to restrict `asset-raw-rssi` webhook events"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Epoch timestamp when the webhook was created"}, "enabled": {"default": true, "description": "Whether webhook is enabled", "type": "boolean"}, "for_site": {"description": "Whether this webhook is scoped to a site rather than the organization", "readOnly": true, "type": "boolean"}, "headers": {"additionalProperties": {"type": "string"}, "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", "examples": [{"x-custom-1": "your_custom_header_value1", "x-custom-2": "your_custom_header_value2"}], "type": ["object", "null"]}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the webhook"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Epoch timestamp when the webhook was last modified"}, "name": {"description": "Display name of the webhook", "type": ["string", "null"]}, "oauth2_client_id": {"description": "Required when `oauth2_grant_type`==`client_credentials`; OAuth2 client identifier used to request an access token", "type": "string"}, "oauth2_client_secret": {"description": "Required when `oauth2_grant_type`==`client_credentials`; OAuth2 client secret used to request an access token", "format": "password", "type": "string"}, "oauth2_grant_type": {"$ref": "#/components/schemas/webhook_oauth2_grant_type", "description": "OAuth2 grant type used when `type`==`oauth2`"}, "oauth2_password": {"description": "Required when `oauth2_grant_type`==`password`; password used for the OAuth2 token request", "format": "password", "type": "string"}, "oauth2_scopes": {"$ref": "#/components/schemas/webhook_oauth2_scopes", "description": "OAuth2 scopes included in the token request when `type`==`oauth2`"}, "oauth2_token_url": {"description": "Required when `type`==`oauth2`; token endpoint URL used to obtain the OAuth2 access token", "type": "string"}, "oauth2_username": {"description": "Required when `oauth2_grant_type`==`password`; username used for the OAuth2 token request", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization that owns the webhook"}, "secret": {"description": "Only if `type`=`http-post` \n\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)", "type": ["string", "null"]}, "single_event_per_message": {"default": false, "description": "Some solutions may not be able to parse multiple events from a single message (e.g. IBM Qradar, DSM). When set to `true`, only a single event will be sent per message. this feature is only available on certain topics (see [List Webhook Topics](/#operations/listWebhookTopics))", "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this webhook when it is site-scoped"}, "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.", "type": ["string", "null"]}, "topics": {"$ref": "#/components/schemas/webhook_topics", "description": "Event topics delivered by this webhook"}, "type": {"$ref": "#/components/schemas/webhook_type", "description": "Delivery mechanism used by this webhook"}, "url": {"description": "Destination URL that receives webhook deliveries", "type": "string"}, "verify_cert": {"default": true, "description": "When url uses HTTPS, whether to verify the certificate", "type": "boolean"}}, "type": "object"}, "webhook_alarm_event": {"additionalProperties": false, "description": "Alarm event delivered inside an `alarms` webhook payload", "properties": {"aps": {"$ref": "#/components/schemas/webhook_alarm_event_aps", "description": "Representative AP MAC addresses related to this alarm event"}, "bssids": {"$ref": "#/components/schemas/webhook_alarm_event_bssids", "description": "Representative BSSIDs related to this alarm event"}, "count": {"description": "If present, number of events of this type that occurred in the current interval; defaults to 1", "readOnly": true, "type": "integer"}, "event_id": {"description": "Unique identifier for this alarm webhook event", "format": "uuid", "readOnly": true, "type": "string"}, "for_site": {"description": "Whether this alarm event is scoped to a site rather than only to the organization", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the alarm associated with this event"}, "last_seen": {"$ref": "#/components/schemas/last_seen", "description": "Time when the most recent incident in the alarm window was seen, in epoch seconds"}, "node": {"$ref": "#/components/schemas/ha_cluster_node_enum", "description": "HA cluster node associated with this alarm event when applicable"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with this alarm event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with this alarm event"}, "ssids": {"$ref": "#/components/schemas/webhook_alarm_event_ssids", "description": "Representative wireless SSIDs related to this alarm event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when this alarm event was raised, in epoch seconds"}, "type": {"description": "Alarm type key for this event", "readOnly": true, "type": "string"}, "update": {"description": "Whether this payload updates an alarm event that was sent earlier; defaults to false", "readOnly": true, "type": "boolean"}}, "required": ["id", "org_id", "site_id", "timestamp", "type"], "type": "object"}, "webhook_alarm_event_aps": {"description": "Representative AP MAC address samples included for an alarm webhook event", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "webhook_alarm_event_bssids": {"description": "Representative BSSID samples included for an alarm webhook event", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "webhook_alarm_event_ssids": {"description": "Representative wireless SSID samples included for an alarm webhook event", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "webhook_alarms": {"additionalProperties": false, "description": "Sample of the `alarms` webhook payload.\n\n**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 [List Alarm Definitions#](/#operations/listAlarmDefinitions), under \"fields\" array of /alarm_defs response object.", "properties": {"events": {"$ref": "#/components/schemas/webhook_alarms_events", "description": "Alarm events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_alarms_topic", "description": "Webhook topic name for alarm event deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_alarms_events": {"description": "Alarm events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_alarm_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_alarms_topic": {"description": "Webhook topic name for alarm event deliveries. enum: `alarms`", "enum": ["alarms"], "type": "string"}, "webhook_asset_raw_rssi": {"additionalProperties": false, "description": "Sample of the `asset-raw-rssi` webhook payload.\n\n\nThis webhook topic provides raw data from packets emitted by named and filtered assets.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier).", "properties": {"events": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_events", "description": "Raw RSSI event records included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_topic", "description": "Webhook topic name for asset raw RSSI deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_asset_raw_rssi_event": {"additionalProperties": false, "description": "Raw RSSI sample reported for an asset or beacon packet", "properties": {"ap_loc": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_event_ap_loc", "description": "Location coordinates of the reporting AP when available, updated about once per minute per client"}, "beam": {"description": "antenna index, clock-wise starting from the LED", "maximum": 9, "minimum": 1, "type": "integer"}, "device_id": {"$ref": "#/components/schemas/id", "description": "Identifier of the AP or device that reported the raw RSSI sample"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value decoded from the packet when present"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value decoded from the packet when present"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID decoded from the packet when present"}, "is_asset": {"description": "Whether the advertising MAC address is recognized as an asset", "type": "boolean"}, "mac": {"description": "Client MAC address for the asset or beacon that emitted the packet", "type": "string"}, "map_id": {"$ref": "#/components/schemas/id", "description": "Map associated with the reporting AP when location context is available"}, "mfg_company_id": {"description": "optional, BLE manufacturing company ID", "type": ["integer", "null"]}, "mfg_data": {"description": "optional, BLE manufacturing data in hex byte-string format (ie \u201c112233AABBCC\u201d)", "type": ["string", "null"]}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the raw RSSI sample"}, "rssi": {"description": "Received signal strength of the packet at the reporting AP, in dBm", "type": "integer"}, "service_packets": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_event_service_packets", "description": "BLE service data packets decoded from the advertised payload"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the raw RSSI sample"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the raw RSSI sample was observed, in epoch seconds"}}, "type": "object"}, "webhook_asset_raw_rssi_event_ap_loc": {"description": "optional, coordinates (if any) of reporting AP (updated once in 60s per client)", "items": {"type": "number"}, "type": "array"}, "webhook_asset_raw_rssi_event_service_packet": {"additionalProperties": false, "description": "BLE service data decoded from an asset raw RSSI packet", "properties": {"service_data": {"description": "optional, data from service data", "type": ["string", "null"]}, "service_uuid": {"description": "optional, UUID from service data", "type": ["string", "null"]}}, "type": "object"}, "webhook_asset_raw_rssi_event_service_packets": {"description": "BLE service data packets decoded from an asset raw RSSI event", "items": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_event_service_packet"}, "type": "array"}, "webhook_asset_raw_rssi_events": {"description": "Asset raw RSSI events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_asset_raw_rssi_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_asset_raw_rssi_topic": {"description": "Webhook topic name for asset raw RSSI deliveries. enum: `asset-raw-rssi`", "enum": ["asset-raw-rssi"], "type": "string"}, "webhook_assetfilter_ids": {"description": "Only if `type`==`asset-raw-rssi`. List of ids to associated asset filters. These filters will be applied to messages routed to a filtered-asset-rssi webhook", "items": {"format": "uuid", "type": "string"}, "type": "array"}, "webhook_audits": {"additionalProperties": false, "description": "Sample of the `audits` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/log_events", "description": "Audit log events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_audits_topic", "description": "Webhook topic name for audit event deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_audits_topic": {"description": "Webhook topic name for audit event deliveries. enum: `audits`", "enum": ["audits"], "type": "string"}, "webhook_client_info": {"additionalProperties": false, "description": "Sample of the `client-info` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_client_info_events", "description": "Client information events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_client_info_topic", "description": "Webhook topic name for client information deliveries"}}, "type": "object"}, "webhook_client_info_event": {"additionalProperties": false, "description": "Client identity and addressing details delivered by a `client-info` webhook", "properties": {"hostname": {"description": "Client hostname reported in the event", "examples": ["service.company.net"], "type": "string"}, "ip": {"description": "Client IP address reported in the event", "type": "string"}, "mac": {"description": "Client MAC address reported in the event", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client information event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client information event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client information event was generated, in epoch seconds"}}, "type": "object"}, "webhook_client_info_events": {"description": "Client information events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_client_info_event"}, "type": "array"}, "webhook_client_info_topic": {"description": "Webhook topic name for client information deliveries. enum: `client-info`", "enum": ["client-info"], "type": "string"}, "webhook_client_join": {"additionalProperties": false, "description": "Sample of the `client-join` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_client_join_events", "description": "Client join events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_client_join_topic", "description": "Webhook topic name for client join deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_client_join_event": {"additionalProperties": false, "description": "Wireless client association event delivered when a client joins a WLAN", "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": {"description": "WLAN radio BSSID that the client associated with", "type": "string"}, "connect": {"description": "Time when the client connected, in epoch seconds", "type": "integer"}, "connect_float": {"description": "Client connection timestamp with millisecond precision", "type": "number"}, "mac": {"description": "Client MAC address that joined the WLAN", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client join event"}, "rssi": {"description": "Signal strength when the client associated, in dBm", "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client join event"}, "site_name": {"description": "Site name associated with the client join event", "type": "string"}, "ssid": {"description": "WLAN SSID that the client joined", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client join event was generated, in epoch seconds"}, "version": {"description": "schema version of this message", "type": "number"}, "wlan_id": {"description": "Unique identifier of the WLAN the client joined", "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"], "type": "object"}, "webhook_client_join_events": {"description": "Client join events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_client_join_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_client_join_topic": {"description": "Webhook topic name for client join deliveries. enum: `client-join`", "enum": ["client-join"], "type": "string"}, "webhook_client_latency": {"additionalProperties": false, "description": "Sample of the `client-latency` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_client_latency_events", "description": "Client latency summary events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_client_latency_topic", "description": "Webhook topic name for client latency deliveries"}}, "type": "object"}, "webhook_client_latency_event": {"additionalProperties": false, "description": "Site-level client latency metrics for authentication, DHCP, and DNS operations", "properties": {"avg_auth": {"description": "Average authentication latency observed during the reporting interval", "examples": [0.17170219], "type": "number"}, "avg_dhcp": {"description": "Average DHCP latency observed during the reporting interval", "examples": [0.017828934], "type": "number"}, "avg_dns": {"description": "Average DNS latency observed during the reporting interval", "examples": [0.024532124], "type": "number"}, "max_auth": {"description": "Maximum authentication latency observed during the reporting interval", "examples": [0.18170219], "type": "number"}, "max_dhcp": {"description": "Maximum DHCP latency observed during the reporting interval", "examples": [0.027828934], "type": "number"}, "max_dns": {"description": "Maximum DNS latency observed during the reporting interval", "examples": [0.022532124], "type": "number"}, "min_auth": {"description": "Minimum authentication latency observed during the reporting interval", "examples": [0.16050219], "type": "number"}, "min_dhcp": {"description": "Minimum DHCP latency observed during the reporting interval", "examples": [0.015828934], "type": "number"}, "min_dns": {"description": "Minimum DNS latency observed during the reporting interval", "examples": [0.029532124], "type": "number"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client latency metrics"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client latency metrics"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client latency metrics were reported, in epoch seconds"}}, "type": "object"}, "webhook_client_latency_events": {"description": "Client latency summary events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_client_latency_event"}, "type": "array"}, "webhook_client_latency_topic": {"description": "Webhook topic name for client latency deliveries. enum: `client-latency`", "enum": ["client-latency"], "type": "string"}, "webhook_client_sessions": {"additionalProperties": false, "description": "Sample of the `client-sessions` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_client_sessions_events", "description": "Client session events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_client_sessions_topic", "description": "Webhook topic name for client session deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_client_sessions_event": {"additionalProperties": false, "description": "Wireless client session event delivered when a client roams or disconnects", "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": {"description": "WLAN radio BSSID that the client was associated with", "type": "string"}, "client_family": {"description": "Device family E.g. \"Mac\", \"iPhone\", \"Apple watch\"", "type": "string"}, "client_manufacture": {"description": "Device manufacturer E.g. \"Apple\"", "type": "string"}, "client_model": {"description": "Device model E.g. \"8+\", \"XS\"", "type": "string"}, "client_os": {"description": "Device operating system E.g. \"Mojave\", \"Windows 10\", \"Linux\"", "type": "string"}, "connect": {"description": "Time when the client connected, in epoch seconds", "type": "integer"}, "connect_float": {"description": "Client connection timestamp with millisecond precision", "type": "number"}, "disconnect": {"description": "Time when the client disconnected, in epoch seconds", "type": "integer"}, "disconnect_float": {"description": "Client disconnect timestamp with millisecond precision", "type": "number"}, "duration": {"description": "Length of the roamed or completed client session indicated by the `termination_reason` value", "type": "integer"}, "mac": {"description": "Client MAC address for the roaming or disconnected session", "type": "string"}, "next_ap": {"description": "the AP the client has roamed to.", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client session event"}, "rssi": {"description": "Latest average RSSI before the user disconnects", "type": "number"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client session event"}, "site_name": {"description": "Site name associated with the client session event", "type": "string"}, "ssid": {"description": "WLAN SSID for the client session", "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": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client session event was generated, in epoch seconds"}, "version": {"description": "schema version of this message", "type": "number"}, "wlan_id": {"description": "Unique identifier of the WLAN for the client session", "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"], "type": "object"}, "webhook_client_sessions_events": {"description": "Client session events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_client_sessions_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_client_sessions_topic": {"description": "Webhook topic name for client session deliveries. enum: `client-sessions`", "enum": ["client-sessions"], "type": "string"}, "webhook_delivery": {"additionalProperties": false, "description": "Record of a webhook delivery attempt and the destination response", "properties": {"error": {"description": "Message returned for a failed delivery attempt, when available", "type": "string"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the webhook delivery attempt"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the webhook delivery attempt"}, "req_headers": {"description": "HTTP headers sent with the webhook delivery request", "examples": ["{\\\"Content-Type\\\":[\\\"application/json\\\"],\\\"User-Agent\\\":[\\\"Mist-webhook\\\"]}"], "type": "string"}, "req_payload": {"description": "JSON payload sent in the webhook delivery request", "examples": ["{\\\"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": "Destination URL used for the webhook delivery request", "examples": ["https://example.com"], "type": "string"}, "resp_body": {"description": "Response body returned by the webhook destination", "examples": ["Ok"], "type": "string"}, "resp_headers": {"description": "Response headers returned by the webhook destination", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the webhook delivery attempt, when applicable"}, "status": {"$ref": "#/components/schemas/webhook_delivery_status", "description": "Delivery result for the webhook request"}, "status_code": {"description": "HTTP status code returned by the webhook destination", "examples": [200], "type": "integer"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the webhook delivery attempt occurred, in epoch seconds"}, "topic": {"$ref": "#/components/schemas/webhook_delivery_topic", "description": "Webhook topic delivered in this request"}, "webhook_id": {"description": "Unique identifier of the configured webhook used for this delivery attempt", "examples": ["7a11b901-f719-4c91-8aef-deb8699a6364"], "format": "uuid", "type": "string"}}, "type": "object"}, "webhook_delivery_distinct": {"description": "webhook topic. enum: `status`, `status_code`, `topic`, `webhook_id`", "enum": ["status", "status_code", "topic", "webhook_id"], "examples": ["webhook_id"], "type": "string"}, "webhook_delivery_status": {"description": "webhook delivery status. enum: `failure`, `success`", "enum": ["failure", "success"], "examples": ["failure"], "type": "string"}, "webhook_delivery_topic": {"description": "webhook topic. enum: `alarms`, `audits`, `device-updowns`, `occupancy-alerts`, `ping`", "enum": ["alarms", "audits", "device-updowns", "occupancy-alerts", "ping"], "examples": ["audits"], "type": "string"}, "webhook_device_events": {"additionalProperties": false, "description": "Sample of the `device-events` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/device_events", "description": "Device events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_device_events_topic", "description": "Webhook topic name for device event deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_device_events_event_ev_type": {"description": "(optional) event advisory. enum: `notice`, `warn`", "enum": ["notice", "warn"], "type": "string"}, "webhook_device_events_topic": {"description": "Webhook topic name for device event deliveries. enum: `device-events`", "enum": ["device-events"], "type": "string"}, "webhook_device_updowns": {"additionalProperties": false, "description": "Sample of the `device-updowns` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_device_updowns_events", "description": "Device up/down events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_device_updowns_topic", "description": "Webhook topic name for device up/down deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_device_updowns_event": {"additionalProperties": false, "description": "Device availability event delivered when a monitored AP changes up/down state", "properties": {"ap": {"description": "MAC address for the AP whose availability changed", "readOnly": true, "type": "string"}, "ap_name": {"description": "AP name for the device whose availability changed", "readOnly": true, "type": "string"}, "for_site": {"description": "Whether this device up/down event is scoped to a site rather than only to the organization", "readOnly": true, "type": "boolean"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the device up/down event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the device up/down event"}, "site_name": {"description": "Site name associated with the device up/down event", "readOnly": true, "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the device availability event occurred, in epoch seconds"}, "type": {"description": "Reported up/down event type for the device", "readOnly": true, "type": "string"}}, "required": ["ap", "ap_name", "org_id", "site_id", "site_name", "timestamp", "type"], "type": "object"}, "webhook_device_updowns_events": {"description": "Device up/down events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_device_updowns_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_device_updowns_topic": {"description": "Webhook topic name for device up/down deliveries. enum: `device-updowns`", "enum": ["device-updowns"], "type": "string"}, "webhook_discovered_raw_rssi": {"additionalProperties": false, "description": "Sample of the `discovered-raw-rssi` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_discovered_raw_rssi_events", "description": "Discovered raw RSSI event records included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_discovered_raw_rssi_topic", "description": "Webhook topic name for discovered raw RSSI deliveries"}}, "required": ["topic"], "type": "object"}, "webhook_discovered_raw_rssi_event": {"additionalProperties": false, "description": "Raw RSSI sample reported for a passive BLE device packet", "properties": {"ap_loc": {"$ref": "#/components/schemas/webhook_discovered_raw_rssi_event_ap_loc", "description": "Location coordinates of the reporting AP when available, updated about once per minute per client"}, "beam": {"description": "Antenna index, from 1-8, clock-wise starting from the LED", "type": "integer"}, "device_id": {"description": "Identifier of the AP that reported the raw RSSI sample", "format": "uuid", "type": "string"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value decoded from the packet when present"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value decoded from the packet when present"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID decoded from the packet when present"}, "is_asset": {"description": "Whether the advertising MAC address is recognized as an asset", "type": "boolean"}, "mac": {"description": "Client MAC address for the passive BLE device or beacon that emitted the packet", "type": "string"}, "map_id": {"description": "Map associated with the reporting AP when location context is available", "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: \"112233AABBCC\")", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the raw RSSI sample"}, "rssi": {"description": "Received signal strength of the packet at the reporting AP, in dBm", "type": "number"}, "service_packets": {"$ref": "#/components/schemas/service_packets", "description": "BLE service data packets decoded from the advertised payload"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the raw RSSI sample"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the raw RSSI sample was observed, in epoch seconds"}}, "required": ["beam", "device_id", "mac", "map_id", "org_id", "rssi", "site_id"], "type": "object"}, "webhook_discovered_raw_rssi_event_ap_loc": {"description": "coordinates (if any) of reporting AP (updated once in 60s per client)", "items": {"type": "number"}, "type": "array"}, "webhook_discovered_raw_rssi_events": {"description": "Discovered BLE raw RSSI events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_discovered_raw_rssi_event"}, "type": "array"}, "webhook_discovered_raw_rssi_topic": {"description": "Webhook topic name for discovered raw RSSI deliveries. enum: `discovered-raw-rssi`", "enum": ["discovered-raw-rssi"], "type": "string"}, "webhook_guest_authorizations": {"additionalProperties": false, "description": "Sample of the `guest-authorizations` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_guest_authorizations_events", "description": "Guest authorization events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_guest_authorizations_topic", "description": "Webhook topic name for guest authorization deliveries"}}, "type": "object"}, "webhook_guest_authorizations_event": {"additionalProperties": false, "description": "Guest portal authorization event with registration and WLAN context", "properties": {"ap": {"description": "MAC address of the AP handling the guest authorization", "examples": ["5c5b350e55c8"], "type": "string"}, "auth_method": {"description": "Guest portal authentication method used for this authorization event", "examples": ["passphrase"], "type": "string"}, "authorized_expiring_time": {"description": "Unix timestamp when the guest authorization expires", "examples": [1677076639], "type": "integer"}, "authorized_time": {"description": "Unix timestamp when the guest authorization was granted", "examples": [1677076519], "type": "integer"}, "carrier": {"description": "Mobile carrier used when authentication relies on a cellular provider", "examples": ["docomo"], "type": "string"}, "client": {"description": "MAC address of the guest client device", "examples": ["ac2316eca70a"], "type": "string"}, "company": {"description": "Guest company name provided during registration", "examples": ["MIST"], "type": "string"}, "email": {"description": "Guest email address provided during registration", "examples": ["abcd@abcd.com"], "type": "string"}, "field1": {"description": "Value submitted for custom guest field 1", "examples": ["field1 value"], "type": "string"}, "field2": {"description": "Value submitted for custom guest field 2", "examples": ["field2 value"], "type": "string"}, "field3": {"description": "Value submitted for custom guest field 3", "examples": ["field3 value"], "type": "string"}, "field4": {"description": "Value submitted for custom guest field 4", "examples": ["field4 value"], "type": "string"}, "mobile": {"description": "Guest mobile phone number provided during registration", "examples": ["+0123456789"], "type": "string"}, "name": {"description": "Full name provided by the guest during registration", "examples": ["Dr Strange"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the guest authorization event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the guest authorization event"}, "sms_gateway": {"description": "SMS provider used for text-message authentication", "examples": ["Telstra"], "type": "string"}, "sponsor_email": {"description": "Sponsor email address associated with the guest authorization", "examples": ["sponsor@gmail.com"], "type": "string"}, "ssid": {"description": "WLAN SSID on which the guest was authorized", "examples": ["Portal Auth"], "type": "string"}, "wlan_id": {"description": "WLAN identifier on which the guest was authorized", "examples": ["7681be9a-044a-4622-90cf-3accde5ad853"], "type": "string"}}, "type": "object"}, "webhook_guest_authorizations_events": {"description": "Guest authorization events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_guest_authorizations_event"}, "type": "array"}, "webhook_guest_authorizations_topic": {"description": "Webhook topic name for guest authorization deliveries. enum: `guest-authorizations`", "enum": ["guest-authorizations"], "type": "string"}, "webhook_location": {"additionalProperties": false, "description": "Sample of the `location` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_events", "description": "Location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_topic", "description": "Webhook topic name for generic location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_asset": {"additionalProperties": false, "description": "Sample of the `location_asset` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_asset_events", "description": "Asset location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_asset_topic", "description": "Webhook topic name for asset location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_asset_event": {"additionalProperties": false, "description": "Asset location update with map coordinates and optional BLE beacon metadata", "properties": {"battery_voltage": {"description": "Battery voltage value reported by the asset tag", "examples": [3370], "type": "integer"}, "eddystone_uid_instance": {"description": "Eddystone UID instance value advertised by the asset tag", "examples": ["5c5b35000001"], "type": "string"}, "eddystone_uid_namespace": {"description": "Eddystone UID namespace value advertised by the asset tag", "examples": ["2818e3868dec25629ede"], "type": "string"}, "eddystone_url_url": {"description": "Eddystone URL advertised by the asset tag", "examples": ["https://www.abc.com"], "type": "string"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value advertised by the asset tag when present"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value advertised by the asset tag when present"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID advertised by the asset tag when present"}, "mac": {"description": "Asset MAC address used as the location identifier", "examples": ["7fc2936fd243"], "type": "string"}, "map_id": {"description": "Map where the asset location was calculated", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "mfg_company_id": {"description": "Optional, BLE manufacturing company ID", "examples": [935], "type": "integer"}, "mfg_data": {"description": "Optional, BLE manufacturing data in hex byte-string format (ie: \"112233AABBCC\")", "examples": ["648520a1020000"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the asset location event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the asset location was calculated, in epoch seconds"}, "type": {"default": "asset", "description": "Location object type for the asset event; defaults to `asset`", "type": "string"}, "x": {"description": "Horizontal map coordinate of the asset position, in meters", "examples": [13.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the asset position, in meters", "examples": [3.2], "format": "double", "type": "number"}}, "type": "object"}, "webhook_location_asset_events": {"description": "Asset location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_asset_event"}, "type": "array"}, "webhook_location_asset_topic": {"description": "Webhook topic name for asset location deliveries. enum: `location-asset`", "enum": ["location-asset"], "type": "string"}, "webhook_location_centrak": {"additionalProperties": false, "description": "Sample of the `location-centrak` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_centrak_events", "description": "CenTrak location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_centrak_topic", "description": "Webhook topic name for CenTrak location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_centrak_event": {"additionalProperties": false, "description": "CenTrak location update with map coordinates and Wi-Fi beacon metadata", "properties": {"mac": {"description": "Device MAC address used as the CenTrak location identifier", "type": "string"}, "map_id": {"description": "Identifier of the map where the CenTrak location was calculated", "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 (i.e. \"112233AABBCC\")", "type": "string"}, "site_id": {"description": "Site associated with the CenTrak location event", "format": "uuid", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the CenTrak location was calculated, in epoch seconds"}, "type": {"$ref": "#/components/schemas/webhook_location_centrak_event_type", "description": "Location object type for the CenTrak event"}, "wifi_beacon_extended_info": {"$ref": "#/components/schemas/wifi_beacon_extended_info", "description": "Extended Wi-Fi beacon metadata included with this CenTrak location event"}, "x": {"description": "Horizontal map coordinate of the CenTrak device, in meters", "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the CenTrak device, in meters", "format": "double", "type": "number"}}, "type": "object"}, "webhook_location_centrak_event_type": {"description": "Location object type for CenTrak Wi-Fi beacon events. enum: `wifi`", "enum": ["wifi"], "type": "string"}, "webhook_location_centrak_events": {"description": "CenTrak location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_centrak_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_location_centrak_topic": {"description": "Webhook topic name for CenTrak location deliveries. enum: `location-centrak`", "enum": ["location-centrak"], "type": "string"}, "webhook_location_client": {"additionalProperties": false, "description": "Sample of the `location-client` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_client_events", "description": "Connected client location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_client_topic", "description": "Webhook topic name for connected client location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_client_event": {"additionalProperties": false, "description": "Connected Wi-Fi client location update with map coordinates", "properties": {"mac": {"description": "Connected client MAC address used as the location identifier", "examples": ["5684dae9ac8b"], "type": "string"}, "map_id": {"description": "Map where the connected client location was calculated", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the connected client location event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the connected client location was calculated, in epoch seconds"}, "type": {"default": "wifi", "description": "Location object type for the connected client event; defaults to `wifi`", "type": "string"}, "wifi_beacon_extended_info": {"$ref": "#/components/schemas/wifi_beacon_extended_info", "description": "Extended Wi-Fi beacon metadata included with this connected client location event"}, "x": {"description": "Horizontal map coordinate of the connected client, in meters", "examples": [13.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the connected client, in meters", "examples": [3.2], "format": "double", "type": "number"}}, "type": "object"}, "webhook_location_client_events": {"description": "Connected client location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_client_event"}, "type": "array"}, "webhook_location_client_topic": {"description": "Webhook topic name for connected client location deliveries. enum: `location-client`", "enum": ["location-client"], "type": "string"}, "webhook_location_event": {"additionalProperties": false, "description": "Generic location update with map coordinates and optional BLE or Wi-Fi metadata", "properties": {"battery_voltage": {"description": "Battery voltage value reported by the located entity", "type": "integer"}, "eddystone_uid_instance": {"description": "Eddystone UID instance value advertised by the located entity", "type": "string"}, "eddystone_uid_namespace": {"description": "Eddystone UID namespace value advertised by the located entity", "type": "string"}, "eddystone_url_url": {"description": "Eddystone URL advertised by the located entity", "type": "string"}, "ibeacon_major": {"$ref": "#/components/schemas/ibeacon_major", "description": "iBeacon major value advertised by the located entity when present"}, "ibeacon_minor": {"$ref": "#/components/schemas/ibeacon_minor", "description": "iBeacon minor value advertised by the located entity when present"}, "ibeacon_uuid": {"$ref": "#/components/schemas/ibeacon_uuid", "description": "iBeacon UUID advertised by the located entity when present"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for the located entity in this event"}, "mac": {"description": "Located entity MAC address for this location event", "type": "string"}, "map_id": {"description": "Identifier of the map where the location was calculated", "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": "Client or asset display name, when available", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the location event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the location was calculated, in epoch seconds"}, "type": {"description": "Location object type for this event", "type": "string"}, "wifi_beacon_extended_info": {"$ref": "#/components/schemas/wifi_beacon_extended_info", "description": "Extended Wi-Fi beacon metadata included with this location event"}, "x": {"description": "Horizontal map coordinate of the located entity, in meters", "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the located entity, in meters", "format": "double", "type": "number"}}, "required": ["id", "map_id", "site_id", "timestamp", "type", "x", "y"], "type": "object"}, "webhook_location_events": {"description": "Location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_location_sdk": {"additionalProperties": false, "description": "Sample of the `location-sdk` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_sdk_events", "description": "SDK client location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_sdk_topic", "description": "Webhook topic name for SDK client location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_sdk_event": {"additionalProperties": false, "description": "SDK client location update with map coordinates", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the SDK client for this location event"}, "map_id": {"description": "Map where the SDK client location was calculated", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "name": {"description": "Display name of the SDK client when available", "examples": ["optional"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the SDK client location event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the SDK client location was calculated, in epoch seconds"}, "type": {"default": "sdk", "description": "Location object type for the SDK client event; defaults to `sdk`", "type": "string"}, "x": {"description": "Horizontal map coordinate of the SDK client, in meters", "examples": [13.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the SDK client, in meters", "examples": [3.2], "format": "double", "type": "number"}}, "type": "object"}, "webhook_location_sdk_events": {"description": "SDK client location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_sdk_event"}, "type": "array"}, "webhook_location_sdk_topic": {"description": "Webhook topic name for SDK client location deliveries. enum: `location-sdk`", "enum": ["location-sdk"], "type": "string"}, "webhook_location_topic": {"description": "Webhook topic name for generic location deliveries. enum: `location`", "enum": ["location"], "type": "string"}, "webhook_location_unclient": {"additionalProperties": false, "description": "Sample of the `location-unclient` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_location_unclient_events", "description": "Unconnected client location events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_location_unclient_topic", "description": "Webhook topic name for unconnected client location deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_location_unclient_event": {"additionalProperties": false, "description": "Unconnected Wi-Fi client location update with map coordinates", "properties": {"mac": {"description": "Unconnected client MAC address used as the location identifier", "examples": ["5684dae9ac8b"], "type": "string"}, "map_id": {"description": "Map where the unconnected client location was calculated", "examples": ["845a23bf-bed9-e43c-4c86-6fa474be7ae5"], "format": "uuid", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the unconnected client location event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the unconnected client location was calculated, in epoch seconds"}, "type": {"default": "wifi", "description": "Location object type for the unconnected client event; defaults to `wifi`", "type": "string"}, "wifi_beacon_extended_info": {"$ref": "#/components/schemas/wifi_beacon_extended_info", "description": "Extended Wi-Fi beacon metadata included with this unconnected client location event"}, "x": {"description": "Horizontal map coordinate of the unconnected client, in meters", "examples": [13.5], "format": "double", "type": "number"}, "y": {"description": "Vertical map coordinate of the unconnected client, in meters", "examples": [3.2], "format": "double", "type": "number"}}, "type": "object"}, "webhook_location_unclient_events": {"description": "Unconnected client location events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_location_unclient_event"}, "type": "array"}, "webhook_location_unclient_topic": {"description": "Webhook topic name for unconnected client location deliveries. enum: `location-unclient`", "enum": ["location-unclient"], "type": "string"}, "webhook_minis_application": {"additionalProperties": false, "description": "Sample of the `minis-application` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_minis_application_events", "description": "Minis application test events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_minis_application_topic", "description": "Webhook topic name for Minis application test deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_minis_application_event": {"additionalProperties": false, "description": "Marvis Minis application synthetic test result", "properties": {"device_mac": {"description": "MAC address of the device", "type": "string"}, "ip": {"description": "Destination IP address used for the application test", "type": "string"}, "latency": {"description": "Application test latency measured in milliseconds", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the Minis application test result"}, "probe_name": {"description": "Name of the probe", "examples": ["connectivitycheck.gstatic.com"], "type": "string"}, "probe_type": {"description": "Probe category used for the Minis application test", "examples": ["application"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the Minis application test result"}, "src_ip": {"description": "Source IP address of the test", "type": "string"}, "success": {"description": "Whether the test was successful", "type": "boolean"}, "test_type": {"$ref": "#/components/schemas/synthetictest_config_custom_probe_type", "description": "Synthetic test type used for the Minis application result"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the Minis application test result was reported, in epoch seconds"}, "vlan": {"description": "Network VLAN ID used for the application test", "examples": [12], "type": "integer"}}, "type": "object"}, "webhook_minis_application_events": {"description": "Marvis Minis application test events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_minis_application_event"}, "type": "array"}, "webhook_minis_application_topic": {"description": "Webhook topic name for Minis application test deliveries. enum: `minis-application`", "enum": ["minis-application"], "type": "string"}, "webhook_minis_reachability": {"additionalProperties": false, "description": "Sample of the `minis-reachability` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_minis_reachability_events", "description": "Minis reachability test events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_minis_reachability_topic", "description": "Webhook topic name for Minis reachability test deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_minis_reachability_event": {"additionalProperties": false, "description": "Marvis Minis reachability synthetic test result", "properties": {"avg_latency": {"description": "Average latency in milliseconds", "format": "double", "type": "number"}, "device_mac": {"description": "MAC address of the device performing the test", "examples": ["7cb68d8f0440"], "type": "string"}, "loss_percentage": {"description": "Percentage of packets lost during the reachability test", "format": "double", "type": "number"}, "max_latency": {"description": "Maximum latency in milliseconds", "format": "double", "type": "number"}, "min_latency": {"description": "Minimum latency in milliseconds", "format": "double", "type": "number"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the Minis reachability test result"}, "probe_name": {"description": "Name of the probe", "examples": ["google ping"], "type": "string"}, "probe_target": {"description": "Target host or IP for the probe", "examples": ["google.com"], "type": "string"}, "probe_type": {"description": "Probe category used for the Minis reachability test", "examples": ["reachability"], "type": "string"}, "protocol": {"description": "Network protocol used for the reachability test", "examples": ["icmp"], "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the Minis reachability test result"}, "test_type": {"description": "Type of test performed", "examples": ["ping"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the Minis reachability test result was reported, in epoch seconds"}, "vlan": {"description": "Network VLAN ID used for the reachability test", "examples": [12], "type": "integer"}}, "type": "object"}, "webhook_minis_reachability_events": {"description": "Marvis Minis reachability test events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_minis_reachability_event"}, "type": "array"}, "webhook_minis_reachability_topic": {"description": "Webhook topic name for Minis reachability test deliveries. enum: `minis-reachability`", "enum": ["minis-reachability"], "type": "string"}, "webhook_mxedge_event_topic": {"description": "Webhook topic name for Mist Edge event deliveries. enum: `mxedge-events`", "enum": ["mxedge-events"], "type": "string"}, "webhook_mxedge_events": {"additionalProperties": false, "description": "Sample of the `mxedge-events` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/mxedge_events", "description": "Mist Edge events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_mxedge_event_topic", "description": "Webhook topic name for Mist Edge event deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_nac_accounting": {"additionalProperties": false, "description": "Sample of the `nac-accounting` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_nac_accounting_events", "description": "NAC accounting events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_nac_accounting_topic", "description": "Webhook topic name for NAC accounting deliveries"}}, "type": "object"}, "webhook_nac_accounting_event": {"additionalProperties": false, "description": "NAC accounting event for a client session with traffic counters", "properties": {"ap": {"description": "MAC address of the AP the client roamed or disconnected from", "examples": ["5c5b355005be"], "type": "string"}, "auth_type": {"$ref": "#/components/schemas/nac_auth_type", "description": "Authentication method used for the NAC accounting session"}, "bssid": {"description": "Wireless BSSID used for the NAC accounting session", "examples": ["5c5b35546bb4"], "type": "string"}, "client_ip": {"description": "Client IP address observed for the NAC accounting session", "examples": ["172.16.87.4"], "type": "string"}, "client_type": {"description": "Client type E.g. \"wired\", \"wireless\", \"vty\"", "examples": ["wireless"], "type": "string"}, "mac": {"description": "Client MAC address for the NAC accounting session", "examples": ["6e795836d5f9"], "type": "string"}, "nas_vendor": {"description": "NAS Device vendor name E.g. \"Juniper\", \"Cisco\"", "examples": ["juniper-mist"], "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the NAC accounting event"}, "rx_pkts": {"$ref": "#/components/schemas/rx_pkts", "description": "Number of packets received during the NAC accounting session"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the NAC accounting event"}, "ssid": {"description": "Wireless SSID used for the NAC accounting session", "examples": ["Test-CMR SSID"], "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the NAC accounting event was reported, in epoch seconds"}, "tx_pkts": {"$ref": "#/components/schemas/tx_pkts", "description": "Number of packets sent during the NAC accounting session"}, "type": {"description": "NAC accounting event type, such as `ACCOUNTING_START`, `ACCOUNTING_UPDATE`, or `ACCOUNTING_STOP`", "examples": ["NAC_ACCOUNTING_STOP"], "type": "string"}, "username": {"description": "Client-presented username for NAC authentication", "examples": ["hi"], "type": "string"}}, "type": "object"}, "webhook_nac_accounting_events": {"description": "NAC accounting events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_nac_accounting_event"}, "type": "array"}, "webhook_nac_accounting_topic": {"description": "Webhook topic name for NAC accounting deliveries. enum: `nac-accounting`", "enum": ["nac-accounting"], "type": "string"}, "webhook_nac_events": {"additionalProperties": false, "description": "Sample of the `nac-events` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/nac_client_events", "description": "NAC authentication events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_nac_events_topic", "description": "Webhook topic name for NAC event deliveries"}}, "type": "object"}, "webhook_nac_events_topic": {"description": "Webhook topic name for NAC event deliveries. enum: `nac-events`", "enum": ["nac-events"], "type": "string"}, "webhook_oauth2_grant_type": {"description": "required when `type`==`oauth2`. enum: `client_credentials`, `password`", "enum": ["client_credentials", "password"], "type": "string"}, "webhook_oauth2_scopes": {"description": "Required when `type`==`oauth2`, if provided, will be used in the token request", "items": {"type": "string"}, "type": "array"}, "webhook_occupancy_alert_type": {"description": "Occupancy compliance state reported for the zone. enum: `COMPLIANCE-OK`, `COMPLIANCE-VIOLATION`", "enum": ["COMPLIANCE-OK", "COMPLIANCE-VIOLATION"], "type": "string"}, "webhook_occupancy_alerts": {"additionalProperties": false, "description": "Sample of the `occupancy-alerts` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_occupancy_alerts_events", "description": "Occupancy alert batches included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_occupancy_alerts_topic", "description": "Webhook topic name for occupancy alert deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_occupancy_alerts_event": {"additionalProperties": false, "description": "Site-level occupancy alert batch containing one or more zone alerts", "properties": {"alert_events": {"$ref": "#/components/schemas/webhook_occupancy_alerts_event_alert_events", "description": "Occupancy zone alerts detected for this site around the same time"}, "for_site": {"description": "Whether this occupancy alert batch is scoped to a site rather than only to the organization", "readOnly": true, "type": "boolean"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the occupancy alert batch"}, "site_name": {"description": "Site name associated with the occupancy alert batch", "readOnly": true, "type": "string"}}, "required": ["site_id", "site_name"], "type": "object"}, "webhook_occupancy_alerts_event_alert_events": {"description": "List of occupancy alerts for non-compliance zones within the site detected around the same time", "items": {"$ref": "#/components/schemas/webhook_occupancy_alerts_event_alert_events_items"}, "minItems": 1, "readOnly": true, "type": "array", "uniqueItems": true}, "webhook_occupancy_alerts_event_alert_events_items": {"additionalProperties": false, "description": "Occupancy compliance alert for a single zone", "properties": {"current_occupancy": {"description": "Current number of occupants detected in the zone", "type": "integer"}, "map_id": {"description": "Map associated with the occupancy zone", "format": "uuid", "type": "string"}, "occupancy_limit": {"description": "Configured occupancy limit for the zone", "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the occupancy alert"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the occupancy alert was generated, in epoch seconds"}, "type": {"$ref": "#/components/schemas/webhook_occupancy_alert_type", "description": "Occupancy compliance state reported for the zone"}, "zone_id": {"description": "Zone identifier associated with the occupancy alert", "format": "uuid", "type": "string"}, "zone_name": {"description": "Zone name associated with the occupancy alert", "type": "string"}}, "required": ["current_occupancy", "map_id", "occupancy_limit", "org_id", "timestamp", "type", "zone_id", "zone_name"], "type": "object"}, "webhook_occupancy_alerts_events": {"description": "Occupancy alert batches included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_occupancy_alerts_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_occupancy_alerts_topic": {"description": "Webhook topic name for occupancy alert deliveries. enum: `occupancy-alerts`", "enum": ["occupancy-alerts"], "type": "string"}, "webhook_ping": {"additionalProperties": false, "description": "Sample of the `ping` webhook payload.\\n\\nThe `ping` webhook can be manually sent with the following API calls:\\n- for a Site level webhook with the [Ping Site Webhook](/#operations/pingOrgWebhook) endpoint\\n- for an Org level webhook with the [Ping Org Webhook](/#operations/pingOrgWebhook) endpoint", "properties": {"events": {"$ref": "#/components/schemas/webhook_ping_events", "description": "Ping events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_ping_topic", "description": "Webhook topic name for ping deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_ping_event": {"additionalProperties": false, "description": "Ping webhook event generated to verify webhook delivery", "properties": {"id": {"$ref": "#/components/schemas/id", "description": "Unique identifier of the webhook ping event"}, "name": {"description": "Display name associated with the webhook ping event", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the webhook ping event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the webhook ping event was generated, in epoch seconds"}}, "required": ["id", "name", "site_id", "timestamp"], "type": "object"}, "webhook_ping_events": {"description": "Ping events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_ping_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_ping_topic": {"description": "Webhook topic name for ping deliveries. enum: `ping`", "enum": ["ping"], "type": "string"}, "webhook_rssizone": {"additionalProperties": false, "description": "Sample of the `rssizone` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_rssizone_events", "description": "RSSI zone events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_rssizone_topic", "description": "Webhook topic name for RSSI zone event deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_rssizone_event": {"additionalProperties": false, "description": "RSSI zone transition event for a Wi-Fi, SDK, or asset client", "properties": {"mac": {"description": "Client MAC address associated with the RSSI zone event", "type": "string"}, "map_id": {"description": "Map associated with the RSSI zone event", "format": "uuid", "type": "string"}, "rssizone_id": {"description": "RSSI zone identifier associated with the event", "format": "uuid", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the RSSI zone event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the RSSI zone transition was reported, in epoch seconds"}, "trigger": {"$ref": "#/components/schemas/webhook_zone_event_trigger", "description": "Whether the client entered or exited the RSSI zone"}, "type": {"$ref": "#/components/schemas/webhook_zone_event_type", "description": "Client type reported for the RSSI zone event"}}, "required": ["mac", "map_id", "rssizone_id", "site_id", "timestamp", "trigger", "type"], "type": "object"}, "webhook_rssizone_events": {"description": "RSSI zone transition events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_rssizone_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_rssizone_topic": {"description": "Webhook topic name for RSSI zone event deliveries. enum: `rssizone`", "enum": ["rssizone"], "type": "string"}, "webhook_sdkclient_scan_data": {"additionalProperties": false, "description": "Sample of the `sdkclient-scan-data` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data_events", "description": "SDK client scan data events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data_topic", "description": "Webhook topic name for SDK client scan data deliveries"}}, "required": ["topic", "events"], "type": "object"}, "webhook_sdkclient_scan_data_event": {"additionalProperties": false, "description": "SDK client connection state and background Wi-Fi scan observations", "properties": {"connection_ap": {"description": "MAC address of the AP the client is connected to", "type": "string"}, "connection_band": {"description": "5GHz or 2.4GHz band, of the BSSID the client is connected to", "type": "string"}, "connection_bssid": {"description": "Connected AP BSSID for the SDK client", "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": {"$ref": "#/components/schemas/last_seen", "description": "Time when the SDK client scan data was last observed, in epoch seconds"}, "mac": {"description": "SDK client MAC address", "type": "string"}, "scan_data": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data_event_scan_data", "description": "Background Wi-Fi scan observations reported by the SDK client"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the SDK client scan data event"}}, "required": ["connection_ap", "connection_band", "connection_channel", "connection_bssid", "mac", "connection_rssi", "site_id"], "type": "object"}, "webhook_sdkclient_scan_data_event_scan_data": {"description": "Background Wi-Fi scan observations reported by an SDK client", "items": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data_event_scan_data_item"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_sdkclient_scan_data_event_scan_data_item": {"additionalProperties": false, "description": "Single BSSID observation from an SDK client's background Wi-Fi scan", "properties": {"ap": {"description": "MAC address of the AP associated with the BSSID scanned", "type": "string"}, "band": {"$ref": "#/components/schemas/scan_data_item_band", "description": "Radio band on which the SDK client scanned the BSSID"}, "bssid": {"description": "Scanned BSSID found during the SDK client's background Wi-Fi scan", "type": "string"}, "channel": {"description": "Radio channel found in the SDK client's background scan", "type": "integer"}, "rssi": {"description": "Signal strength measured by the SDK client for the scanned BSSID", "type": "number"}, "ssid": {"description": "Network SSID containing the BSSID scanned by the SDK client", "type": "string"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the SDK client scan observation was recorded, in epoch seconds"}}, "required": ["ap", "bssid", "band", "channel", "rssi", "ssid", "timestamp"], "type": "object"}, "webhook_sdkclient_scan_data_events": {"description": "SDK client scan data events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_sdkclient_scan_data_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_sdkclient_scan_data_topic": {"description": "Webhook topic name for SDK client scan data deliveries. enum: `sdkclient-scan-data`", "enum": ["sdkclient-scan-data"], "type": "string"}, "webhook_site_sle": {"additionalProperties": false, "description": "Sample of the `site-sle` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_site_sle_events", "description": "Site SLE score events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_site_sle_topic", "description": "Webhook topic name for site SLE score deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_site_sle_event": {"additionalProperties": false, "description": "Site-level Wi-Fi SLE score snapshot", "properties": {"org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the site SLE score event"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the SLE score event"}, "sle": {"$ref": "#/components/schemas/webhook_site_sle_event_sle", "description": "Service-level experience scores reported for the site"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the site SLE scores were reported, in epoch seconds"}}, "type": "object"}, "webhook_site_sle_event_sle": {"additionalProperties": false, "description": "Wi-Fi SLE scores reported by a site SLE webhook event", "properties": {"ap-availability": {"description": "Wireless AP availability SLE score for the site", "examples": [0.6], "type": "number"}, "successful-connect": {"description": "Connection success SLE score for the site", "examples": [0.7], "type": "number"}, "time-to-connect": {"description": "Client connection-time SLE score for the site", "examples": [0.9], "type": "number"}}, "type": "object"}, "webhook_site_sle_events": {"description": "Site SLE score events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_site_sle_event"}, "type": "array"}, "webhook_site_sle_topic": {"description": "Webhook topic name for site SLE score deliveries. enum: `site-sle`", "enum": ["site-sle"], "type": "string"}, "webhook_topics": {"description": "List of supported webhook topics available with the API Call [List Webhook Topics](/#operations/listWebhookTopics)", "items": {"type": "string"}, "type": "array"}, "webhook_type": {"default": "http-post", "description": "enum: `aws-sns`, `google-pubsub`, `http-post`, `oauth2`, `splunk`", "enum": ["aws-sns", "google-pubsub", "http-post", "oauth2", "splunk"], "type": "string"}, "webhook_wifi_conn_raw": {"additionalProperties": false, "description": "Sample of the `wifi-conn-raw` webhook payload.\n\n\nThis webhook topic provides raw data from packets emitted by connected devices.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier).", "properties": {"events": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_events", "description": "Connected Wi-Fi raw packet events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_topic", "description": "Webhook topic name for connected Wi-Fi raw packet deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_wifi_conn_raw_event": {"additionalProperties": false, "description": "Raw packet observation for a connected Wi-Fi client", "properties": {"ap_id": {"description": "AP MAC address that reported the connected client packet", "type": "string"}, "ap_loc": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event_ap_loc", "description": "Location coordinates of the reporting AP when available, updated about once per minute per client"}, "client_id": {"description": "Client MAC address that emitted the connected Wi-Fi packet", "type": "string"}, "connected_site": {"description": "Whether the client is connected to the reporting site", "type": "boolean"}, "extended_info_list": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event_extended_info_list", "description": "Extended telemetry packets decoded from the connected Wi-Fi client payload"}, "map_id": {"$ref": "#/components/schemas/id", "description": "Map associated with the reporting AP when location context is available"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the connected Wi-Fi raw event"}, "packets": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event_packets", "description": "RSSI packet observations reported for the connected Wi-Fi client"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the connected Wi-Fi raw event"}}, "type": "object"}, "webhook_wifi_conn_raw_event_ap_loc": {"description": "optional, coordinates (if any) of reporting AP (updated once in 60s per client)", "items": {"type": "number"}, "type": "array"}, "webhook_wifi_conn_raw_event_extended_info": {"additionalProperties": false, "description": "Extended telemetry details decoded from a connected Wi-Fi packet", "properties": {"frame_ctrl": {"description": "IEEE 802.11 frame control value from the telemetry packet", "type": "integer"}, "payload": {"description": "Raw telemetry payload carried by the connected Wi-Fi packet", "type": "string"}, "sequence_ctrl": {"description": "IEEE 802.11 sequence control value from the telemetry packet", "type": "integer"}}, "type": "object"}, "webhook_wifi_conn_raw_event_extended_info_list": {"description": "optional, list of specific telemetry packets emited by certain wifi tags (Eg. Centrak)", "items": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event_extended_info"}, "type": "array"}, "webhook_wifi_conn_raw_event_packet": {"additionalProperties": false, "description": "RSSI observation for a connected Wi-Fi client packet", "properties": {"band": {"description": "Radio band on which the connected Wi-Fi packet was observed", "type": "string"}, "rssi": {"description": "Received signal strength of the connected Wi-Fi packet at the reporting AP, in dBm", "type": "integer"}}, "type": "object"}, "webhook_wifi_conn_raw_event_packets": {"description": "RSSI packet observations for a connected Wi-Fi raw event", "items": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event_packet"}, "type": "array"}, "webhook_wifi_conn_raw_events": {"description": "Connected Wi-Fi raw packet events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_wifi_conn_raw_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_wifi_conn_raw_topic": {"description": "Webhook topic name for connected Wi-Fi raw packet deliveries. enum: `wifi-conn-raw`", "enum": ["wifi-conn-raw"], "type": "string"}, "webhook_wifi_unconn_raw": {"additionalProperties": false, "description": "Sample of the `wifi-unconn-raw` webhook payload.\n\n\nThis webhook topic provides raw data from packets emitted by unconnected devices.\n\n\nRaw data webhooks are a special subset of webhooks that provide insight into raw data packets emitted by a client,\nidentified by their advertising MAC address (assets, discovered ble, connected wifi, unconnected wifi). \nThe data that client raw data webhooks encompasses are reporting AP information, RSSI Data, and any special packets/telemetry\npackets that the client may emit.\n\nNote that client raw webhooks are the raw data coming from the client and do not contain the X,Y location data of the client.\nIn order to get the location data for a client please see our location webhooks. \nClients can be identified uniquely across these client raw data topics and location webhook topic using MAC address as the Unique identifier (client identifier).", "properties": {"events": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_events", "description": "Unconnected Wi-Fi raw packet events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_topic", "description": "Webhook topic name for unconnected Wi-Fi raw packet deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_wifi_unconn_raw_event": {"additionalProperties": false, "description": "Raw packet observation for an unconnected Wi-Fi client", "properties": {"ap_id": {"description": "AP MAC address that reported the unconnected client packet", "type": "string"}, "ap_loc": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_event_ap_loc", "description": "Location coordinates of the reporting AP when available, updated about once per minute per client"}, "client_id": {"description": "Client MAC address that emitted the unconnected Wi-Fi packet", "type": "string"}, "connected_site": {"description": "Whether the observed client is connected to the reporting site", "type": "boolean"}, "map_id": {"$ref": "#/components/schemas/id", "description": "Map associated with the reporting AP when location context is available"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the unconnected Wi-Fi raw event"}, "packets": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_event_packets", "description": "RSSI packet observations reported for the unconnected Wi-Fi client"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the unconnected Wi-Fi raw event"}}, "type": "object"}, "webhook_wifi_unconn_raw_event_ap_loc": {"description": "optional, coordinates (if any) of reporting AP (updated once in 60s per client)", "items": {"type": "number"}, "type": "array"}, "webhook_wifi_unconn_raw_event_packet": {"additionalProperties": false, "description": "RSSI observation for an unconnected Wi-Fi client packet", "properties": {"band": {"description": "Radio band on which the unconnected Wi-Fi packet was observed", "type": "string"}, "rssi": {"description": "Received signal strength of the unconnected Wi-Fi packet at the reporting AP, in dBm", "type": "integer"}}, "type": "object"}, "webhook_wifi_unconn_raw_event_packets": {"description": "RSSI packet observations for an unconnected Wi-Fi raw event", "items": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_event_packet"}, "type": "array"}, "webhook_wifi_unconn_raw_events": {"description": "Unconnected Wi-Fi raw packet events included in a webhook delivery", "items": {"$ref": "#/components/schemas/webhook_wifi_unconn_raw_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_wifi_unconn_raw_topic": {"description": "Webhook topic name for unconnected Wi-Fi raw packet deliveries. enum: `wifi-unconn-raw`", "enum": ["wifi-unconn-raw"], "type": "string"}, "webhook_zone": {"additionalProperties": false, "description": "Sample of the `zone` webhook payload.", "properties": {"events": {"$ref": "#/components/schemas/webhook_zone_events", "description": "Zone transition events included in this webhook delivery"}, "topic": {"$ref": "#/components/schemas/webhook_zone_topic", "description": "Webhook topic name for zone transition deliveries"}}, "required": ["events", "topic"], "type": "object"}, "webhook_zone_event": {"additionalProperties": false, "description": "Zone enter or exit event for a Wi-Fi client, SDK client, or asset", "properties": {"asset_id": {"description": "Only if `type`==`asset`. UUID of named asset", "format": "uuid", "type": "string"}, "id": {"description": "Only if `type`==`sdk`. UUID of the SDK Client", "format": "uuid", "type": "string"}, "mac": {"description": "Client or asset MAC address associated with the zone event", "type": "string"}, "map_id": {"description": "Map associated with the zone event", "format": "uuid", "type": "string"}, "name": {"description": "Display name of the client or asset, when available", "type": "string"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the zone event"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the zone transition was reported, in epoch seconds"}, "trigger": {"$ref": "#/components/schemas/webhook_zone_event_trigger", "description": "Whether the client or asset entered or exited the zone"}, "type": {"$ref": "#/components/schemas/webhook_zone_event_type", "description": "Client or asset type reported for the zone event"}, "zone_id": {"description": "Zone identifier associated with the event", "format": "uuid", "type": "string"}}, "required": ["map_id", "site_id", "timestamp", "trigger", "type", "zone_id"], "type": "object"}, "webhook_zone_event_trigger": {"description": "Zone transition direction, either enter or exit. enum: `enter`, `exit`", "enum": ["enter", "exit"], "type": "string"}, "webhook_zone_event_type": {"description": "Type of client. enum: `asset` (BLE Tag), `sdk`, `wifi`", "enum": ["asset", "sdk", "wifi"], "type": "string"}, "webhook_zone_events": {"description": "Zone transition events included in this webhook delivery", "items": {"$ref": "#/components/schemas/webhook_zone_event"}, "minItems": 1, "type": "array", "uniqueItems": true}, "webhook_zone_topic": {"description": "Webhook topic name for zone transition deliveries. enum: `zone`", "enum": ["zone"], "type": "string"}, "webhooks": {"description": "Webhook configuration records returned by a list response", "items": {"$ref": "#/components/schemas/webhook"}, "type": "array"}, "websocket_session": {"additionalProperties": false, "description": "Response containing the WebSocket session handle for asynchronous command output", "properties": {"session": {"description": "Identifier used to correlate output on the WebSocket stream", "examples": ["19e73828-937f-05e6-f709-e29efdb0a82b"], "type": "string"}}, "required": ["session"], "type": "object"}, "websocket_session_with_url": {"additionalProperties": false, "description": "Response containing a WebSocket session handle and connection URL", "properties": {"session": {"description": "Identifier used to correlate output on the WebSocket stream", "examples": ["19e73828-937f-05e6-f709-e29efdb0a82b"], "type": "string"}, "url": {"description": "WebSocket URL returned for connecting to this session", "examples": ["wss://api-ws.mist.com/ssh?jwt=xxxx"], "type": "string"}}, "required": ["session", "url"], "type": "object"}, "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": {"$ref": "#/components/schemas/wifi_beacon_extended_info_items"}, "type": "array"}, "wifi_beacon_extended_info_items": {"additionalProperties": false, "description": "Extended Wi-Fi beacon packet metadata with frame and sequence control fields", "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"}, "wired_client_dhcp_client_options": {"description": "DHCP options observed for a wired client", "items": {"$ref": "#/components/schemas/dhcp_client_option"}, "type": "array"}, "wired_client_response": {"additionalProperties": false, "description": "Wired client record returned by a wired client search", "properties": {"auth_method": {"description": "Method used to authenticate the wired client", "examples": ["mac_auth"], "type": "string"}, "auth_state": {"description": "State reported for wired client authentication", "examples": ["authenticated"], "type": "string"}, "device_mac": {"$ref": "#/components/schemas/wired_client_response_device_mac", "description": "MAC addresses of switches or gateways where the wired client was observed"}, "device_mac_port": {"$ref": "#/components/schemas/wired_client_response_device_mac_port", "description": "Per-port switch or gateway observations for the wired client"}, "dhcp_client_identifier": {"description": "Identifier value reported by the wired client in DHCP", "examples": ["MAC address 00155df6d500"], "type": "string"}, "dhcp_client_options": {"$ref": "#/components/schemas/wired_client_dhcp_client_options", "description": "DHCP options observed from the wired client"}, "dhcp_fqdn": {"description": "Fully qualified domain name reported by the wired client through DHCP", "examples": ["ITS-VMMT0-D1N02.mgthub.local"], "type": "string"}, "dhcp_hostname": {"description": "Hostname reported by the wired client through DHCP", "examples": ["ITS-VMMT0-D1N02"], "type": "string"}, "dhcp_request_params": {"description": "Parameter request list advertised by the wired client in DHCP", "examples": ["1 3 6 15 31 33 43 44 46 47 119 121 249 252"], "type": "string"}, "dhcp_vendor_class_identifier": {"description": "Vendor class identifier reported by the wired client in DHCP", "examples": ["MSFT 5.0"], "type": "string"}, "ip": {"$ref": "#/components/schemas/wired_client_response_ip", "description": "Client IP addresses observed for the wired client"}, "mac": {"description": "Client MAC address for the wired client record", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization associated with the wired client record"}, "port_id": {"$ref": "#/components/schemas/wired_client_response_port_id", "description": "Switch or gateway port identifiers where the wired client was observed"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with the wired client record"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the wired client record was observed, in epoch seconds"}, "vlan": {"$ref": "#/components/schemas/wired_client_response_vlan", "description": "Client VLAN identifiers observed for the wired client"}}, "type": "object"}, "wired_client_response_device_mac": {"description": "Switch or gateway MAC addresses where the wired client was observed", "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "wired_client_response_device_mac_port": {"description": "Per-port switch or gateway observations for a wired client", "items": {"$ref": "#/components/schemas/wired_client_response_device_mac_port_item"}, "readOnly": true, "type": "array", "uniqueItems": true}, "wired_client_response_device_mac_port_item": {"additionalProperties": false, "description": "Switch or gateway port observation for a wired client", "properties": {"device_mac": {"description": "Switch or gateway MAC address for this wired client observation", "minLength": 1, "type": "string"}, "ip": {"description": "Client IP address observed for this port entry", "readOnly": true, "type": "string"}, "port_id": {"description": "Interface identifier where the wired client was observed", "readOnly": true, "type": "string"}, "port_parent": {"description": "Parent interface or port group associated with this port entry", "type": "string"}, "start": {"description": "Time when this wired client observation began", "readOnly": true, "type": "string"}, "vlan": {"description": "Client VLAN identifier observed for this port entry", "readOnly": true, "type": "integer"}, "when": {"description": "Time when this wired client port entry was recorded", "readOnly": true, "type": "string"}}, "readOnly": true, "type": "object"}, "wired_client_response_ip": {"description": "Client IP addresses observed for a wired client", "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "wired_client_response_port_id": {"description": "Switch or gateway port identifiers where a wired client was observed", "items": {"readOnly": true, "type": "string"}, "readOnly": true, "type": "array"}, "wired_client_response_vlan": {"description": "Client VLAN IDs observed for a wired client", "items": {"readOnly": true, "type": "integer"}, "readOnly": true, "type": "array"}, "wired_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"}, "wireless_client_session": {"additionalProperties": false, "description": "Wireless client session record returned by a session search", "properties": {"ap": {"description": "MAC address of the access point associated with the client session", "readOnly": true, "type": "string"}, "band": {"description": "Radio band used by the client session", "readOnly": true, "type": "string"}, "client_manufacture": {"description": "Manufacturer reported for the client device, when available", "readOnly": true, "type": ["string", "null"]}, "connect": {"description": "Time when the client session connected, in epoch seconds", "readOnly": true, "type": "integer"}, "disconnect": {"description": "Time when the client session disconnected, in epoch seconds", "readOnly": true, "type": "integer"}, "duration": {"description": "Length of the client session, in seconds", "readOnly": true, "type": "number"}, "for_site": {"description": "Whether this client session record is scoped to a site", "readOnly": true, "type": "boolean"}, "mac": {"description": "Client MAC address for the session", "readOnly": true, "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Organization associated with the client session"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Site associated with the client session"}, "ssid": {"description": "WLAN SSID used by the client session", "readOnly": true, "type": "string"}, "tags": {"$ref": "#/components/schemas/wireless_client_session_tags", "description": "Event or classification tags attached to the client session"}, "timestamp": {"$ref": "#/components/schemas/timestamp", "description": "Time when the client session record was observed, in epoch seconds"}, "wlan_id": {"description": "Identifier of the WLAN associated with the client session", "format": "uuid", "readOnly": true, "type": "string"}}, "required": ["ap", "band", "connect", "disconnect", "duration", "mac", "org_id", "site_id", "ssid", "timestamp", "wlan_id"], "type": "object"}, "wireless_client_session_tags": {"description": "Tags attached to a wireless client session", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "wlan": {"description": "**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", "examples": [0], "maximum": 65535, "minimum": 0, "type": "integer"}, "acct_servers": {"$ref": "#/components/schemas/wlan_acct_servers", "description": "RADIUS accounting servers used by this WLAN"}, "airwatch": {"$ref": "#/components/schemas/wlan_airwatch", "description": "Integration settings for AirWatch device compliance on this WLAN"}, "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`==`true`, which allows SSDP", "type": "boolean"}, "ap_ids": {"$ref": "#/components/schemas/wlan_ap_ids", "description": "Access point identifiers used when `apply_to`==`aps`"}, "app_limit": {"$ref": "#/components/schemas/wlan_app_limit", "description": "Bandwidth limits for applications on this WLAN"}, "app_qos": {"$ref": "#/components/schemas/wlan_app_qos", "description": "QoS rules for application traffic on this WLAN"}, "apply_to": {"$ref": "#/components/schemas/wlan_apply_to", "description": "Scope that determines where this WLAN is applied"}, "arp_filter": {"default": false, "description": "Whether to enable smart arp filter", "type": "boolean"}, "auth": {"$ref": "#/components/schemas/wlan_auth", "description": "Settings that control client authentication for this WLAN"}, "auth_server_selection": {"$ref": "#/components/schemas/wlan_auth_server_selection", "description": "RADIUS authentication server selection behavior for this WLAN"}, "auth_servers": {"$ref": "#/components/schemas/wlan_auth_servers", "description": "RADIUS authentication servers used by this WLAN. Required when `auth.type`==`eap`"}, "auth_servers_nas_id": {"description": "Optional, up to 48 bytes, will be dynamically generated if not provided. used only for authentication servers", "examples": ["5c5b350e0101-nas"], "type": ["string", "null"]}, "auth_servers_nas_ip": {"description": "Optional, NAS-IP-ADDRESS to use", "examples": ["15.3.1.5"], "type": ["string", "null"]}, "auth_servers_retries": {"default": 2, "description": "RADIUS auth session retries. Following fast timers are set if \"fast_dot1x_timers\" 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.", "examples": [5], "type": "integer"}, "auth_servers_timeout": {"default": 5, "description": "RADIUS auth session timeout. Following fast timers are set if \"fast_dot1x_timers\" 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 compatibility. 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": {"$ref": "#/components/schemas/wlan_bands", "description": "Radio bands on which this WLAN is broadcast"}, "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", "description": "Service discovery gateway settings for Bonjour traffic on this WLAN"}, "cisco_cwa": {"$ref": "#/components/schemas/wlan_cisco_cwa", "description": "Central web authentication settings for Cisco CWA on this WLAN"}, "client_limit_down": {"$ref": "#/components/schemas/wlan_limit", "description": "Downlink bandwidth limit applied per client"}, "client_limit_down_enabled": {"default": false, "description": "If downlink limiting per-client is enabled", "type": "boolean"}, "client_limit_up": {"$ref": "#/components/schemas/wlan_limit", "description": "Uplink bandwidth limit applied per client"}, "client_limit_up_enabled": {"default": false, "description": "If uplink limiting per-client is enabled", "type": "boolean"}, "coa_servers": {"$ref": "#/components/schemas/coa_servers", "description": "RADIUS Change of Authorization servers available to this WLAN"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this WLAN was created, in epoch seconds"}, "disable_11ax": {"default": false, "description": "Some old WLAN drivers may not be compatible", "type": "boolean"}, "disable_11be": {"default": false, "description": "To disable Wi-Fi 7 EHT IEs", "type": "boolean"}, "disable_ht_vht_rates": {"default": false, "description": "To disable ht or vht rates", "type": "boolean"}, "disable_message_authenticator_check": {"default": false, "description": "whether to disable Message-Authenticator Check, which is used to verify the integrity of RADIUS messages, default is false (i.e. for better security)", "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_when_gateway_unreachable": {"default": false, "description": "When any of the following is true, this WLAN will be disabled\n * cannot get IP\n * cannot obtain default gateway\n * cannot reach default gateway", "type": "boolean"}, "disable_when_mxtunnel_down": {"default": false, "description": "Whether to disable this WLAN when the configured Mist tunnel is down", "type": "boolean"}, "disable_wmm": {"default": false, "description": "Whether to disable WMM", "type": "boolean"}, "dns_server_rewrite": {"$ref": "#/components/schemas/wlan_dns_server_rewrite", "description": "RADIUS group based DNS server rewrite settings for this WLAN"}, "dtim": {"default": 2, "description": "Delivery Traffic Indication Message interval for this WLAN", "type": "integer"}, "dynamic_psk": {"$ref": "#/components/schemas/wlan_dynamic_psk", "description": "Per-user PSK selection settings for this WLAN"}, "dynamic_vlan": {"$ref": "#/components/schemas/wlan_dynamic_vlan", "description": "VLAN assignment settings for 802.1X dynamic VLANs"}, "enable_ftm": {"default": false, "description": "Enable FTM (Fine-Time Measurement, 802.11mc); configures the AP as an FTM Responder (target), allowing clients to perform ranging requests against it", "type": "boolean"}, "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 forwarded), 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": {"description": "Whether this WLAN record is scoped to a 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", "description": "Passpoint and Hotspot 2.0 settings for this WLAN"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this WLAN"}, "inject_dhcp_option_82": {"$ref": "#/components/schemas/wlan_inject_dhcp_option_82", "description": "DHCP Option 82 insertion settings for this WLAN"}, "interface": {"$ref": "#/components/schemas/wlan_interface", "description": "Network interface or tunnel where this WLAN bridges client traffic"}, "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": {"default": false, "description": "Limit probe response base on some heuristic rules", "type": "boolean"}, "max_idletime": {"default": 1800, "description": "Max idle time in seconds", "examples": [1800], "maximum": 86400, "minimum": 60, "type": "integer"}, "max_num_clients": {"default": 0, "description": "Maximum number of client connected to the SSID. `0` means unlimited", "maximum": 128, "minimum": 0, "type": "integer"}, "mist_nac": {"$ref": "#/components/schemas/wlan_mist_nac", "description": "Juniper Mist NAC settings used by this WLAN"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this WLAN was last modified, in epoch seconds"}, "msp_id": {"$ref": "#/components/schemas/msp_id", "description": "Managed service provider identifier associated with this WLAN"}, "mxtunnel_id": {"deprecated": true, "description": "(deprecated, use mxtunnel_ids instead) when `interface`==`mxtunnel`, id of the Mist Tunnel", "format": "uuid", "type": "string"}, "mxtunnel_ids": {"$ref": "#/components/schemas/wlan_mxtunnel_ids", "description": "Mist Tunnel identifiers used when `interface`==`mxtunnel`"}, "mxtunnel_name": {"$ref": "#/components/schemas/wlan_mxtunnel_name", "description": "Mist Tunnel names used when `interface`==`site_mxedge`"}, "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", "description": "Owning organization associated with this WLAN"}, "portal": {"$ref": "#/components/schemas/wlan_portal", "description": "Guest portal settings for this WLAN"}, "portal_allowed_hostnames": {"$ref": "#/components/schemas/wlan_portal_allowed_hostnames", "description": "Guest portal hostnames that clients may reach before authorization"}, "portal_allowed_subnets": {"$ref": "#/components/schemas/wlan_portal_allowed_subnets", "description": "Guest portal CIDR subnets that clients may reach before authorization"}, "portal_api_secret": {"default": "", "description": "API secret (auto-generated) that can be used to sign guest authorization requests, only generated when auth is set to `external`", "examples": ["EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY"], "type": ["string", "null"]}, "portal_denied_hostnames": {"$ref": "#/components/schemas/wlan_portal_denied_hostnames", "description": "Guest portal hostnames denied before authorization, taking precedence over allowed hostnames"}, "portal_image": {"default": "", "description": "Url of portal background image", "examples": ["https://url/to/image.png"], "format": "uri", "readOnly": true, "type": ["string", "null"]}, "portal_sso_url": {"description": "URL used in the SSO process, auto-generated when auth is set to `sso`", "readOnly": true, "type": ["string", "null"]}, "portal_template_url": {"default": "", "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.", "readOnly": true, "type": ["string", "null"]}, "qos": {"$ref": "#/components/schemas/wlan_qos", "description": "Quality-of-service settings for WLAN client traffic"}, "radsec": {"$ref": "#/components/schemas/radsec", "description": "TLS-secured RADIUS transport settings for this WLAN"}, "rateset": {"$ref": "#/components/schemas/wlan_rateset", "description": "Data rate settings by RF band for this WLAN"}, "reconnect_clients_when_roaming_mxcluster": {"default": false, "description": "When different mxcluster is on different subnet, we'd want to disconnect clients (so they'll reconnect and get new IPs)", "type": "boolean"}, "roam_mode": {"$ref": "#/components/schemas/wlan_roam_mode", "description": "Fast roaming mode configured for this WLAN"}, "schedule": {"$ref": "#/components/schemas/wlan_schedule", "description": "Operating schedule controlling when this WLAN is active"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with this WLAN, when site-scoped"}, "sle_excluded": {"default": false, "description": "Whether to exclude this WLAN from SLE metrics", "type": "boolean"}, "ssid": {"description": "Name of the SSID", "examples": ["corporate"], "type": "string"}, "template_id": {"default": "", "description": "Identifier of the WLAN template associated with this WLAN", "format": "uuid", "type": ["string", "null"]}, "thumbnail": {"default": "", "description": "Url of portal background image thumbnail", "format": "uri", "readOnly": true, "type": ["string", "null"]}, "use_eapol_v1": {"default": false, "description": "If `auth.type`==`eap` or `auth.type`==`psk`, 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": {"$ref": "#/components/schemas/wlan_vlan_id_with_variable", "description": "Default VLAN ID, range, or variable used when `vlan_enabled`==`true`"}, "vlan_ids": {"$ref": "#/components/schemas/wlan_vlan_ids", "description": "Pool of VLAN IDs used when `vlan_enabled`==`true` and `vlan_pooling`==`true`"}, "vlan_pooling": {"default": false, "description": "Requires `vlan_enabled`==`true` to be set to `true`. Vlan pooling allows AP to place client on different VLAN using a deterministic algorithm", "type": "boolean"}, "wlan_limit_down": {"$ref": "#/components/schemas/wlan_limit", "description": "Downlink bandwidth limit applied to the whole WLAN"}, "wlan_limit_down_enabled": {"default": false, "description": "If downlink limiting for whole wlan is enabled", "type": "boolean"}, "wlan_limit_up": {"$ref": "#/components/schemas/wlan_limit", "description": "Uplink bandwidth limit applied to the whole WLAN"}, "wlan_limit_up_enabled": {"default": false, "description": "If uplink limiting for whole wlan is enabled", "type": "boolean"}, "wxtag_ids": {"$ref": "#/components/schemas/wlan_wxtag_ids", "description": "Identifiers of WxLAN tags used when `apply_to`==`wxtags`"}, "wxtunnel_id": {"default": "", "description": "When `interface`=`wxtunnel`, id of the WXLAN Tunnel", "type": ["string", "null"]}, "wxtunnel_remote_id": {"default": "", "description": "When `interface`=`wxtunnel`, remote tunnel identifier", "type": ["string", "null"]}}, "required": ["ssid"], "type": "object"}, "wlan_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"}, "wlan_airwatch": {"additionalProperties": false, "description": "AirWatch integration settings for the WLAN", "properties": {"api_key": {"default": "", "description": "API key used to authenticate to the AirWatch service", "examples": ["aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg==\""], "type": "string"}, "console_url": {"default": "", "description": "Base console URL of the AirWatch deployment", "examples": ["https://hs1.airwatchportals.com"], "type": "string"}, "enabled": {"default": false, "description": "Whether AirWatch integration is enabled for the WLAN", "type": "boolean"}, "password": {"default": "", "description": "AirWatch integration account password for this WLAN", "examples": ["user1"], "format": "password", "type": "string"}, "username": {"default": "", "description": "AirWatch integration account username for this WLAN", "examples": ["test123"], "type": "string"}}, "type": "object"}, "wlan_ap_ids": {"description": "List of device ids", "items": {"format": "uuid", "type": "string"}, "type": ["array", "null"]}, "wlan_app_limit": {"additionalProperties": false, "description": "Bandwidth limiting for apps (applies to up/down)", "properties": {"apps": {"additionalProperties": {"type": "integer"}, "default": {}, "description": "Map from app key to bandwidth in kbps. \nProperty key is the app key, defined in Get Application List", "examples": [{"dropbox": 300, "netflix": 60}], "type": "object"}, "enabled": {"default": false, "description": "Whether application bandwidth limits are enabled for this WLAN", "type": "boolean"}, "wxtag_ids": {"additionalProperties": {"type": "integer"}, "default": {}, "description": "Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id`", "examples": [{"f99862d9-2726-931f-7559-3dfdf5d070d3": 30}], "type": "object"}}, "type": "object"}, "wlan_app_qos": {"additionalProperties": false, "description": "APP qos wlan settings", "properties": {"apps": {"additionalProperties": {"$ref": "#/components/schemas/wlan_app_qos_apps_properties"}, "default": {}, "description": "Map of application keys to QoS rewrite settings", "examples": [{"skype-business-video": {"dscp": 32, "dst_subnet": "10.2.0.0/16", "src_subnet": "10.2.0.0/16"}}], "type": "object"}, "enabled": {"default": false, "description": "Whether application QoS rewrite rules are enabled for this WLAN", "type": "boolean"}, "others": {"$ref": "#/components/schemas/wlan_app_qos_others", "description": "Custom traffic QoS rules that are not tied to named applications"}}, "type": "object"}, "wlan_app_qos_apps_properties": {"additionalProperties": false, "description": "QoS rewrite settings for traffic matching a named application", "properties": {"dscp": {"$ref": "#/components/schemas/dscp", "description": "Differentiated Services Code Point value applied to matching application traffic"}, "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"}, "wlan_app_qos_others": {"description": "Custom application QoS rules for traffic matched by subnet, port, and protocol", "items": {"$ref": "#/components/schemas/wlan_app_qos_others_item"}, "type": "array", "uniqueItems": true}, "wlan_app_qos_others_item": {"additionalProperties": false, "description": "Custom QoS rewrite rule for traffic not matched by a named application", "properties": {"dscp": {"$ref": "#/components/schemas/dscp", "description": "Differentiated Services Code Point value applied to matching traffic"}, "dst_subnet": {"description": "Destination subnet filter for this custom QoS rule", "examples": ["10.2.0.0/16"], "type": "string"}, "port_ranges": {"description": "TCP or UDP port ranges matched by this custom QoS rule", "examples": ["80,1024-6553"], "type": "string"}, "protocol": {"description": "IP protocol matched by this custom QoS rule", "examples": ["udp"], "type": "string"}, "src_subnet": {"description": "Source subnet filter for this custom QoS rule", "examples": ["10.2.0.0/16"], "type": "string"}}, "type": "object"}, "wlan_apply_to": {"description": "enum: `aps`, `site`, `wxtags`", "enum": ["aps", "site", "wxtags"], "type": "string"}, "wlan_auth": {"additionalProperties": false, "description": "WLAN client authentication settings", "properties": {"anticlog_threshold": {"default": 16, "description": "SAE anti-clogging token threshold", "examples": [16], "maximum": 32, "minimum": 16, "type": "integer"}, "eap_reauth": {"default": false, "description": "Whether to trigger EAP reauth when the session ends", "type": "boolean"}, "enable_beacon_protection": {"default": false, "description": "Enable Beacon Protection; default is false for better compatibility", "type": "boolean"}, "enable_gcmp256": {"default": false, "description": "Enable GCMP-256 encryption suite; default is false for better compatibility", "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`, index of the WEP key used as the default transmit key", "maximum": 4, "minimum": 1, "type": "integer"}, "keys": {"$ref": "#/components/schemas/wlan_auth_keys", "description": "When `type`==`wep`, WEP keys configured for this WLAN"}, "multi_psk_only": {"default": false, "description": "When `type`==`psk`, whether to only use multi_psk", "type": "boolean"}, "owe": {"$ref": "#/components/schemas/wlan_auth_owe", "description": "When `type`==`open`, Opportunistic Wireless Encryption mode for this WLAN"}, "pairwise": {"$ref": "#/components/schemas/wlan_auth_pairwise", "description": "When `type`==`psk` or `type`==`eap`, pairwise cipher suites allowed for this WLAN"}, "private_wlan": {"default": false, "description": "When `multi_psk_only`==`true`, whether private wlan is enabled", "type": "boolean"}, "psk": {"default": "", "description": "When `type`==`psk`, 8-64 characters, or 64 hex characters", "examples": ["foryoureyesonly"], "maxLength": 64, "minLength": 8, "type": ["string", "null"]}, "type": {"$ref": "#/components/schemas/wlan_auth_type", "description": "Authentication mode used by this WLAN"}, "wep_as_secondary_auth": {"default": false, "description": "Enable WEP as secondary auth", "type": "boolean"}}, "required": ["type"], "type": "object"}, "wlan_auth_keys": {"default": [], "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": {"type": ["string", "null"]}, "type": "array"}, "wlan_auth_owe": {"default": "disabled", "description": "if `type`==`open`. enum: `disabled`, `enabled` (means transition mode), `required`", "enum": ["disabled", "enabled", "required"], "type": "string"}, "wlan_auth_pairwise": {"default": ["wpa2-ccmp"], "description": "When `type`=`psk` or `type`=`eap`, one or more of `wpa1-ccmp`, `wpa1-tkip`, `wpa2-ccmp`, `wpa2-tkip`, `wpa3`", "items": {"$ref": "#/components/schemas/wlan_auth_pairwise_item"}, "type": "array"}, "wlan_auth_pairwise_item": {"description": "enum: `wpa1-ccmp`, `wpa1-tkip`, `wpa2-ccmp`, `wpa2-tkip`, `wpa3`", "enum": ["wpa1-ccmp", "wpa1-tkip", "wpa2-ccmp", "wpa2-tkip", "wpa3"], "examples": ["wpa3"], "type": ["string", "null"]}, "wlan_auth_server_selection": {"default": "ordered", "description": "When ordered, AP will prefer and go back to the first server if possible. enum: `ordered`, `unordered`", "enum": ["ordered", "unordered"], "examples": ["ordered"], "type": "string"}, "wlan_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"}, "wlan_auth_type": {"default": "open", "description": "enum: `eap`, `eap192`, `open`, `psk`, `psk-tkip`, `psk-wpa2-tkip`, `wep`", "enum": ["eap", "eap192", "open", "psk", "psk-tkip", "psk-wpa2-tkip", "wep"], "examples": ["psk"], "type": "string"}, "wlan_bands": {"default": ["24", "5", "6"], "description": "List of radios that the wlan should apply to. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`", "items": {"$ref": "#/components/schemas/dot11_band"}, "type": "array"}, "wlan_bonjour": {"additionalProperties": false, "description": "Bonjour gateway wlan settings", "properties": {"additional_vlan_ids": {"$ref": "#/components/schemas/additional_vlan_ids", "description": "VLAN IDs, beyond the client VLAN, where Bonjour queries and responses are forwarded"}, "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": {"$ref": "#/components/schemas/wlan_bonjour_service_properties"}, "description": "What services are allowed. \nProperty key is the service name", "examples": [{"airplay": {"radius_groups": ["teachers"], "scope": "same_ap"}}], "type": "object"}}, "type": "object"}, "wlan_bonjour_service_properties": {"additionalProperties": false, "description": "Bonjour service discovery settings for one advertised service", "properties": {"disable_local": {"default": false, "description": "Whether to prevent wireless clients to discover bonjour devices on the same WLAN", "type": "boolean"}, "radius_groups": {"$ref": "#/components/schemas/wlan_bonjour_service_properties_radius_groups", "description": "RADIUS groups allowed to discover this Bonjour service, when restricted"}, "scope": {"$ref": "#/components/schemas/wlan_bonjour_service_properties_scope", "description": "Discovery scope for this Bonjour service on the WLAN"}}, "type": "object"}, "wlan_bonjour_service_properties_radius_groups": {"description": "Optional, if the service is further restricted for certain RADIUS groups", "items": {"type": "string"}, "type": "array"}, "wlan_bonjour_service_properties_scope": {"default": "same_site", "description": "how bonjour services should be discovered for the same WLAN. enum: `same_ap`, `same_map`, `same_site`", "enum": ["same_ap", "same_map", "same_site"], "type": "string"}, "wlan_cisco_cwa": {"additionalProperties": false, "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": {"$ref": "#/components/schemas/wlan_cisco_cwa_allowed_hostnames", "description": "Hostnames allowed for Cisco CWA client access before authorization"}, "allowed_subnets": {"$ref": "#/components/schemas/wlan_cisco_cwa_allowed_subnets", "description": "CIDR subnets allowed for Cisco CWA client access before authorization"}, "blocked_subnets": {"$ref": "#/components/schemas/wlan_cisco_cwa_blocked_subnets", "description": "CIDR subnets blocked for Cisco CWA client access"}, "enabled": {"default": false, "description": "Whether Cisco CWA is enabled for this WLAN", "type": "boolean"}}, "type": "object"}, "wlan_cisco_cwa_allowed_hostnames": {"description": "List of hostnames without http(s):// (matched by substring)", "items": {"examples": ["snapchat.com"], "type": "string"}, "type": "array"}, "wlan_cisco_cwa_allowed_subnets": {"description": "CIDR subnets allowed for Cisco CWA client access before authorization", "items": {"examples": ["63.5.3.0/24"], "type": "string"}, "type": "array"}, "wlan_cisco_cwa_blocked_subnets": {"description": "List of blocked CIDRs", "items": {"examples": ["192.168.0.0/16"], "type": "string"}, "type": "array"}, "wlan_datarates": {"additionalProperties": false, "description": "Data rates wlan settings", "properties": {"eht": {"description": "If `template`==`custom`. EHT MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit)", "examples": ["3fff0fff0fff03ff"], "type": ["string", "null"]}, "he": {"description": "If `template`==`custom`. HE MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is least significant bit", "examples": ["0fff0fff0fff0fff"], "type": ["string", "null"]}, "ht": {"description": "If `template`==`custom`. 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)", "examples": ["00ff00ff00ff"], "type": ["string", "null"]}, "legacy": {"$ref": "#/components/schemas/wlan_datarates_legacy", "description": "If `template`==`custom`, legacy 802.11 data rates allowed on this WLAN"}, "min_rssi": {"default": 0, "description": "Minimum RSSI for client to connect, 0 means not enforcing", "examples": [-70], "type": "integer"}, "template": {"$ref": "#/components/schemas/wlan_datarates_template", "description": "Data rate template used to derive WLAN rate settings"}, "vht": {"description": "If `template`==`custom`. 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.", "examples": ["03ff03ff03ff01ff"], "type": ["string", "null"]}}, "type": "object"}, "wlan_datarates_legacy": {"description": "If `template`==`custom`. 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", "examples": [["6", "9", "12", "18", "24b", "36", "48", "54"]], "items": {"$ref": "#/components/schemas/wlan_datarates_legacy_item"}, "type": "array"}, "wlan_datarates_legacy_item": {"description": "enum: `1`, `11`, `11b`, `12`, `12b`, `18`, `18b`, `1b`, `2`, `24`, `24b`, `2b`, `36`, `36b`, `48`, `48b`, `5.5`, `5.5b`, `54`, `54b`, `6`, `6b`, `9`, `9b`", "enum": ["1", "11", "11b", "12", "12b", "18", "18b", "1b", "2", "24", "24b", "2b", "36", "36b", "48", "48b", "5.5", "5.5b", "54", "54b", "6", "6b", "9", "9b"], "type": "string"}, "wlan_datarates_template": {"default": "compatible", "description": "Data Rates template to apply. enum: \n * `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", "enum": ["compatible", "legacy-only", "custom", "no-legacy", "high-density"], "type": ["string", "null"]}, "wlan_dns_server_rewrite": {"additionalProperties": false, "description": "For radius_group-based DNS server (rewrite DNS request depending on the Group RADIUS server returns)", "properties": {"enabled": {"default": false, "description": "Whether DNS server rewrite by RADIUS group is enabled for this WLAN", "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", "examples": [{"contractor": "172.1.1.1", "guest": "8.8.8.8"}], "type": "object"}}, "type": ["object", "null"]}, "wlan_dynamic_psk": {"additionalProperties": false, "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)\n * PSK will come from RADIUS server\n * AP sends client MAC as username and password (i.e. `enable_mac_auth` is assumed)\n * AP sends BSSID:SSID as Caller-Station-ID\n * `auth_servers` is required\n * PSK will come from cloud WLC if source is cloud_psks\n * default_psk will be used if cloud WLC is not available\n * `multi_psk_only` and `psk` is ignored\n * `pairwise` can only be wpa2-ccmp (for now, wpa3 support on the roadmap)", "properties": {"default_psk": {"description": "Default PSK to use if cloud WLC is not available, 8-63 characters", "examples": ["foryoureyesonly"], "maxLength": 63, "minLength": 8, "type": "string"}, "default_vlan_id": {"$ref": "#/components/schemas/vlan_id_with_variable", "description": "Default VLAN ID used when dynamic PSK lookup does not return a VLAN"}, "enabled": {"default": false, "description": "Whether dynamic PSK is enabled for this WLAN", "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": {"$ref": "#/components/schemas/dynamic_psk_source", "description": "Origin used to retrieve per-user PSKs"}}, "type": ["object", "null"]}, "wlan_dynamic_vlan": {"additionalProperties": false, "description": "Dynamic VLAN assignment settings for 802.1X WLAN authentication", "properties": {"default_vlan_id": {"$ref": "#/components/schemas/wlan_dynamic_vlan_default_vlan_id_deprecated", "description": "Deprecated default VLAN ID used when no RADIUS VLAN match is returned. Please use `default_vlan_ids` instead, which can support VLAN pools."}, "default_vlan_ids": {"$ref": "#/components/schemas/wlan_dynamic_vlan_default_vlan_ids", "description": "Fallback VLAN IDs, ranges, or variables used when no RADIUS VLAN match is returned"}, "enabled": {"default": false, "description": "Requires `vlan_enabled`==`true` to be set to `true`. Whether to enable dynamic vlan", "type": "boolean"}, "local_vlan_ids": {"$ref": "#/components/schemas/wlan_dynamic_vlan_local_vlan_ids", "description": "VLAN IDs that should be locally bridged for dynamic VLAN assignment"}, "type": {"$ref": "#/components/schemas/wlan_dynamic_vlan_type", "description": "Dynamic VLAN mapping method used for RADIUS-provided VLAN attributes"}, "vlans": {"additionalProperties": {"type": "string"}, "description": "Map between vlan_id (as string) to airespace interface names (comma-separated) or null for standard 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", "examples": [{"131": "default", "322": "fast,video"}], "type": "object"}}, "type": ["object", "null"]}, "wlan_dynamic_vlan_default_vlan_id": {"description": "VLAN ID, VLAN range or variable to use when there\u2019s no match from RADIUS", "oneOf": [{"type": "string"}, {"default": 999, "maximum": 4094, "minimum": 1, "type": "integer"}]}, "wlan_dynamic_vlan_default_vlan_id_deprecated": {"deprecated": true, "description": "vlan_id to use when there\u2019s no match from RADIUS", "oneOf": [{"type": "string"}, {"default": 999, "maximum": 4094, "minimum": 1, "type": "integer"}]}, "wlan_dynamic_vlan_default_vlan_ids": {"description": "Default VLAN ID(s) can be a number, a range of VLAN IDs, a variable or multiple numbers, ranges or variables as a VLAN pool. Default VLAN as a pool of VLANS requires 0.14.x or newer firmware", "items": {"$ref": "#/components/schemas/wlan_dynamic_vlan_default_vlan_id"}, "type": "array"}, "wlan_dynamic_vlan_local_vlan_ids": {"description": "VLAN_ids to be locally bridged", "items": {"$ref": "#/components/schemas/vlan_id_with_variable"}, "type": "array"}, "wlan_dynamic_vlan_type": {"default": "standard", "description": "standard (using Tunnel-Private-Group-ID, widely supported), airespace-interface-name (Airespace/Cisco). enum: `airespace-interface-name`, `standard`", "enum": ["airespace-interface-name", "standard"], "examples": ["airespace-interface-name"], "type": "string"}, "wlan_hotspot20_domain_name": {"description": "Domain names advertised to Hotspot 2.0 clients", "examples": [["mist.com"]], "items": {"type": "string"}, "type": "array"}, "wlan_hotspot20_operators": {"description": "List of operators to support", "examples": [["google", "att"]], "items": {"$ref": "#/components/schemas/wlan_hotspot20_operators_item"}, "type": "array"}, "wlan_hotspot20_operators_item": {"description": "enum: `ameriband`, `att`, `boingo`, `charter`, `eduroam`, `global_reach`, `google`, `hughes_systique`, `openroaming_legacy`, `openroaming_settled`, `openroaming_settlement_free`, `single_digits`, `tmobile`, `verizon`", "enum": ["ameriband", "att", "boingo", "charter", "eduroam", "global_reach", "google", "hughes_systique", "openroaming_legacy", "openroaming_settled", "openroaming_settlement_free", "single_digits", "tmobile", "verizon"], "type": "string"}, "wlan_hotspot20_rcoi": {"description": "Roaming Consortium Organization Identifiers advertised for Hotspot 2.0", "examples": [["5A03BA0000"]], "items": {"type": "string"}, "type": "array"}, "wlan_hotspot_20": {"additionalProperties": false, "description": "Hotspot 2.0 WLAN settings", "properties": {"domain_name": {"$ref": "#/components/schemas/wlan_hotspot20_domain_name", "description": "Advertised domain names for Hotspot 2.0 clients"}, "enabled": {"description": "Whether to enable hotspot 2.0 config", "type": "boolean"}, "nai_realms": {"$ref": "#/components/schemas/strings", "description": "NAI realms advertised for Hotspot 2.0 authentication"}, "operators": {"$ref": "#/components/schemas/wlan_hotspot20_operators", "description": "Operator profiles supported by this Hotspot 2.0 configuration"}, "rcoi": {"$ref": "#/components/schemas/wlan_hotspot20_rcoi", "description": "Roaming Consortium Organization Identifiers advertised for Hotspot 2.0"}, "venue_name": {"description": "Venue name, default is site name", "examples": ["some_name"], "type": "string"}}, "type": "object"}, "wlan_inject_dhcp_option_82": {"additionalProperties": false, "description": "DHCP Option 82 injection settings for a WLAN", "properties": {"circuit_id": {"description": "Information to set in the `circuit_id` field of the DHCP Option 82. It is possible to use static string or the following variables (e.g. `{{SSID}}:{{AP_MAC}}`):\n * {{AP_MAC}}\n * {{AP_MAC_DASHED}}\n * {{AP_MODEL}}\n * {{AP_NAME}}\n * {{SITE_NAME}}\n * {{SSID}}", "examples": ["{{SSID}}:{{AP_MAC}}"], "type": "string"}, "enabled": {"default": false, "description": "Whether to inject option 82 when forwarding DHCP packets", "type": "boolean"}}, "type": "object"}, "wlan_interface": {"default": "all", "description": "where this WLAN will be connected to. enum: `all`, `eth0`, `eth1`, `eth2`, `eth3`, `mxtunnel`, `site_mxedge`, `wxtunnel`", "enum": ["all", "eth0", "eth1", "eth2", "eth3", "mxtunnel", "site_mxedge", "wxtunnel"], "examples": ["all"], "type": "string"}, "wlan_limit": {"anyOf": [{"maximum": 999000, "minimum": 1, "type": "integer"}, {"type": "string"}], "description": "In kbps, value from 1 to 999000"}, "wlan_mist_nac": {"additionalProperties": false, "description": "Mist NAC RADIUS settings for a WLAN", "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 Server). Very frequent messages can affect the performance of the RADIUS server, 600 and up is recommended when enabled.", "examples": [60], "maximum": 65535, "minimum": 0, "type": "integer"}, "auth_servers_retries": {"default": 2, "description": "RADIUS auth session retries. Following fast timers are set if `fast_dot1x_timers` knob is enabled. \"retries\" are set to value of `auth_servers_timeout`. \"max-requests\" is also set when setting `auth_servers_retries` is set to default value to 3.", "examples": [3], "maximum": 10, "minimum": 1, "type": "integer"}, "auth_servers_timeout": {"default": 5, "description": "RADIUS auth session timeout. Following fast timers are set if `fast_dot1x_timers` knob is enabled. \"quite-period\" and \"transmit-period\" are set to half the value of `auth_servers_timeout`. \"supplicant-timeout\" is also set when setting `auth_servers_timeout` is set to default value of 10.", "examples": [5], "maximum": 30, "minimum": 1, "type": "integer"}, "coa_enabled": {"default": false, "description": "Allows a RADIUS server to dynamically modify the authorization status of a user session.", "type": "boolean"}, "coa_port": {"description": "the communication port used for \u201cChange of Authorization\u201d (CoA) messages", "examples": [3799], "maximum": 65535, "minimum": 1, "type": "integer"}, "enabled": {"default": false, "description": "When enabled:\n * `auth_servers` is ignored\n * `acct_servers` is ignored\n * `auth_servers_*` are ignored\n * `coa_servers` is ignored\n * `radsec` is ignored\n * `coa_enabled` is assumed", "type": "boolean"}, "fast_dot1x_timers": {"default": false, "description": "If set to true, sets default fast-timers with values calculated from `auth_servers_timeout` and `auth_server_retries`.", "type": "boolean"}, "network": {"description": "Which network the mist nac server resides in", "examples": ["default"], "type": ["string", "null"]}, "source_ip": {"description": "In case there is a static IP for this network, we can specify it using source ip", "examples": ["1.2.3.4"], "type": ["string", "null"]}}, "type": "object"}, "wlan_mxtunnel_ids": {"description": "When `interface`=`mxtunnel`, id of the Mist Tunnel", "format": "uuid", "items": {"examples": ["08cd7499-5841-51c8-e663-fb16b6f3b45e"], "type": "string"}, "type": "array"}, "wlan_mxtunnel_name": {"description": "When `interface`=`site_mxedge`, name of the Mist Tunnel defined under `site_setting.mxtunnel.additional_mxtunnels`", "items": {"default": "default", "examples": ["default"], "type": "string"}, "type": "array"}, "wlan_portal": {"additionalProperties": false, "description": "Guest portal settings for the WLAN", "properties": {"allow_wlan_id_roam": {"default": false, "description": "Optional if `amazon_enabled`==`true`. Whether to allow guest to connect to other Guest WLANs (with different `WLAN.ssid`) of same org without reauthentication (disable random_mac for seamless roaming)", "type": "boolean"}, "amazon_client_id": {"default": "", "description": "Optional if `amazon_enabled`==`true`. Amazon OAuth2 client id. This is optional. If not provided, it will use a default one.", "type": ["string", "null"]}, "amazon_client_secret": {"default": "", "description": "Optional if `amazon_enabled`==`true`. Amazon OAuth2 client secret. If amazon_client_id was provided, provide a corresponding value. Else leave blank.", "format": "password", "type": ["string", "null"]}, "amazon_email_domains": {"$ref": "#/components/schemas/wlan_portal_amazon_email_domains", "description": "Optional if `amazon_enabled`==`true`. Email domains allowed for Amazon-authenticated guest users. If null or empty, any authenticated Amazon email domain is allowed."}, "amazon_enabled": {"default": false, "description": "Whether amazon is enabled as a login method", "type": "boolean"}, "amazon_expire": {"default": null, "description": "Optional if `amazon_enabled`==`true`. Interval for which guest remains authorized using amazon auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "auth": {"$ref": "#/components/schemas/wlan_portal_auth", "description": "Guest portal login scheme used by the WLAN"}, "azure_client_id": {"default": "", "description": "Required if `azure_enabled`==`true`. Azure active directory app client id", "type": ["string", "null"]}, "azure_client_secret": {"default": "", "description": "Required if `azure_enabled`==`true`. Azure active directory app client secret", "format": "password", "type": ["string", "null"]}, "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`", "type": ["integer", "null"]}, "azure_tenant_id": {"default": "", "description": "Required if `azure_enabled`==`true`. Azure active directory tenant id.", "type": ["string", "null"]}, "broadnet_password": {"default": "", "description": "Required if `sms_provider`==`broadnet`. Password for the Broadnet SMS provider account", "examples": ["password"], "format": "password", "type": "string"}, "broadnet_sid": {"description": "Required if `sms_provider`==`broadnet`. SID for the Broadnet SMS provider account", "examples": ["MIST"], "type": "string"}, "broadnet_user_id": {"description": "Required if `sms_provider`==`broadnet`. User ID for the Broadnet SMS provider account", "examples": ["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": "Required if `sms_provider`==`clickatell`. API key for the Clickatell SMS provider account", "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": {"default": false, "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", "examples": [1440], "type": "integer"}, "external_portal_url": {"default": "", "description": "Required if `wlan_portal_auth`==`external`. External portal URL (e.g. https://host/url) where we can append our query parameters to", "type": "string"}, "facebook_client_id": {"default": "", "description": "Required if `facebook_enabled`==`true`. Facebook OAuth2 app id. This is optional. If not provided, it will use a default one.", "type": ["string", "null"]}, "facebook_client_secret": {"default": "", "description": "Required if `facebook_enabled`==`true`. Facebook OAuth2 app secret. If facebook_client_id was provided, provide a corresponding value. Else leave blank.", "format": "password", "type": ["string", "null"]}, "facebook_email_domains": {"$ref": "#/components/schemas/wlan_portal_facebook_email_domains", "description": "Optional if `facebook_enabled`==`true`. Email domains allowed for Facebook-authenticated guest users. If null or empty, any authenticated Facebook email domain is allowed."}, "facebook_enabled": {"default": false, "description": "Whether facebook is enabled as a login method", "type": "boolean"}, "facebook_expire": {"default": null, "description": "Optional if `facebook_enabled`==`true`. Interval for which guest remains authorized using facebook auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "forward": {"default": false, "description": "Whether to forward the user to another URL after authorized", "type": "boolean"}, "forward_url": {"default": "", "description": "URL to forward the user to", "examples": ["https://abc.com/promotions"], "type": ["string", "null"]}, "google_client_id": {"default": "", "description": "Google OAuth2 app id. This is optional. If not provided, it will use a default one.", "type": ["string", "null"]}, "google_client_secret": {"default": "", "description": "Optional if `google_enabled`==`true`. Google OAuth2 app secret. If google_client_id was provided, provide a corresponding value. Else leave blank.", "format": "password", "type": ["string", "null"]}, "google_email_domains": {"$ref": "#/components/schemas/wlan_portal_google_email_domains", "description": "Optional if `google_enabled`==`true`. Email domains allowed for Google-authenticated guest users. If null or empty, any authenticated Google email domain is allowed."}, "google_enabled": {"default": false, "description": "Whether Google is enabled as login method", "type": "boolean"}, "google_expire": {"default": null, "description": "Optional if `google_enabled`==`true`. Interval for which guest remains authorized using Google Auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "gupshup_password": {"description": "Required if `sms_provider`==`gupshup`. Password for the Gupshup SMS provider account", "format": "password", "type": "string"}, "gupshup_userid": {"description": "Required if `sms_provider`==`gupshup`. User ID for the Gupshup SMS provider account", "type": "string"}, "microsoft_client_id": {"default": "", "description": "Optional if `microsoft_enabled`==`true`. Microsoft 365 OAuth2 client id. This is optional. If not provided, it will use a default one.", "type": ["string", "null"]}, "microsoft_client_secret": {"default": "", "description": "Optional if `microsoft_enabled`==`true`. Microsoft 365 OAuth2 client secret. If microsoft_client_id was provided, provide a corresponding value. Else leave blank.", "format": "password", "type": ["string", "null"]}, "microsoft_email_domains": {"$ref": "#/components/schemas/wlan_portal_microsoft_email_domains", "description": "Optional if `microsoft_enabled`==`true`. Email domains allowed for Microsoft 365-authenticated guest users. If null or empty, any authenticated Microsoft 365 email domain is allowed."}, "microsoft_enabled": {"default": false, "description": "Whether microsoft 365 is enabled as a login method", "type": "boolean"}, "microsoft_expire": {"default": null, "description": "Optional if `microsoft_enabled`==`true`. Interval for which guest remains authorized using microsoft auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "passphrase_enabled": {"default": false, "description": "Whether password is enabled", "type": "boolean"}, "passphrase_expire": {"default": null, "description": "Optional if `passphrase_enabled`==`true`. Interval for which guest remains authorized using passphrase auth (in minutes), if not provided, uses `expire`", "type": ["integer", "null"]}, "password": {"default": "", "description": "Required if `passphrase_enabled`==`true`. Passphrase guests must enter when passphrase authentication is enabled", "examples": ["let me in"], "type": ["string", "null"]}, "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, behavior is acc to `sponsor_email_domains`", "type": "boolean"}, "predefined_sponsors_hide_email": {"default": false, "description": "Whether to hide sponsor\u2019s email from list of sponsors", "type": "boolean"}, "privacy": {"default": false, "description": "Whether to show the privacy policy in the WLAN guest portal", "type": "boolean"}, "puzzel_password": {"description": "Required if `sms_provider`==`puzzel`. Password for the Puzzel SMS provider account", "format": "password", "type": "string"}, "puzzel_service_id": {"description": "Required if `sms_provider`==`puzzel`. Service ID for the Puzzel SMS provider account", "type": "string"}, "puzzel_username": {"description": "Required if `sms_provider`==`puzzel`. Username for the Puzzel SMS provider account", "type": "string"}, "smsMessageFormat": {"default": "Code {{code}} expires in {{duration}} minutes.", "description": "Optional if `sms_enabled`==`true`. SMS Message format", "type": "string"}, "sms_enabled": {"default": false, "description": "Whether sms is enabled as a login method", "type": "boolean"}, "sms_expire": {"default": null, "description": "Optional if `sms_enabled`==`true`. Interval for which guest remains authorized using sms auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "sms_provider": {"$ref": "#/components/schemas/wlan_portal_sms_provider", "description": "Optional if `sms_enabled`==`true`. SMS provider used to deliver guest portal access codes"}, "smsglobal_api_key": {"description": "Required if `sms_provider`==`smsglobal`, Client API Key", "type": "string"}, "smsglobal_api_secret": {"description": "Required if `sms_provider`==`smsglobal`, Client secret", "format": "password", "type": "string"}, "smsglobal_sender": {"description": "Optional sender's number or sender ID for SMSGlobal. If not provided, uses the default number associated with the account", "type": "string"}, "sponsor_auto_approve": {"default": false, "description": "Optional if `sponsor_enabled`==`true`. 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": {"$ref": "#/components/schemas/wlan_portal_sponsor_email_domains", "description": "Email domains allowed for sponsor email addresses. Required if `sponsor_enabled` is `true` and `sponsors` is empty."}, "sponsor_enabled": {"default": false, "description": "Whether sponsor is enabled", "type": "boolean"}, "sponsor_expire": {"default": null, "description": "Optional if `sponsor_enabled`==`true`. Interval for which guest remains authorized using sponsor auth (in minutes), if not provided, uses expire`", "type": ["integer", "null"]}, "sponsor_link_validity_duration": {"$ref": "#/components/schemas/sponsor_link_validity_duration", "description": "Optional if `sponsor_enabled`==`true`. Validity duration, in minutes, for approve or deny links in sponsor emails. Valid values are 5 to 60."}, "sponsor_notify_all": {"default": false, "description": "Optional if `sponsor_enabled`==`true`. 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": "Optional if `sponsor_enabled`==`true`. If enabled, guest will get email about sponsor's action (approve/deny)", "type": "boolean"}, "sponsors": {"$ref": "#/components/schemas/wlan_portal_sponsors", "description": "Allowed sponsor email addresses and display names. Required if `sponsor_enabled` is `true` and `sponsor_email_domains` is empty."}, "sso_default_role": {"default": "", "description": "Optional if `wlan_portal_auth`==`sso`, 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": {"default": "", "description": "Optional if `wlan_portal_auth`==`sso`. Role assigned to authenticated users when guest SSO is used", "type": "string"}, "sso_idp_cert": {"default": "", "description": "Required if `wlan_portal_auth`==`sso`. IDP Cert (used to verify the signed response)", "type": "string"}, "sso_idp_sign_algo": {"$ref": "#/components/schemas/wlan_portal_idp_sign_algo", "description": "Optional if `wlan_portal_auth`==`sso`. Signing algorithm used for SAML assertions from the identity provider"}, "sso_idp_sso_url": {"default": "", "description": "Required if `wlan_portal_auth`==`sso`, IDP Single-Sign-On URL", "type": "string"}, "sso_issuer": {"default": "", "description": "Required if `wlan_portal_auth`==`sso`, IDP issuer URL", "type": "string"}, "sso_nameid_format": {"$ref": "#/components/schemas/wlan_portal_sso_nameid_format", "description": "Optional if `wlan_portal_auth`==`sso`. SAML NameID format expected from the identity provider"}, "telstra_client_id": {"description": "Required if `sms_provider`==`telstra`, Client ID provided by Telstra", "type": "string"}, "telstra_client_secret": {"description": "Required if `sms_provider`==`telstra`, Client secret provided by Telstra", "format": "password", "type": "string"}, "twilio_auth_token": {"description": "Required if `sms_provider`==`twilio`, Auth token account with twilio account", "examples": ["af9dac44c344a875ab5d31cb7abcdefg"], "format": "password", "type": ["string", "null"]}, "twilio_phone_number": {"description": "Required if `sms_provider`==`twilio`, Twilio phone number associated with the account. See example for accepted format.", "examples": ["+18548888888"], "type": ["string", "null"]}, "twilio_sid": {"description": "Required if `sms_provider`==`twilio`, Account SID provided by Twilio", "examples": ["af9dac44c344a875ab5d31cb7abcdefg"], "type": ["string", "null"]}}, "type": "object"}, "wlan_portal_allowed_hostnames": {"default": [], "description": "List of hostnames without http(s):// (matched by substring)", "examples": [["snapchat.com", "ibm.com"]], "items": {"type": "string"}, "type": "array"}, "wlan_portal_allowed_subnets": {"default": [], "description": "Guest portal CIDR subnets that clients may reach before authorization", "examples": [["63.5.3.0/24"]], "items": {"type": "string"}, "type": "array"}, "wlan_portal_amazon_email_domains": {"default": [], "description": "Optional if `amazon_enabled`==`true`. Matches authenticated user email against provided domains. If null or [], all authenticated emails will be allowed.", "items": {"type": "string"}, "type": "array"}, "wlan_portal_auth": {"default": "none", "description": "authentication scheme. enum: `amazon`, `azure`, `email`, `external`, `facebook`, `google`, `microsoft`, `multi`, `none`, `password`, `sms`, `sponsor`, `sso`", "enum": ["amazon", "azure", "email", "external", "facebook", "google", "microsoft", "multi", "none", "password", "sms", "sponsor", "sso"], "examples": ["none"], "type": "string"}, "wlan_portal_denied_hostnames": {"default": [], "description": "List of hostnames without http(s):// (matched by substring), this takes precedence over portal_allowed_hostnames", "examples": [["msg.snapchat.com"]], "items": {"type": "string"}, "type": "array"}, "wlan_portal_facebook_email_domains": {"default": [], "description": "Optional if `facebook_enabled`==`true`. Matches authenticated user email against provided domains. If null or [], all authenticated emails will be allowed.", "items": {"type": "string"}, "type": "array"}, "wlan_portal_google_email_domains": {"default": [], "description": "Optional if `google_enabled`==`true`. Matches authenticated user email against provided domains. If null or [], all authenticated emails will be allowed.", "examples": [["mydomain.edu", "mydomain.org"]], "items": {"type": "string"}, "type": "array"}, "wlan_portal_idp_sign_algo": {"default": "sha1", "description": "Optional if `wlan_portal_auth`==`sso`, Signing algorithm for SAML Assertion. enum: `sha1`, `sha256`, `sha384`, `sha512`", "enum": ["sha1", "sha256", "sha384", "sha512"], "type": "string"}, "wlan_portal_microsoft_email_domains": {"default": [], "description": "Optional if `microsoft_enabled`==`true`. Matches authenticated user email against provided domains. If null or [], all authenticated emails will be allowed.", "items": {"type": "string"}, "type": "array"}, "wlan_portal_sms_provider": {"default": "manual", "description": "Optional if `sms_enabled`==`true`. enum: `broadnet`, `clickatell`, `gupshup`, `manual`, `puzzel`, `smsglobal`, `telstra`, `twilio`", "enum": ["broadnet", "clickatell", "gupshup", "manual", "puzzel", "telstra", "twilio", "smsglobal"], "examples": ["twilio"], "type": "string"}, "wlan_portal_sponsor_email_domains": {"description": "List of domain allowed for sponsor email. Required if `sponsor_enabled` is `true` and `sponsors` is empty.", "examples": [["reserved.net", "reserved.org"]], "items": {"type": "string"}, "type": "array"}, "wlan_portal_sponsors": {"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. List of email allowed for backward compatibility", "oneOf": [{"$ref": "#/components/schemas/wlan_portal_sponsors_list"}, {"$ref": "#/components/schemas/wlan_portal_sponsors_object"}]}, "wlan_portal_sponsors_list": {"description": "Allowed sponsor email addresses for guest portal sponsor approval", "items": {"type": "string"}, "type": "array"}, "wlan_portal_sponsors_object": {"additionalProperties": {"type": "string"}, "description": "Allowed guest portal sponsors keyed by email address with sponsor names as values", "examples": [{"sponsor1@company.com": "FirstName1 LastName1", "sponsor2@company.com": "FirstName2 LastName2"}], "type": "object"}, "wlan_portal_sso_nameid_format": {"default": "email", "description": "Optional if `wlan_portal_auth`==`sso`. enum: `email`, `unspecified`", "enum": ["email", "unspecified"], "type": "string"}, "wlan_portal_template": {"description": "Guest portal template payload for a WLAN", "properties": {"portal_template": {"$ref": "#/components/schemas/wlan_portal_template_setting", "description": "Template settings that define guest portal text, layout, and localization"}}, "type": "object"}, "wlan_portal_template_setting": {"additionalProperties": false, "description": "Portal template settings for the WLAN guest portal", "properties": {"accessCodeAlternateEmail": {"default": "Use alternate email address", "description": "Link text for using an alternate email address during access-code login", "type": "string"}, "alignment": {"$ref": "#/components/schemas/portal_template_alignment", "description": "Text and content alignment used by the guest portal template"}, "ar": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Arabic"}, "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": {"default": "Sign in with Passphrase", "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": "Connect to Wi-Fi with", "description": "Heading text displayed above portal authentication options", "type": "string"}, "backLink": {"description": "Label of the link to go back to /logon", "type": "string"}, "ca-ES": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Catalan in Spain"}, "color": {"default": "#1074bc", "description": "Primary color used by the portal template", "type": "string"}, "colorDark": {"default": "#0b5183", "description": "Darker accent color used by the portal template", "type": "string"}, "colorLight": {"default": "#3589c6", "description": "Lighter accent color used by the portal template", "type": "string"}, "company": {"default": false, "description": "Whether company field is required", "type": "boolean"}, "companyError": {"default": "Please provide your company name", "description": "Error message when company not provided", "type": "string"}, "companyLabel": {"default": "Company", "description": "Label displayed for the company input field", "type": "string"}, "cs-CZ": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Czech in Czechia"}, "da-DK": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Danish in Denmark"}, "de-DE": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for German in Germany"}, "el-GR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Greek in Greece"}, "email": {"default": false, "description": "Whether email field is required", "type": "boolean"}, "emailAccessDomainError": {"default": "Email Access Domain Error", "description": "Error message when a user has valid social login but doesn't match specified email domains.", "type": "string"}, "emailCancel": {"default": "Cancel", "description": "Label for cancel confirmation code submission using email auth", "type": "string"}, "emailCodeCancel": {"default": "I did not receive the code", "description": "Link text for requesting help when the email access code was not received", "type": "string"}, "emailCodeError": {"default": "Please provide valid alternate email", "description": "Error message shown when the alternate email address for access-code delivery is invalid", "type": "string"}, "emailCodeFieldLabel": {"default": "Access Code", "description": "Label for the email access-code input field", "type": "string"}, "emailCodeMessage": {"default": "Enter the access number that was sent to your email address.", "description": "Instructional text shown before entering the email access code", "type": "string"}, "emailCodeSubmit": {"default": "Sign In", "description": "Button label for submitting the email access code", "type": "string"}, "emailCodeTitle": {"default": "Access Code", "description": "Title shown on the email access-code entry page", "type": "string"}, "emailError": {"default": "Please provide valid email", "description": "Error message when email not provided", "type": "string"}, "emailFieldLabel": {"default": "Enter your email address", "description": "Label for the email address input field", "type": "string"}, "emailLabel": {"default": "Email", "description": "Label displayed for the email input field", "type": "string"}, "emailMessage": {"default": "We will email you an authentication code which you can use to connect to the Wi-Fi network.", "description": "Instructional text explaining email access-code delivery", "type": "string"}, "emailSubmit": {"default": "Send Access Code", "description": "Label for confirmation code submit button using email auth", "type": "string"}, "emailTitle": {"default": "Sign in with Email", "description": "Title for the Email registration", "type": "string"}, "en-GB": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for English in the United Kingdom"}, "en-US": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for English in the United States"}, "es-ES": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Spanish in Spain"}, "fi-FI": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Finnish in Finland"}, "field1": {"default": false, "description": "Whether to ask field1", "type": "boolean"}, "field1Error": {"default": "Please provide Custom Field 1", "description": "Error message when field1 not provided", "type": "string"}, "field1Label": {"default": "Custom Field 1", "description": "Label for custom field 1 input", "type": "string"}, "field1Required": {"description": "Whether custom field 1 must be provided when the field is shown", "type": "boolean"}, "field2": {"default": false, "description": "Whether to ask field2", "type": "boolean"}, "field2Error": {"default": "Please provide Custom Field 2", "description": "Error message when field2 not provided", "type": "string"}, "field2Label": {"default": "Custom Field 2", "description": "Label for custom field 2 input", "type": "string"}, "field2Required": {"description": "Whether custom field 2 must be provided when the field is shown", "type": "boolean"}, "field3": {"default": false, "description": "Whether to ask field3", "type": "boolean"}, "field3Error": {"default": "Please provide Custom Field 3", "description": "Error message when field3 not provided", "type": "string"}, "field3Label": {"default": "Custom Field 3", "description": "Label for custom field 3 input", "type": "string"}, "field3Required": {"description": "Whether custom field 3 must be provided when the field is shown", "type": "boolean"}, "field4": {"default": false, "description": "Whether to ask field4", "type": "boolean"}, "field4Error": {"default": "Please provide Custom Field 4", "description": "Error message when field4 not provided", "type": "string"}, "field4Label": {"default": "Custom Field 4", "description": "Label for custom field 4 input", "type": "string"}, "field4Required": {"description": "Whether custom field 4 must be provided when the field is shown", "type": "boolean"}, "fr-FR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for French in France"}, "he-IL": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Hebrew in Israel"}, "hi-IN": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Hindi in India"}, "hr-HR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Croatian in Croatia"}, "hu-HU": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Hungarian in Hungary"}, "id-ID": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Indonesian in Indonesia"}, "it-IT": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Italian in Italy"}, "ja-JP": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Japanese in Japan"}, "ko-KR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Korean in Korea"}, "logo": {"default": null, "description": "Custom logo with `data:image/png;base64,` format, default null, uses Juniper Mist Logo. File size must be less than 100kB and image dimensions must be less than 500px x 200px (width x height).", "examples": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZg\u2026"], "type": ["string", "null"]}, "logoHeight": {"description": "Height of the logo, in px", "examples": [123], "maximum": 200, "minimum": 0, "type": "integer"}, "logoWidth": {"description": "Width of the logo, in px", "examples": [408], "maximum": 500, "minimum": 0, "type": "integer"}, "marketingPolicyLink": {"default": "Marketing Policy", "description": "label of the link to go to /marketing_policy", "type": "string"}, "marketingPolicyOptIn": {"default": false, "description": "Whether marketing policy optin is enabled", "type": "boolean"}, "marketingPolicyOptInLabel": {"default": "I wish to receive Marketing notifications", "description": "label for marketing optin", "type": "string"}, "marketingPolicyOptInText": {"default": "Marketing policy content", "description": "Text of the marketing policy opt-in content", "type": "string"}, "message": {"default": "Sign in to get online", "description": "Main message displayed on the guest portal sign-in page", "type": "string"}, "ms-MY": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Malay in Malaysia"}, "multiAuth": {"default": false, "description": "Whether the portal presents multiple authentication methods", "type": "boolean"}, "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 displayed for the name input field", "type": "string"}, "nb-NO": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Norwegian Bokmal in Norway"}, "nl-NL": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Dutch in the Netherlands"}, "optOutDefault": {"default": true, "description": "Default value for the `Do not store` checkbox", "type": "boolean"}, "optout": {"default": false, "description": "Whether to display Do Not Store My Personal Information", "type": "boolean"}, "optoutLabel": {"default": "Do not store", "description": "Label for Do Not Store My Personal Information", "type": "string"}, "pageTitle": {"default": "Welcome", "description": "Browser or page title shown for the guest portal", "type": "string"}, "passphraseCancel": {"default": "Cancel", "description": "Label for the Passphrase cancel button", "type": "string"}, "passphraseError": {"default": "Invalid Passphrase", "description": "Error message when invalid passphrase is provided", "type": "string"}, "passphraseLabel": {"default": "Passphrase", "description": "Label for the passphrase input field", "type": "string"}, "passphraseMessage": {"default": "Enter the secret passphrase to access the Wi-Fi network.", "description": "Instructional text shown on the passphrase sign-in page", "type": "string"}, "passphraseSubmit": {"default": "Sign in", "description": "Label for the Passphrase submit button", "type": "string"}, "passphraseTitle": {"default": "Sign in with Passphrase", "description": "Title for passphrase details page", "type": "string"}, "pl-PL": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Polish in Poland"}, "poweredBy": {"default": true, "description": "Whether to show \\\"Powered by Mist\\\"", "type": "boolean"}, "privacy": {"default": false, "description": "Whether to require the Privacy Term acceptance", "type": "boolean"}, "privacyPolicyAcceptLabel": {"default": "I accept the Privacy Terms", "description": "Prefix of the label of the link to go to Privacy Policy", "type": "string"}, "privacyPolicyError": {"default": "Please review and accept the Privacy Terms", "description": "Error message when Privacy Policy not accepted", "type": "string"}, "privacyPolicyLink": {"default": "Privacy Terms", "description": "Label of the link to go to Privacy Policy", "type": "string"}, "privacyPolicyText": {"default": "<< provide your Privacy Terms here >>", "description": "Text of the Privacy Policy", "type": "string"}, "pt-BR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Portuguese in Brazil"}, "pt-PT": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Portuguese in Portugal"}, "requiredFieldLabel": {"default": "required", "description": "Text used to mark a form field as required", "type": "string"}, "responsiveLayout": {"default": true, "description": "Whether the portal template uses a responsive layout", "type": "boolean"}, "ro-RO": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Romanian in Romania"}, "ru-RU": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Russian in Russia"}, "signInLabel": {"default": "Sign In", "description": "Label of the button to signin", "type": "string"}, "sk-SK": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Slovak in Slovakia"}, "smsCarrierDefault": {"default": "Please Select", "description": "Default option text shown in the SMS carrier selector", "type": "string"}, "smsCarrierError": {"default": "Please select a mobile carrier", "description": "Error message shown when no mobile carrier is selected", "type": "string"}, "smsCarrierFieldLabel": {"default": "Mobile Carrier", "description": "Label for mobile carrier drop-down list", "type": "string"}, "smsCodeCancel": {"default": "I did not receive the code", "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", "description": "Label for the SMS confirmation-code input field", "type": "string"}, "smsCodeMessage": {"default": "Enter the access number that was sent to your mobile number.", "description": "Instructional text shown before entering the SMS access code", "type": "string"}, "smsCodeSubmit": {"default": "Sign In", "description": "Label for confirmation code submit button", "type": "string"}, "smsCodeTitle": {"default": "Access Code", "description": "Title shown on the SMS access-code entry page", "type": "string"}, "smsCountryFieldLabel": {"default": "Country Code", "description": "Label for the SMS country-code input field", "type": "string"}, "smsCountryFormat": {"default": "+1", "description": "Example country code format shown for SMS authentication", "type": "string"}, "smsHaveAccessCode": {"default": "I have an access code", "description": "Label for checkbox to specify that the user has access code", "type": "string"}, "smsIsTwilio": {"default": false, "description": "Whether the SMS portal flow uses Twilio-specific behavior", "type": "boolean"}, "smsMessageFormat": {"description": "Format of access code sms message. {{code}} and {{duration}} are placeholders 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", "description": "Error message shown when the mobile number is invalid", "type": "string"}, "smsNumberFieldLabel": {"default": "Mobile Number", "description": "Label for field to provide mobile number", "type": "string"}, "smsNumberFormat": {"default": "2125551212 (digits only)", "description": "Example mobile number format shown for SMS authentication", "type": "string"}, "smsNumberMessage": {"default": "We will send an access code to your mobile number which you can use to connect to the Wi-Fi network. Message and data rates may apply.", "description": "Instructional text explaining SMS access-code delivery", "type": "string"}, "smsNumberSubmit": {"default": "Send Access Code", "description": "Label for submit button for code generation", "type": "string"}, "smsNumberTitle": {"default": "Sign in with Text Message", "description": "Title for phone number details", "type": "string"}, "smsUsernameFormat": {"default": "username", "description": "Example username format shown for SMS authentication", "type": "string"}, "smsValidityDuration": {"description": "How long confirmation code should be considered valid (in minutes)", "maximum": 30, "minimum": 1, "type": "integer"}, "sponsorBackLink": {"default": "Go back and edit request form", "description": "Link text for returning to edit the sponsor request form", "type": "string"}, "sponsorCancel": {"default": "Cancel", "description": "Button label for canceling sponsor authentication", "type": "string"}, "sponsorEmail": {"default": "Sponsor Email", "description": "Label for Sponsor Email", "type": "string"}, "sponsorEmailError": {"default": "Please provide valid sponsor email", "description": "Error message shown when the sponsor email address is invalid", "type": "string"}, "sponsorEmailTemplate": {"default": "", "description": "HTML template to replace/override default sponsor email template \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)", "type": "string"}, "sponsorInfoApproved": {"default": "Your request was approved by", "description": "Status message prefix shown when a sponsor approves the request", "type": "string"}, "sponsorInfoDenied": {"default": "Your request was denied by", "description": "Status message prefix shown when a sponsor denies the request", "type": "string"}, "sponsorInfoPending": {"default": "Your notification has been sent to", "description": "Status message prefix shown after a sponsor notification is sent", "type": "string"}, "sponsorName": {"default": "Sponsor Name", "description": "Label for Sponsor Name", "type": "string"}, "sponsorNameError": {"default": "Please provide sponsor name", "description": "Error message shown when the sponsor name is missing", "type": "string"}, "sponsorNotePending": {"default": "Please wait for them to acknowledge.", "description": "Additional status text shown while sponsor approval is pending", "type": "string"}, "sponsorRequestAccess": {"default": "Request Wi-Fi Access", "description": "Submit button label request Wifi Access and notify sponsor about guest request", "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": "Request Wi-Fi Access", "description": "Submit button label to notify sponsor about guest request", "type": "string"}, "sponsorsError": {"default": "Please select a sponsor", "description": "Error message shown when no sponsor is selected", "type": "string"}, "sponsorsFieldLabel": {"default": "Sponsors", "description": "Label for the sponsor selection field", "type": "string"}, "sv-SE": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Swedish in Sweden"}, "th-TH": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Thai in Thailand"}, "tos": {"default": true, "description": "Whether the portal requires Terms of Service acceptance", "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 the 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": "<< provide your Terms of Service here >>", "description": "Text of the Terms of Service", "type": "string"}, "tr-TR": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Turkish in Turkey"}, "uk-UA": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Ukrainian in Ukraine"}, "vi-VN": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Vietnamese in Vietnam"}, "zh-Hans": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Simplified Chinese"}, "zh-Hant": {"$ref": "#/components/schemas/wlan_portal_template_setting_locale", "description": "Localized portal template strings for Traditional Chinese"}}, "required": ["pageTitle"], "type": "object"}, "wlan_portal_template_setting_locale": {"additionalProperties": false, "description": "Localized portal template strings for a specific language", "properties": {"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": "Localized heading text displayed above portal authentication options", "type": "string"}, "backLink": {"description": "Label of the link to go back to /logon", "type": "string"}, "companyError": {"description": "Error message when company not provided", "type": "string"}, "companyLabel": {"description": "Localized label displayed for the company input field", "type": "string"}, "emailAccessDomainError": {"description": "Error message when a user has valid social login but doesn't match specified email domains.", "type": "string"}, "emailCancel": {"description": "Label for cancel confirmation code submission using email auth", "type": "string"}, "emailCodeCancel": {"description": "Localized link text for requesting help when the email access code was not received", "type": "string"}, "emailCodeError": {"description": "Localized error message shown when the alternate email address for access-code delivery is invalid", "type": "string"}, "emailCodeFieldLabel": {"description": "Localized label for the email access-code input field", "type": "string"}, "emailCodeMessage": {"description": "Localized instructional text shown before entering the email access code", "type": "string"}, "emailCodeSubmit": {"description": "Localized button label for submitting the email access code", "type": "string"}, "emailCodeTitle": {"description": "Localized title shown on the email access-code entry page", "type": "string"}, "emailError": {"description": "Error message when email not provided", "type": "string"}, "emailFieldLabel": {"description": "Localized label for the email address input field", "type": "string"}, "emailLabel": {"description": "Localized label displayed for the email input field", "type": "string"}, "emailMessage": {"description": "Localized instructional text explaining email access-code delivery", "type": "string"}, "emailSubmit": {"description": "Label for confirmation code submit button using email auth", "type": "string"}, "emailTitle": {"description": "Title for the Email registration", "type": "string"}, "field1Error": {"description": "Error message when field1 not provided", "type": "string"}, "field1Label": {"description": "Localized label for custom field 1 input", "type": "string"}, "field2Error": {"description": "Error message when field2 not provided", "type": "string"}, "field2Label": {"description": "Localized label for custom field 2 input", "type": "string"}, "field3Error": {"description": "Error message when field3 not provided", "type": "string"}, "field3Label": {"description": "Localized label for custom field 3 input", "type": "string"}, "field4Error": {"description": "Error message when field4 not provided", "type": "string"}, "field4Label": {"description": "Localized label for custom field 4 input", "type": "string"}, "marketingPolicyLink": {"description": "label of the link to go to /marketing_policy", "type": "string"}, "marketingPolicyOptIn": {"description": "Whether marketing policy optin is enabled", "type": "boolean"}, "marketingPolicyOptInLabel": {"description": "label for marketing optin", "type": "string"}, "marketingPolicyOptInText": {"description": "Localized text of the marketing policy opt-in content", "type": "string"}, "message": {"description": "Localized main message displayed on the guest portal sign-in page", "type": "string"}, "nameError": {"description": "Error message when name not provided", "type": "string"}, "nameLabel": {"description": "Localized label displayed for the name input field", "type": "string"}, "optoutLabel": {"description": "Label for Do Not Store My Personal Information", "type": "string"}, "pageTitle": {"description": "Localized browser or page title shown for the guest portal", "type": "string"}, "passphraseCancel": {"description": "Label for the Passphrase cancel button", "type": "string"}, "passphraseError": {"description": "Error message when invalid passphrase is provided", "type": "string"}, "passphraseLabel": {"description": "Localized label for the passphrase input field", "type": "string"}, "passphraseMessage": {"description": "Localized instructional text shown on the passphrase sign-in page", "type": "string"}, "passphraseSubmit": {"description": "Label for the Passphrase submit button", "type": "string"}, "passphraseTitle": {"description": "Title for passphrase details page", "type": "string"}, "privacyPolicyAcceptLabel": {"description": "Prefix of the label of the link to go to Privacy Policy", "type": "string"}, "privacyPolicyError": {"description": "Error message when Privacy Policy not accepted", "type": "string"}, "privacyPolicyLink": {"description": "Label of the link to go to Privacy Policy", "type": "string"}, "privacyPolicyText": {"description": "Text of the Privacy Policy", "type": "string"}, "requiredFieldLabel": {"description": "Localized text used to mark a form field as required", "type": "string"}, "signInLabel": {"description": "Label of the button to signin", "type": "string"}, "smsCarrierDefault": {"description": "Localized default option text shown in the SMS carrier selector", "type": "string"}, "smsCarrierError": {"description": "Localized error message shown when no mobile carrier is selected", "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": "Localized label for the SMS confirmation-code input field", "type": "string"}, "smsCodeMessage": {"description": "Localized instructional text shown before entering the SMS access code", "type": "string"}, "smsCodeSubmit": {"description": "Label for confirmation code submit button", "type": "string"}, "smsCodeTitle": {"description": "Localized title shown on the SMS access-code entry page", "type": "string"}, "smsCountryFieldLabel": {"description": "Localized label for the SMS country-code input field", "type": "string"}, "smsCountryFormat": {"description": "Localized example country code format shown for SMS authentication", "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 placeholders and should be retained as is.", "type": "string"}, "smsNumberCancel": {"description": "Label for canceling mobile details for SMS auth", "type": "string"}, "smsNumberError": {"description": "Localized error message shown when the mobile number is invalid", "type": "string"}, "smsNumberFieldLabel": {"description": "Label for field to provide mobile number", "type": "string"}, "smsNumberFormat": {"description": "Localized example mobile number format shown for SMS authentication", "type": "string"}, "smsNumberMessage": {"description": "Localized instructional text explaining SMS access-code delivery", "type": "string"}, "smsNumberSubmit": {"description": "Label for submit button for code generation", "type": "string"}, "smsNumberTitle": {"description": "Title for phone number details", "type": "string"}, "smsUsernameFormat": {"description": "Localized example username format shown for SMS authentication", "type": "string"}, "sponsorBackLink": {"description": "Localized link text for returning to edit the sponsor request form", "type": "string"}, "sponsorCancel": {"description": "Localized button label for canceling sponsor authentication", "type": "string"}, "sponsorEmail": {"description": "Label for Sponsor Email", "type": "string"}, "sponsorEmailError": {"description": "Localized error message shown when the sponsor email address is invalid", "type": "string"}, "sponsorInfoApproved": {"description": "Localized status message prefix shown when a sponsor approves the request", "type": "string"}, "sponsorInfoDenied": {"description": "Localized status message prefix shown when a sponsor denies the request", "type": "string"}, "sponsorInfoPending": {"description": "Localized status message prefix shown after a sponsor notification is sent", "type": "string"}, "sponsorName": {"description": "Label for Sponsor Name", "type": "string"}, "sponsorNameError": {"description": "Localized error message shown when the sponsor name is missing", "type": "string"}, "sponsorNotePending": {"description": "Localized additional status text shown while sponsor approval is pending", "type": "string"}, "sponsorRequestAccess": {"description": "Submit button label request Wifi Access and notify sponsor about guest request", "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": "Localized error message shown when no sponsor is selected", "type": "string"}, "sponsorsFieldLabel": {"description": "Localized label for the sponsor selection field", "type": "string"}, "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"}}, "type": "object"}, "wlan_qos": {"additionalProperties": false, "description": "QoS override settings for WLAN client traffic", "properties": {"class": {"$ref": "#/components/schemas/wlan_qos_class", "description": "QoS traffic class applied when WLAN QoS override is enabled"}, "overwrite": {"default": false, "description": "Whether to overwrite QoS", "type": "boolean"}}, "type": "object"}, "wlan_qos_class": {"default": "best_effort", "description": "enum: `background`, `best_effort`, `video`, `voice`", "enum": ["background", "best_effort", "video", "voice"], "examples": ["best_effort"], "type": "string"}, "wlan_rateset": {"additionalProperties": {"$ref": "#/components/schemas/wlan_datarates"}, "description": "Property key is the RF band. enum: `24`, `5`, `6`", "type": "object"}, "wlan_roam_mode": {"default": "NONE", "description": "enum: `11r`, `OKC`, `NONE`", "enum": ["11r", "NONE", "OKC"], "examples": ["NONE"], "type": "string"}, "wlan_schedule": {"additionalProperties": false, "description": "WLAN operating schedule, default is disabled", "properties": {"enabled": {"default": false, "description": "Whether the WLAN operating schedule is enabled", "type": "boolean"}, "hours": {"$ref": "#/components/schemas/hours", "description": "Time ranges when the WLAN is scheduled to operate"}}, "type": "object"}, "wlan_vlan_id_with_variable": {"description": "WLAN VLAN ID, either numeric, a variable string, or null", "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}, {"type": "null"}]}, "wlan_vlan_ids": {"description": "WLAN VLAN pool IDs represented as either a comma-separated string or a list", "oneOf": [{"$ref": "#/components/schemas/wlan_vlan_ids_string"}, {"$ref": "#/components/schemas/wlan_vlan_ids_list"}]}, "wlan_vlan_ids_list": {"description": "If `vlan_enabled`==`true` and `vlan_pooling`==`true`. List of VLAN IDs (comma separated) to be used in the VLAN Pool", "examples": [[3, 4, 5]], "items": {"$ref": "#/components/schemas/vlan_id_with_variable"}, "type": "array"}, "wlan_vlan_ids_string": {"description": "If `vlan_enabled`==`true` and `vlan_pooling`==`true`. List of VLAN IDs to be used in the VLAN Pool", "examples": ["1,2"], "type": "string"}, "wlan_wxtag_ids": {"description": "Identifiers of WxLAN tags used when `apply_to`==`wxtags`", "items": {"format": "uuid", "type": "string"}, "type": ["array", "null"]}, "wlans": {"description": "WLAN records returned by a list response", "items": {"$ref": "#/components/schemas/wlan"}, "type": "array"}, "wxlan_rule": {"description": "WxLAN policy rule controlling traffic between WxLAN tags", "properties": {"action": {"$ref": "#/components/schemas/wxlan_rule_action", "description": "Allow or block behavior applied by this WxLAN rule"}, "apply_tags": {"$ref": "#/components/schemas/wxlan_rule_apply_tags", "description": "WxLAN tag identifiers applied when this rule matches"}, "blocked_apps": {"$ref": "#/components/schemas/wxlan_rule_blocked_apps", "description": "Application keys always blocked by this rule, regardless of the rule action"}, "created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this WxLAN rule was created, in epoch seconds"}, "dst_allow_wxtags": {"$ref": "#/components/schemas/wxlan_rule_dst_allow_wxtags", "description": "Destination WxLAN tag identifiers explicitly allowed by this rule"}, "dst_deny_wxtags": {"$ref": "#/components/schemas/wxlan_rule_dst_deny_wxtags", "description": "Destination WxLAN tag identifiers explicitly denied by this rule"}, "dst_wxtags": {"$ref": "#/components/schemas/wxlan_rule_dst_wxtags", "description": "Destination WxLAN tag identifiers matched by this rule"}, "enabled": {"default": true, "description": "Whether this WxLAN rule is enabled", "type": "boolean"}, "for_site": {"description": "Whether this WxLAN rule is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this WxLAN rule"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this WxLAN rule was last modified, in epoch seconds"}, "order": {"description": "Lookup priority for WxLAN rules; larger positive values match first, and -1 means LAST. Uniqueness is not checked", "examples": [1], "minimum": -1, "type": "integer"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization associated with this WxLAN rule"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with this WxLAN rule, when site-scoped"}, "src_wxtags": {"$ref": "#/components/schemas/wxlan_rule_src_wxtags", "description": "Source WxLAN tag identifiers that must match for this rule to apply"}, "template_id": {"description": "Only for Org Level WxRule", "examples": ["6aa54cbd-e039-4878-846a-04f270de8a5c"], "format": "uuid", "type": "string"}}, "required": ["order", "src_wxtags"], "type": "object"}, "wxlan_rule_action": {"description": "type of action, allow / block. enum: `allow`, `block`", "enum": ["allow", "block"], "examples": ["allow"], "type": "string"}, "wxlan_rule_apply_tags": {"description": "WxLAN tag identifiers applied when a rule matches", "items": {"examples": ["c049dfcd-0c73-5014-1c64-062e9903f1e5"], "type": "string"}, "type": "array"}, "wxlan_rule_blocked_apps": {"description": "Blocked apps (always blocking, ignoring action), the key of Get Application List", "examples": [["mist", "all-videos"]], "items": {"type": "string"}, "type": "array"}, "wxlan_rule_dst_allow_wxtags": {"description": "List of WxTag UUID to indicate these tags are allowed access", "examples": [["fff34466-eec0-3756-6765-381c728a6037", "eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"type": "string"}, "type": "array"}, "wxlan_rule_dst_deny_wxtags": {"description": "List of WxTag UUID to indicate these tags are blocked access", "examples": [["aaa34466-eec0-3756-6765-381c728a6037", "bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"type": "string"}, "type": "array"}, "wxlan_rule_dst_wxtags": {"description": "List of WxTag UUID", "examples": [["aaa34466-eec0-3756-6765-381c728a6037", "bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3"]], "items": {"type": "string"}, "type": "array"}, "wxlan_rule_src_wxtags": {"description": "List of WxTag UUID to determine if this rule would match", "examples": [["8bfc2490-d726-3587-038d-cb2e71bd2330", "3aa8e73f-9f46-d827-8d6a-567bb7e67fc9"]], "items": {"type": "string"}, "type": "array"}, "wxlan_rules": {"description": "WxLAN policy rules returned by a list response", "items": {"$ref": "#/components/schemas/wxlan_rule"}, "type": "array"}, "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 * 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 * 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: the matches the ATTR-Class(25)\n * radius_attr: the values are [ \"6=1\" , \"26=10.2.3.4\" ], this support other RADIUS attributes where we know the type\n * radius_vendor: the values are [ \"14179.10=1\" , \"14178.16=1.2.3.4\" ], this matches vendor attributes and will be dynamically evaluated", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this WxLAN tag was created, in epoch seconds"}, "for_site": {"description": "Whether this WxLAN tag is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this WxLAN tag"}, "last_ips": {"$ref": "#/components/schemas/wxlan_tag_last_ips", "description": "Most recent IP addresses observed for this WxLAN tag"}, "mac": {"description": "If `type`==`client`, Client MAC address", "type": ["string", "null"]}, "match": {"$ref": "#/components/schemas/wxlan_tag_match", "description": "Required if `type`==`match`; attribute compared against `values`"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this WxLAN tag was last modified, in epoch seconds"}, "name": {"description": "Display name of the WxLAN tag", "type": "string"}, "op": {"$ref": "#/components/schemas/wxlan_tag_operation", "description": "Required if `type`==`match`; whether `values` are inclusive or exclusive matches"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization associated with this WxLAN tag"}, "resource_mac": {"description": "MAC address of the discovered resource associated with this tag, when applicable", "type": ["string", "null"]}, "services": {"$ref": "#/components/schemas/strings", "description": "Names of services associated with this WxLAN tag"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with this WxLAN tag, when site-scoped"}, "specs": {"$ref": "#/components/schemas/wxlan_tag_specs", "description": "Traffic match specifications used when `type`==`spec`"}, "subnet": {"description": "CIDR subnet associated with this WxLAN tag when `type`==`subnet`", "type": "string"}, "type": {"$ref": "#/components/schemas/wxlan_tag_type", "description": "Kind of WxLAN tag and how it is populated"}, "values": {"$ref": "#/components/schemas/wxlan_tag_values", "description": "Comparison values for the selected `match` attribute when `type`==`match`"}, "vlan_id": {"$ref": "#/components/schemas/wxlan_tag_vlan_id", "description": "Identifier of the VLAN associated with this WxLAN tag when `type`==`vlan`"}}, "required": ["type", "name"], "type": "object"}, "wxlan_tag_last_ips": {"description": "Most recent IP addresses observed for a WxLAN tag", "items": {"type": "string"}, "readOnly": true, "type": "array"}, "wxlan_tag_match": {"description": "required if `type`==`match`. enum: `ap_id`, `app`, `asset_mac`, `client_mac`, `hostname`, `ip_range_subnet`, `port`, `psk_name`, `psk_role`, `radius_attr`, `radius_class`, `radius_group`, `radius_username`, `sdkclient_uuid`, `wlan_id`", "enum": ["ap_id", "app", "asset_mac", "client_mac", "hostname", "ip_range_subnet", "port", "psk_name", "psk_role", "radius_attr", "radius_class", "radius_group", "radius_username", "sdkclient_uuid", "wlan_id"], "type": "string"}, "wxlan_tag_operation": {"default": "in", "description": "required if `type`==`match`, type of tag (inclusive/exclusive). enum: `in`, `not_in`", "enum": ["in", "not_in"], "type": "string"}, "wxlan_tag_spec": {"additionalProperties": false, "description": "Traffic match specification used by a WxLAN tag", "properties": {"port_range": {"default": "0", "description": "Matched destination 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": {"$ref": "#/components/schemas/wxlan_tag_spec_subnets", "description": "Destination subnets or IP addresses matched by this WxLAN tag spec"}}, "type": "object"}, "wxlan_tag_spec_subnets": {"default": [], "description": "Matched destination subnets and/or IP addresses", "examples": [["0.0.0.0/0"]], "items": {"type": "string"}, "type": "array"}, "wxlan_tag_specs": {"description": "Traffic match specifications used when `type`==`spec`", "items": {"$ref": "#/components/schemas/wxlan_tag_spec"}, "type": "array"}, "wxlan_tag_type": {"description": "enum: `client`, `match`, `resource`, `spec`, `subnet`, `vlan`", "enum": ["client", "match", "resource", "spec", "subnet", "vlan"], "type": "string"}, "wxlan_tag_values": {"description": "Required if `type`==`match` and\n * `match`==`ap_id`: list of AP IDs\n * `match`==`app`: list of Application Names\n * `match`==`asset_mac`: list of Asset MAC addresses\n * `match`==`client_mac`: list of Client MAC addresses\n * `match`==`hostname`: list of Resources Hostnames\n * `match`==`ip_range_subnet`: list of IP addresses and/or CIDRs\n * `match`==`psk_name`: list of PSK Names\n * `match`==`psk_role`: list of PSK Roles\n * `match`==`port`: list of Ports or Port Ranges\n * `match`==`radius_attr`: list of RADIUS Attributes. The values are [ \"6=1\", \"26=10.2.3.4\" ], this support other RADIUS attributes where we know the type\n * `match`==`radius_class`: list of RADIUS Classes. This matches the ATTR-Class(25)\n * `match`==`radius_group`: list of RADIUS Groups. 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 * `match`==`radius_username`: list of RADIUS Usernames. This matches the ATTR-User-Name(1)\n * `match`==`sdkclient_uuid`: list of SDK UUIDs\n * `match`==`wlan_id`: list of WLAN IDs\n\n**Notes**:\nVariables are not allowed", "items": {"type": "string"}, "type": "array"}, "wxlan_tag_vlan_id": {"description": "If `type`==`vlan_id`, VLAN ID or variable", "examples": ["1055"], "oneOf": [{"type": "string"}, {"maximum": 4094, "minimum": 1, "type": "integer"}]}, "wxlan_tags": {"description": "WxLAN tag records returned by a list response", "items": {"$ref": "#/components/schemas/wxlan_tag"}, "type": "array"}, "wxlan_tunnel": {"description": "WxLAN tunnel configuration for L2TPv3 or DMVPN connectivity", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this WxLAN tunnel was created, in epoch seconds"}, "dmvpn": {"$ref": "#/components/schemas/wxlan_tunnel_dmvpn", "description": "Settings for Dynamic Multipoint VPN on this WxLAN tunnel"}, "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": {"description": "Whether this WxLAN tunnel is scoped to a 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, "description": "Number of missed hello messages before the AP tries another tunnel peer", "maximum": 30, "minimum": 2, "type": "integer"}, "hostname": {"description": "Optional, overwrite the hostname in SCCRQ control message, default is 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": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this WxLAN tunnel"}, "ipsec": {"$ref": "#/components/schemas/wxlan_tunnel_ipsec", "description": "Security settings for IPsec on this WxLAN tunnel; requires DMVPN to be enabled"}, "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": {"$ref": "#/components/schemas/modified_time", "description": "Time when this WxLAN tunnel was last modified, in epoch seconds"}, "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", "description": "Owning organization associated with this WxLAN tunnel"}, "peers": {"$ref": "#/components/schemas/wxlan_tunnel_peers", "description": "Remote peer IP addresses or hostnames for this tunnel"}, "router_id": {"description": "Optional, overwrite the router-id in SCCRQ control message, default is \"\" or null, can also be an IPv4 address", "type": "string"}, "secret": {"description": "Shared secret used for tunnel authentication, \u2018\u2019 if no auth is used", "type": "string"}, "sessions": {"$ref": "#/components/schemas/wxlan_tunnel_sessions", "description": "L2TPv3 sessions established for this tunnel"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with this WxLAN tunnel, when site-scoped"}, "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"}, "wxlan_tunnel_dmvpn": {"additionalProperties": false, "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": {"$ref": "#/components/schemas/wxlan_tunnel_dmvpn_host_routes", "description": "IPv4 DMVPN peer host routes to which traffic is forwarded"}}, "type": "object"}, "wxlan_tunnel_dmvpn_host_routes": {"description": "Optional; list of IPv4 DMVPN peer host ip-addresses to which traffic is forwarded", "items": {"type": "string"}, "type": "array"}, "wxlan_tunnel_ipsec": {"additionalProperties": false, "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": "Pre-shared key used for IPsec on this WxLAN tunnel", "type": "string"}}, "required": ["psk"], "type": "object"}, "wxlan_tunnel_peers": {"description": "List of remote peers\u2019 IP or hostname", "items": {"type": "string"}, "type": "array"}, "wxlan_tunnel_session": {"additionalProperties": false, "description": "L2TPv3 session established inside a WxLAN tunnel", "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": {"description": "Whether L2TPv3 cookie support is enabled for this session", "type": "boolean"}, "ethertype": {"$ref": "#/components/schemas/wxlan_tunnel_session_ethertype", "description": "Frame type carried by this tunnel session"}, "local_session_id": {"description": "Identifier for the local L2TPv3 session, from 1 to 2147483647", "maximum": 2147483647, "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": "Identifier for the remote L2TPv3 session, from 1 to 2147483647", "maximum": 2147483647, "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"}}, "type": "object"}, "wxlan_tunnel_session_ethertype": {"description": "Frame type carried by this tunnel session. enum: `ethernet`, `vlan`", "enum": ["ethernet", "vlan"], "type": "string"}, "wxlan_tunnel_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": {"$ref": "#/components/schemas/wxlan_tunnel_session"}, "type": "array", "uniqueItems": true}, "wxlan_tunnels": {"description": "WxLAN tunnel records returned by a list response", "items": {"$ref": "#/components/schemas/wxlan_tunnel"}, "type": "array"}, "wxtag_client": {"additionalProperties": false, "description": "Client associated with a WxLAN tag", "properties": {"mac": {"description": "Client MAC address associated with the WxLAN tag entry", "examples": ["5684dae9ac8b"], "type": "string"}, "since": {"description": "Time when the client became associated with the WxLAN tag, in epoch seconds", "examples": [1428939600], "type": "number"}}, "required": ["mac", "since"], "type": "object"}, "wxtag_clients": {"description": "Clients associated with a WxLAN tag", "items": {"$ref": "#/components/schemas/wxtag_client"}, "type": "array", "uniqueItems": true}, "zigbee_join_response": {"additionalProperties": false, "description": "Response containing the session identifier for a Zigbee join operation", "properties": {"session_id": {"description": "Session ID for the Zigbee join operation", "examples": ["19e73828-937f-05e6-f709-e29efdb0a82b"], "format": "uuid", "type": "string"}}, "type": "object"}, "zone": {"description": "Zone defined on a site map", "properties": {"created_time": {"$ref": "#/components/schemas/created_time", "description": "Time when this zone was created, in epoch seconds"}, "for_site": {"description": "Whether this zone is scoped to a site", "readOnly": true, "type": "boolean"}, "id": {"$ref": "#/components/schemas/id", "description": "Unique identifier for this zone"}, "map_id": {"description": "Map where this zone is defined", "format": "uuid", "readOnly": true, "type": "string"}, "modified_time": {"$ref": "#/components/schemas/modified_time", "description": "Time when this zone was last modified, in epoch seconds"}, "name": {"description": "Display name of the zone", "type": "string"}, "org_id": {"$ref": "#/components/schemas/org_id", "description": "Owning organization associated with this zone"}, "site_id": {"$ref": "#/components/schemas/site_id", "description": "Mist site associated with this zone"}, "vertices": {"$ref": "#/components/schemas/zone_vertices", "description": "Polygon vertices that define the zone boundary"}}, "type": "object"}, "zone_scope": {"default": "site", "description": "enum: `map`, `rssizone`, `site`, `zone`", "enum": ["map", "rssizone", "site", "zone"], "type": "string"}, "zone_type": {"description": "Zone collection type, either regular zones or RSSI zones. enum: `rssizones`, `zones`", "enum": ["rssizones", "zones"], "type": "string"}, "zone_vertex": {"additionalProperties": false, "description": "Zone polygon vertex expressed in map pixels", "properties": {"x": {"description": "Horizontal pixel coordinate of the zone vertex", "format": "double", "type": "number"}, "y": {"description": "Vertical pixel coordinate of the zone vertex", "format": "double", "type": "number"}}, "required": ["x", "y"], "type": "object", "uniqueItems": true}, "zone_vertex_m": {"additionalProperties": false, "description": "Zone polygon vertex expressed in meters", "properties": {"x": {"description": "Horizontal coordinate of the zone vertex, in meters", "format": "double", "type": "number"}, "y": {"description": "Vertical coordinate of the zone vertex, in meters", "format": "double", "type": "number"}}, "required": ["x", "y"], "type": "object", "uniqueItems": true}, "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", "examples": [[{"x": 732, "y": 1821}, {"x": 732.5, "y": 1731}, {"x": 837.5, "y": 1731.5}, {"x": 839, "y": 1821}]], "items": {"$ref": "#/components/schemas/zone_vertex"}, "type": "array"}, "zone_vertices_m": {"description": "Vertices used to define a zone boundary, expressed in meters", "examples": [[{"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": {"$ref": "#/components/schemas/zone_vertex_m"}, "type": "array"}, "zones": {"description": "Zone records returned by a list response", "items": {"$ref": "#/components/schemas/zone"}, "type": "array"}, "zscaler_sub_locations": {"description": "`sub-locations` can be used for specific uses cases to define different configuration based on the user network", "items": {"$ref": "#/components/schemas/tunnel_provider_options_zscaler_sub_location"}, "type": "array"}}, "securitySchemes": {"apiToken": {"description": "Preferred authentication method for automation and integrations. Send the API token in the HTTP `Authorization` header.\n\n**Format**:\n `Authorization: Token {apitoken}`\n\n**Notes**:\n* An API token generated for a specific admin has the same privileges as that admin\n* An API token is automatically removed if it is not used for more than 90 days\n* SSO admins cannot generate admin API tokens. Use organization API tokens when scoped Org/Site privileges are needed.", "in": "header", "name": "Authorization", "type": "apiKey"}, "csrfToken": {"description": "Session-based authentication for browser or login/password flows. After a successful [Login](/#operations/login) request, Mist returns a `csrftoken` cookie. Send that value in the `X-CSRFToken` header on later API requests that use the login session.\n\n**Format**:\n```\nX-CSRFToken: vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx\n```\n\nFor automation, API Token authentication is preferred.", "in": "header", "name": "X-CSRFToken", "type": "apiKey"}}}}