Juniper Mist AI Orgs MxClusters API

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.

OpenAPI Specification

mist-ai-orgs-mxclusters-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    email: tmunzer@juniper.net
    name: Thomas Munzer
  description: '> Version: **2604.1.1**

    >

    > Date: **May 13, 2026**

    <div class="notification"> NOTE:<br>Some important API changes will be introduced. Please make sure to read the <a href="https://www.juniper.net/documentation/us/en/software/mist/api/http/guides/important-api-changes">announcements</a> </div>


    ---

    ## Additional Documentation

    * [Mist Automation Guide](https://www.juniper.net/documentation/us/en/software/mist/automation-integration/index.html)

    * [Mist Location SDK](https://www.juniper.net/documentation/us/en/software/mist/location-services/topics/concept/mist-how-get-mist-sdk.html)

    * [Mist Product Updates](https://www.juniper.net/documentation/us/en/software/mist/product-updates/)


    ## Helpful Resources

    * [API Sandbox and Exercises](https://api-class.mist.com/)

    * [Postman Collection, Runners and Webhook Samples](https://www.postman.com/juniper-mist/workspace/mist-systems-s-public-workspace)

    * [Python Script Examples](https://github.com/tmunzer/mist_library)

    * [API Demo Apps](https://apps.mist-lab.fr/)

    * [Juniper Blog](https://blogs.juniper.net/)


    ## Mist Web Browser Extension:

    * Google Chrome, Microsoft Edge and other Chromium-based browser: [Chrome Web Store](https://chromewebstore.google.com/detail/mist-extension/ejhpdcljeamillfhdihkkmoakanpbplh)

    * Firefox: [Firefox Add-ons](https://addons.mozilla.org/en-US/firefox/addon/mist-extension/)


    ---'
  license:
    name: MIT
    url: https://raw.githubusercontent.com/tmunzer/Mist-OAS3.0/main/LICENSE
  title: Mist Admins Orgs MxClusters API
  version: 2604.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: []
- basicAuth: []
- basicAuth: []
  csrfToken: []
tags:
- 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
paths:
  /api/v1/orgs/{org_id}/mxclusters:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get List of Org MxEdge Clusters
      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
    post:
      description: Create MxCluster
      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}:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxcluster_id'
    delete:
      description: Delete Org MXEdge Cluster
      operationId: deleteOrgMxEdgeCluster
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: deleteOrgMxEdgeCluster
      tags:
      - Orgs MxClusters
    get:
      description: Get Org MxEdge Cluster Details
      operationId: getOrgMxEdgeCluster
      responses:
        '200':
          $ref: '#/components/responses/Mxcluster'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: getOrgMxEdgeCluster
      tags:
      - Orgs MxClusters
    put:
      description: Update Org MxEdge Cluster
      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
components:
  schemas:
    mxcluster_tunterm_hosts_order:
      description: List of index of tunterm_hosts
      items:
        type: integer
      type: array
    id:
      description: Unique ID of the object instance in the Mist Organization
      examples:
      - 53f10664-3ce8-4c27-b382-0ef66432349f
      format: uuid
      readOnly: true
      type: string
    tunterm_dhcpd_type:
      default: relay
      description: 'enum: `relay`'
      enum:
      - relay
      type: string
    strings:
      items:
        type: string
      type: array
      uniqueItems: true
    mxcluster_rad_auth_server_keywrap_format:
      default: ascii
      description: 'if used for Mist APs. enum: `ascii`, `hex`'
      enum:
      - ascii
      - hex
      type:
      - string
      - 'null'
    mxedge_mgmt_oob_ip_type:
      default: dhcp
      description: 'enum: `dhcp`, `disabled`, `static`'
      enum:
      - dhcp
      - disabled
      - static
      type: string
    mxedge_das_coa_server:
      additionalProperties: false
      properties:
        disable_event_timestamp_check:
          default: false
          description: Whether to disable Event-Timestamp Check
          type: boolean
        enabled:
          type: boolean
        host:
          description: This server configured to send CoA|DM to mist edges
          type: string
        port:
          default: 3799
          description: Mist edges will allow this host on this port
          type: integer
        require_message_authenticator:
          default: false
          description: Whether to require Message-Authenticator in requests
          type: boolean
        secret:
          format: password
          type: string
      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
    response_http403:
      additionalProperties: false
      properties:
        detail:
          examples:
          - You do not have permission to perform this action.
          type: string
      type: object
    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:
      description: MxCluster
      properties:
        created_time:
          $ref: '#/components/schemas/created_time'
        for_site:
          readOnly: true
          type: boolean
        id:
          $ref: '#/components/schemas/id'
        mist_das:
          $ref: '#/components/schemas/mxedge_das'
        mist_nac:
          $ref: '#/components/schemas/mxcluster_nac'
        modified_time:
          $ref: '#/components/schemas/modified_time'
        mxedge_mgmt:
          $ref: '#/components/schemas/mxedge_mgmt'
        name:
          type: string
        org_id:
          $ref: '#/components/schemas/org_id'
        proxy:
          $ref: '#/components/schemas/proxy'
        radsec:
          $ref: '#/components/schemas/mxcluster_radsec'
        radsec_tls:
          $ref: '#/components/schemas/mxcluster_radsec_tls'
        site_id:
          $ref: '#/components/schemas/site_id'
        tunterm_ap_subnets:
          $ref: '#/components/schemas/mxcluster_tunterm_ap_subnets'
        tunterm_dhcpd_config:
          $ref: '#/components/schemas/tunterm_dhcpd_config'
        tunterm_extra_routes:
          $ref: '#/components/schemas/mxcluster_tunterm_extra_routes'
        tunterm_hosts:
          $ref: '#/components/schemas/mxcluster_tunterm_hosts'
        tunterm_hosts_order:
          $ref: '#/components/schemas/mxcluster_tunterm_hosts_order'
        tunterm_hosts_selection:
          $ref: '#/components/schemas/mxcluster_tunterm_hosts_selection'
        tunterm_monitoring:
          $ref: '#/components/schemas/mxcluster_tunterm_monitoring'
        tunterm_monitoring_disabled:
          type: boolean
      type: object
    mxcluster_nac:
      additionalProperties: false
      properties:
        acct_server_port:
          default: 1813
          type: integer
        auth_server_port:
          default: 1812
          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
          type: boolean
        secret:
          examples:
          - testing123
          type: string
      type: object
    mxcluster_radsec:
      additionalProperties: false
      description: MxEdge RadSec Configuration
      properties:
        acct_servers:
          $ref: '#/components/schemas/mxcluster_radsec_acct_servers'
        auth_servers:
          $ref: '#/components/schemas/mxcluster_radsec_auth_servers'
        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'
        proxy_hosts:
          $ref: '#/components/schemas/mxcluster_radsec_proxy_hosts'
        server_selection:
          $ref: '#/components/schemas/mxcluster_radsec_server_selection'
        src_ip_source:
          $ref: '#/components/schemas/mxcluster_radsec_src_ip_source'
      type: object
    mxcluster_tunterm_ap_subnets:
      description: List of subnets where we allow AP to establish Mist Tunnels from
      items:
        type: string
      type: array
    mxedge_mgmt:
      additionalProperties: false
      properties:
        config_auto_revert:
          default: false
          type: boolean
        fips_enabled:
          default: false
          type: boolean
        mist_password:
          examples:
          - MIST_PASSWORD
          type: string
        oob_ip_type:
          $ref: '#/components/schemas/mxedge_mgmt_oob_ip_type'
        oob_ip_type6:
          $ref: '#/components/schemas/mxedge_mgmt_oob_ip_type6'
        root_password:
          examples:
          - ROOT_PASSWORD
          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
    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
          type: boolean
        servers:
          $ref: '#/components/schemas/strings'
        type:
          $ref: '#/components/schemas/tunterm_dhcpd_type'
      type: object
    proxy:
      additionalProperties: false
      description: Proxy Configuration to talk to Mist
      properties:
        disabled:
          default: false
          examples:
          - true
          type: boolean
        url:
          examples:
          - https://proxy.corp.com:8080/
          type: string
      type: object
    mxclusters:
      items:
        $ref: '#/components/schemas/mxcluster'
      type: array
    site_id:
      examples:
      - 441a1214-6928-442a-8e92-e1d34b8ec6a6
      format: uuid
      readOnly: true
      type: string
    mxcluster_nac_client_ip:
      additionalProperties: false
      properties:
        require_message_authenticator:
          default: false
          description: Whether to require Message-Authenticator in requests
          type: boolean
        secret:
          description: If different from above
          type: string
        site_id:
          description: Present only for 3rd party clients
          examples:
          - 00000000-0000-0000-1234-000000000000
          format: uuid
          type: string
        vendor:
          $ref: '#/components/schemas/mxcluster_nac_client_vendor'
      type: object
    response_http404:
      additionalProperties: false
      properties:
        id:
          type: string
      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
    tunterm_monitoring:
      items:
        $ref: '#/components/schemas/tunterm_monitoring_item'
      type: array
    mxcluster_nac_client_vendor:
      description: 'convention to be followed is : "<vendor>-<variant>", <variant> 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_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
    response_http400:
      additionalProperties: false
      properties:
        detail:
          examples:
          - 'JSON parse error - Expecting value: line 5 column 8 (char 56)'
          type: string
      type: object
    mxcluster_radsec_auth_server:
      additionalProperties: false
      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'
        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: Authentication request retry
          type: integer
        secret:
          description: Secret of RADIUS server
          format: password
          type: string
        ssids:
          $ref: '#/components/schemas/mxcluster_radsec_auth_server_ssids'
        timeout:
          default: 5
          description: Authentication request timeout, in seconds
          type: integer
      type: object
    mxcluster_tunterm_hosts_selection:
      default: shuffle
      description: "Ordering of tunterm_hosts for mxedge 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_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
    response_http429:
      additionalProperties: false
      properties:
        detail:
          examples:
          - Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold
          type: string
      type: object
    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
    mxedge_mgmt_oob_ip_type6:
      default: autoconf
      description: 'enum: `autoconf`, `dhcp`, `disabled`, `static`'
      enum:
      - autoconf
      - dhcp
      - disabled
      - static
      type: string
    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_radsec_tls:
      additionalProperties: false
      properties:
        keypair:
          type: string
      type: object
    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
    mxedge_das:
      additionalProperties: false
      description: Configure cloud-assisted dynamic authorization service on this cluster of mist edges
      properties:
        coa_servers:
          $ref: '#/components/schemas/mxedge_das_coa_servers'
        enabled:
          default: false
          type: boolean
      type: object
    mxcluster_radsec_acct_server:
      additionalProperties: false
      properties:
        host:
          description: IP / hostname of RADIUS server
          type: string
        port:
          default: 1813
          description: Acct port of RADIUS server
          type: integer
        secret:
          description: Secret of RADIUS server
          format: password
          type: string
        ssids:
          $ref: '#/components/schemas/mxcluster_radsec_acct_server_ssids'
      type: object
    mxcluster_tunterm_monitoring:
      items:
        $ref: '#/components/schemas/tunterm_monitoring'
      type: array
    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
    tunterm_monitoring_protocol:
      description: 'enum: `arp`, `ping`, `tcp`'
      enum:
      - arp
      - ping
      - tcp
      examples:
      - tcp
      minLength: 1
      type: string
    response_http401:
      additionalProperties: false
      properties:
        detail:
          examples:
          - Authentication credentials were not provided.
          type: string
      type: object
    mxcluster_tunterm_extra_route:
      additionalProperties: false
      properties:
        via:
          type: string
      type: object
    org_id:
      examples:
      - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61
      format: uuid
      readOnly: true
      type: string
    tunterm_dhcpd_config_property:
      additionalProperties: false
      properties:
        enabled:
          default: false
          type: boolean
        servers:
          $ref: '#/components/schemas/strings'
        type:
          $ref: '#/components/schemas/tunterm_dhcpd_type'
      type: object
    mxcluster_nac_client_ips:
      additionalProperties:
        $ref: '#/components/schemas/mxcluster_nac_client_ip'
      type: object
    modified_time:
      description: When the object has been modified for the last time, in epoch
      format: double
      readOnly: true
      type: number
    created_time:
      description: When the object has been created, in epoch
      format: double
      readOnly: true
      type: number
    tunterm_monitoring_item:
      additionalProperties: false
      properties:
        host:
          description: Can be ip, ipv6, hostname
          examples:
          - 10.2.8.15
          minLength: 1
          type: string
        port:
          description: When `protocol`==`tcp`
          examples:
          - 80
          type: integer
        protocol:
          $ref: '#/components/schemas/tunterm_monitoring_protocol'
        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
          examples:
          - 300
          type: integer
      type: object
  responses:
    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
    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
    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’t exist or resource doesn’ 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
    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
    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
    OK:
      description: OK
    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
  parameters:
    org_id:
      in: path
      name: org_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
    page:
      in: query
      name: page
      schema:
        default: 1
        minimum: 1
        type: integer
    limit:
      in: query
      name: limit
      schema:
        default: 100
        minimum: 0
        type: integer
  examples:
    HTTP400Example:
      value:
        detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)'
    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
    HTTP429Example:
      value:
        detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold
    HTTP403Example:
      value:
        detail: You do not have permission to perform this action.
    HTTP401Example:
      value:
        detail: Authentication credentials were not provided.
    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
  securitySchemes:
    apiToken:
      description: "Like many other API providers, it’s also possible to generate API Tokens to be used (in HTTP Header) for authentication. An API token ties to a Admin with equal or less privileges.\n\n**Format**:\n  API Token value format is `Token {apitoken}`\n\n**Notes**:\n* an API token generated for a specific admin has the same privilege as the user\n* an API token will be automatically removed if not used for > 90 days\n* SSO admins cannot generate these API tokens. Refer Org level API tokens which can have privileges of a specific Org/Site for more information."
      in: header
      name: Authorization
      type: apiKey
    basicAuth:
      description: While our current UI uses Session / Cookie-based authentication, it’s also possible to do Basic Auth.
      scheme: basic
      type: http
    csrfToken:
      description: "This protects the website against [Cross Site Request Forgery](https://en.wikipedia.org/wiki/Cross-site_request_forgery), all the POST / PUT / DELETE APIs needs to have CSRF token in the AJAX Request header when using Login/Password authentication (with or without MFA)\n\n\nThe CSRF Token is sent back by Mist in the Cookies from the Login Response API Call:\n`cookies[csrftoken]` \n\nThe CSRF Token must be added in the HTTP Request Headers:\n```\nX-CSRFToken: vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx\n```"
      in: header
      name: X-CSRFToken
      type: apiKey