Juniper Mist AI Orgs MxEdges API

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.

OpenAPI Specification

mist-ai-orgs-mxedges-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 MxEdges 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 (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
paths:
  /api/v1/orgs/{org_id}/mxedges:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get List of Org MxEdges
      operationId: listOrgMxEdges
      parameters:
      - description: Filter for org/site level mist edges
        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
    post:
      description: Create MxEdge
      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 Org MxEdge to Site
      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: For a Mist Edge in default state, it will show a random claim code like `135-546-673` which you can "claim" it into your Org
      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:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Count by Distinct Attributes of Org Mist Edges
      operationId: countOrgMxEdges
      parameters:
      - in: query
        name: distinct
        schema:
          $ref: '#/components/schemas/org_mxedge_count_distinct'
      - description: Mist edge id
        in: query
        name: mxedge_id
        schema:
          type: string
      - description: Mist edge site id
        in: query
        name: site_id
        schema:
          type: string
      - description: Mist edge cluster id
        in: query
        name: mxcluster_id
        schema:
          type: string
      - description: Model name
        in: query
        name: model
        schema:
          type: string
      - description: Debian code name (buster, bullseye)
        in: query
        name: distro
        schema:
          type: string
      - description: tunterm version
        in: query
        name: tunterm_version
        schema:
          type: string
      - description: Sort options, -prefix represents DESC order, default is -last_seen
        in: query
        name: sort
        schema:
          type: string
      - description: Whether to return device stats, default is false
        in: query
        name: stats
        schema:
          type: boolean
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      - $ref: '#/components/parameters/duration'
      - $ref: '#/components/parameters/limit'
      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
  /api/v1/orgs/{org_id}/mxedges/events/count:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Count by Distinct Attributes of Org Mist Edge Events
      operationId: countOrgSiteMxEdgeEvents
      parameters:
      - in: query
        name: distinct
        schema:
          $ref: '#/components/schemas/org_mxedge_events_count_distinct'
      - description: Mist edge id
        in: query
        name: mxedge_id
        schema:
          type: string
      - description: Mist edge cluster id
        in: query
        name: mxcluster_id
        schema:
          type: string
      - $ref: '#/components/parameters/mxedge_event_type'
      - description: Service running on mist edge(mxagent, tunterm etc)
        in: query
        name: service
        schema:
          type: string
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      - $ref: '#/components/parameters/duration'
      - $ref: '#/components/parameters/limit'
      responses:
        '200':
          $ref: '#/components/responses/Count'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: countOrgSiteMxEdgeEvents
      tags:
      - Orgs MxEdges
  /api/v1/orgs/{org_id}/mxedges/events/search:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Search Org Mist Edge Events
      operationId: searchOrgMistEdgeEvents
      parameters:
      - description: Mist edge id
        in: query
        name: mxedge_id
        schema:
          type: string
      - description: Mist edge cluster id
        in: query
        name: mxcluster_id
        schema:
          type: string
      - $ref: '#/components/parameters/mxedge_event_type'
      - description: Service running on mist edge(mxagent, tunterm etc)
        in: query
        name: service
        schema:
          type: string
      - description: Component like PS1, PS2
        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
  /api/v1/orgs/{org_id}/mxedges/search:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Search Org Mist Edges
      operationId: searchOrgMxEdges
      parameters:
      - $ref: '#/components/parameters/partial_filter_hostname_device'
      - description: Mist edge id
        in: query
        name: mxedge_id
        schema:
          type: string
      - description: Mist edge cluster id
        in: query
        name: mxcluster_id
        schema:
          type: string
      - $ref: '#/components/parameters/partial_filter_model'
      - description: Debian code name (buster, bullseye)
        in: query
        name: distro
        schema:
          type: string
      - description: tunterm version
        in: query
        name: tunterm_version
        schema:
          type: string
      - description: 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
  /api/v1/orgs/{org_id}/mxedges/unassign:
    parameters:
    - $ref: '#/components/parameters/org_id'
    post:
      description: Unassign Org MxEdge from Site
      operationId: unassignOrgMxEdgeFromSite
      requestBody:
        content:
          application/json:
            examples:
              Example:
                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/versions:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get Mist Edge Upgrade Information
      operationId: getOrgMxEdgeUpgradeInfo
      parameters:
      - description: Upgrade channel to follow, stable (default) / beta / alpha
        in: query
        name: channel
        schema:
          $ref: '#/components/schemas/get_org_mxedge_upgrade_info_channel'
      - description: Distro code name (e.g. `buster`, `bullseye`, ...)
        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
  /api/v1/orgs/{org_id}/mxedges/{mxedge_id}:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxedge_id'
    delete:
      description: Delete Org MxEdge
      operationId: deleteOrgMxEdge
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: deleteOrgMxEdge
      tags:
      - Orgs MxEdges
    get:
      description: Get Org MxEdge details
      operationId: getOrgMxEdge
      responses:
        '200':
          $ref: '#/components/responses/Mxedge'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: getOrgMxEdge
      tags:
      - Orgs MxEdges
    put:
      description: Update Org MxEdge
      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}:
    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
    delete:
      description: Remove MxEdge Image
      operationId: deleteOrgMxEdgeImage
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: deleteOrgMxEdgeImage
      tags:
      - Orgs MxEdges
    post:
      description: Attach up to 3 images to a mxedge
      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: In the case where a Mist Edge is replaced, you would need to unregister it. Which disconnects the currently the connected Mist Edge and allow another to register.
      operationId: restartOrgMxEdge
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: restartOrgMxEdge
      tags:
      - Orgs MxEdges
  /api/v1/orgs/{org_id}/mxedges/{mxedge_id}/services/tunterm/bounce_port:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxedge_id'
    post:
      description: Bounce TunTerm Data Ports
      operationId: bounceOrgMxEdgeDataPorts
      parameters: []
      requestBody:
        content:
          application/json:
            examples:
              Example:
                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 AP’s from TunTerm
      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: Control Services on a Mist Edge
      operationId: controlOrgMxEdgeServices
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: controlOrgMxEdgeServices
      tags:
      - Orgs MxEdges
  /api/v1/orgs/{org_id}/mxedges/{mxedge_id}/support:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxedge_id'
    post:
      description: Support / Upload Mist Edge support files
      operationId: uploadOrgMxEdgeSupportFiles
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: uploadOrgMxEdgeSupportFiles
      tags:
      - Orgs MxEdges
  /api/v1/orgs/{org_id}/mxedges/{mxedge_id}/unregister:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxedge_id'
    post:
      description: In the case where a Mist Edge is replaced, you would need to unregister it. Which disconnects the currently the connected Mist Edge and allow another to register.
      operationId: unregisterOrgMxEdge
      responses:
        '200':
          $ref: '#/components/responses/OK'
        '400':
          $ref: '#/components/responses/HTTP400'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: unregisterOrgMxEdge
      tags:
      - Orgs MxEdges
  /api/v1/orgs/{org_id}/mxedges/{mxedge_id}/vm_params:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/mxedge_id'
    get:
      description: Get Mist Edge VM parameters
      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
components:
  schemas:
    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
    mxedges_assign_mxedge_ids:
      items:
        format: uuid
        type: string
      type: array
    claim_codes:
      description: List of Claim Codes
      examples:
      - - 6JG8E-PTFV2-A9Z2N
        - DVH4V-SNMSZ-PDXBR
      items:
        description: Claim code
        type: string
      type: array
      uniqueItems: true
    strings:
      items:
        type: string
      type: array
      uniqueItems: true
    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
    response_mxedge_events_search:
      additionalProperties: false
      properties:
        end:
          examples:
          - 1694708579
          type: integer
        limit:
          examples:
          - 10
          type: integer
        next:
          type: string
        page:
          examples:
          - 3
          type: integer
        results:
          $ref: '#/components/schemas/mxedge_events'
        start:
          examples:
          - 1694622179
          type: integer
      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 vlans on which tunterm performs IGMP snooping
    timestamp:
      description: Epoch (seconds)
      format: double
      readOnly: true
      type: number
    tunterm_port_config:
      additionalProperties: false
      description: Ethernet port configurations
      properties:
        downstream_ports:
          $ref: '#/components/schemas/tunterm_port_config_downstream_ports'
        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'
        upstream_ports:
          $ref: '#/components/schemas/tunterm_port_config_upstream_ports'
      type: object
    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
    mxedge_versions:
      additionalProperties: false
      properties:
        mxagent:
          readOnly: true
          type: string
        tunterm:
          readOnly: true
          type: string
      readOnly: true
      type: object
    response_assign_success:
      additionalProperties: false
      properties:
        success:
          $ref: '#/components/schemas/strings'
      required:
      - success
      type: object
    mxedge_tunterm_multicast_mdns:
      additionalProperties: false
      properties:
        enabled:
          type: boolean
        vlan_ids:
          $ref: '#/components/schemas/strings'
      type: object
    response_http401:
      additionalProperties: false
      properties:
        detail:
          examples:
          - Authentication credentials were not provided.
          type: string
      type: object
    mxedge_vm_params:
      additionalProperties: false
      description: Mist Edge VM parameters
      properties:
        model:
          description: SKU
          examples:
          - ME-VM
          type: string
        name:
          description: User given name (optional)
          type: string
        user_data:
          description: Base64 encoded user data
          type: string
      type: object
    get_org_mxedge_upgrade_info_channel:
      default: stable
      description: 'enum: `alpha`, `beta`, `stable`'
      enum:
      - alpha
      - beta
      - stable
      type: string
    response_count:
      additionalProperties: false
      

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mist-ai/refs/heads/main/openapi/mist-ai-orgs-mxedges-api-openapi.yml