openapi: 3.1.0 info: contact: email: tmunzer@juniper.net name: Thomas Munzer description: '> Version: **2604.1.1** > > Date: **May 13, 2026**
NOTE:
Some important API changes will be introduced. Please make sure to read the announcements
--- ## 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 Stats - Ports 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: API Calls to retrieve statistics about the Wired Ports at the Org level name: Orgs Stats - Ports paths: /api/v1/orgs/{org_id}/stats/ports/count: parameters: - $ref: '#/components/parameters/org_id' get: description: Count by Distinct Attributes of Switch/Gateway Ports at the Org level operationId: countOrgSwOrGwPorts parameters: - 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: Device identifier 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: Interface name in: query name: port_id schema: examples: - ge-2/0/39 type: string - description: Interface 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: Output packets in: query name: tx_pkts schema: examples: - 1000000 type: integer - description: Input packets in: query name: rx_pkts schema: examples: - 1000000 type: integer - description: Input bytes in: query name: rx_bytes schema: examples: - 1000000 type: integer - description: Output rate in: query name: tx_bps schema: examples: - 1000000 type: integer - description: Input rate in: query name: rx_bps schema: examples: - 1000000 type: integer - description: Multicast output packets in: query name: tx_mcast_pkts schema: examples: - 1000000 type: integer - description: Broadcast output packets in: query name: tx_bcast_pkts schema: examples: - 1000000 type: integer - description: Multicast input packets in: query name: rx_mcast_pkts schema: examples: - 1000000 type: integer - description: Broadcast input packets in: query name: rx_bcast_pkts schema: examples: - 1000000 type: integer - description: Port speed in: query name: speed schema: examples: - 1000000000 type: integer - description: If `up`==`true` in: query name: stp_state schema: $ref: '#/components/schemas/port_stp_state' - description: If `up`==`true` in: query name: stp_role schema: $ref: '#/components/schemas/port_stp_role' - description: If `up`==`true` && has Authenticator role 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: Site ID 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 /api/v1/orgs/{org_id}/stats/ports/search: parameters: - $ref: '#/components/parameters/org_id' get: description: 'Search Switch / Gateway Ports Stats. Returns a list of switch/gateway ports stats that match the search criteria. The response provide current/last port status and statistics within the hour. Traffic information (Tx/Rx) are cumulative counters since the last device reboot.' operationId: searchOrgSwOrGwPorts 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: If `up`==`true` && has Authenticator role 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: Device identifier in: query name: mac schema: type: string - description: Chassis identifier of the chassis type listed in: query name: neighbor_mac schema: type: string - description: Description supplied by the system on the interface E.g. "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. in: query name: poe_priority schema: $ref: '#/components/schemas/poe_priority' - description: Interface name in: query name: port_id schema: type: string - description: Interface mac address in: query name: port_mac schema: type: string - description: Port speed in: query name: speed schema: type: integer - description: If `up`==`true` in: query name: stp_state schema: $ref: '#/components/schemas/port_stp_state' - description: If `up`==`true` 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 components: schemas: response_count: additionalProperties: false properties: distinct: type: string end: type: integer limit: type: integer results: $ref: '#/components/schemas/count_results' start: type: integer total: type: integer required: - distinct - end - limit - results - start - total type: object stats_switch_ports: items: $ref: '#/components/schemas/stats_switch_port' type: array port_stp_role: description: 'enum: `alternate`, `backup`, `designated`, `disabled`, `root`, `root-prevented`' enum: - '' - alternate - backup - designated - disabled - root - root-prevented type: string response_http403: additionalProperties: false properties: detail: examples: - You do not have permission to perform this action. type: string type: object port_stp_state: description: 'enum: `blocking`, `disabled`, `forwarding`, `learning`, `listening`' enum: - '' - blocking - disabled - forwarding - learning - listening type: string count_results: items: $ref: '#/components/schemas/count_result' type: array uniqueItems: true tx_pkts: description: Amount of packets sent since connection examples: - 812204062 format: int64 readOnly: true type: - integer - 'null' count_result: additionalProperties: type: string properties: count: type: integer required: - count type: object tx_bps: description: Rate of transmitting traffic, bits/seconds, last known examples: - 634301 format: int64 readOnly: true type: - integer - 'null' 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_id: examples: - 441a1214-6928-442a-8e92-e1d34b8ec6a6 format: uuid readOnly: true type: string stats_switch_port_poe_mode: description: 'enum: `802.3af`, `802.3at`, `802.3bt`' enum: - 802.3af - 802.3at - 802.3bt type: string response_http404: additionalProperties: false properties: id: type: string type: object rx_bps: description: Rate of receiving traffic, bits/seconds, last known examples: - 60003 format: int64 readOnly: true type: - integer - 'null' response_http400: additionalProperties: false properties: detail: examples: - 'JSON parse error - Expecting value: line 5 column 8 (char 56)' type: string type: object tx_bytes: description: Amount of traffic sent since connection examples: - 211217389682 format: int64 readOnly: true type: - integer - 'null' 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 stats_switch_port: additionalProperties: false description: Switch port statistics properties: active: description: Indicates if interface is active/inactive readOnly: true type: boolean auth_state: $ref: '#/components/schemas/port_auth_state' disabled: description: Indicates if interface is disabled readOnly: true type: boolean for_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: 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' poe_disabled: description: Is the POE disabled readOnly: true type: boolean poe_mode: $ref: '#/components/schemas/stats_switch_port_poe_mode' poe_on: description: Is the device attached to POE readOnly: true type: boolean poe_priority: $ref: '#/components/schemas/poe_priority' port_id: examples: - ge-0/0/0 readOnly: true type: string port_mac: description: Interface MAC address examples: - 5c4527a96580 readOnly: true type: string port_usage: 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: Broadcast input packets readOnly: true type: integer rx_bps: $ref: '#/components/schemas/rx_bps' rx_bytes: $ref: '#/components/schemas/rx_bytes' rx_errors: description: Input errors readOnly: true type: integer rx_mcast_pkts: description: Multicast input packets readOnly: true type: integer rx_pkts: $ref: '#/components/schemas/rx_pkts' site_id: $ref: '#/components/schemas/site_id' speed: description: Port speed examples: - 1000 readOnly: true type: integer stp_role: $ref: '#/components/schemas/port_stp_role' stp_state: $ref: '#/components/schemas/port_stp_state' tx_bcast_pkts: description: Broadcast output packets readOnly: true type: integer tx_bps: $ref: '#/components/schemas/tx_bps' tx_bytes: $ref: '#/components/schemas/tx_bytes' tx_errors: description: Output errors readOnly: true type: integer tx_mcast_pkts: description: Multicast output packets readOnly: true type: integer tx_pkts: $ref: '#/components/schemas/tx_pkts' type: $ref: '#/components/schemas/stats_switch_port_type' 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 poe_priority: description: 'PoE priority. enum: `low`, `high`' enum: - low - high 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 port_auth_state: description: 'enum: `authenticated`, `authenticating`, `held`, `init`' enum: - '' - authenticated - authenticating - held - init type: string response_port_stats_search: additionalProperties: false properties: end: type: integer limit: type: integer next: type: string results: $ref: '#/components/schemas/stats_switch_ports' start: type: integer total: type: integer required: - limit - results - total type: object response_http401: additionalProperties: false properties: detail: examples: - Authentication credentials were not provided. type: string type: object org_id: examples: - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61 format: uuid readOnly: true type: string 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' search_org_sw_or_gw_ports_type: default: all description: 'enum: `switch`, `gateway`, `all`' enum: - switch - gateway - all type: string examples: CountExample: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 HTTP400Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' 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 HTTP401Example: value: detail: Authentication credentials were not provided. parameters: org_id: in: path name: org_id required: true schema: examples: - 000000ab-00ab-00ab-00ab-0000000000ab format: uuid type: string start: description: Start time (epoch timestamp in seconds, or relative string like "-1d", "-1w") in: query name: start schema: 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 duration: description: Duration like 7d, 2w in: query name: duration schema: default: 1d examples: - 10m 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 end: description: End time (epoch timestamp in seconds, or relative string like "-1d", "-2h", "now") in: query name: end schema: type: string limit: in: query name: limit schema: default: 100 minimum: 0 type: integer responses: 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 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 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 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 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