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 Constants Events 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 the definitions of the Mist events. These definitions are providing example of the Webhook payloads name: Constants Events paths: /api/v1/const/alarm_defs: get: description: 'Get List of brief definitions of all the supported alarm types. The example field contains an example payload as you would receive in the alarm webhook output. HA cluster node names will be specified in the `node` field, if 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/client_events: get: description: Get List of List of available Client Events operationId: listClientEventsDefinitions responses: '200': $ref: '#/components/responses/ConstClientEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listClientEventsDefinitions tags: - Constants Events /api/v1/const/device_events: get: description: Get list of available Device Events operationId: listDeviceEventsDefinitions responses: '200': $ref: '#/components/responses/ConstDeviceEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listDeviceEventsDefinitions tags: - Constants Events /api/v1/const/mxedge_events: get: description: Get List of available MX Edge Events operationId: listMxEdgeEventsDefinitions responses: '200': $ref: '#/components/responses/ConstMxEdgeEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listMxEdgeEventsDefinitions tags: - Constants Events /api/v1/const/nac_events: get: description: Get List of List of available NAC Client Events operationId: listNacEventsDefinitions responses: '200': $ref: '#/components/responses/ConstNacEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listNacEventsDefinitions tags: - Constants Events /api/v1/const/otherdevice_events: get: description: Supported Events Type operationId: listOtherDeviceEventsDefinitions responses: '200': $ref: '#/components/responses/ConstOtherDeviceEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listOtherDeviceEventsDefinitions tags: - Constants Events /api/v1/const/system_events: get: description: Get List of List of available System Events operationId: listSystemEventsDefinitions responses: '200': $ref: '#/components/responses/ConstSystemEvents' '400': $ref: '#/components/responses/HTTP400' '401': $ref: '#/components/responses/HTTP401' '403': $ref: '#/components/responses/HTTP403' '404': $ref: '#/components/responses/HTTP404' '429': $ref: '#/components/responses/HTTP429' summary: listSystemEventsDefinitions tags: - Constants Events components: responses: 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 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 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 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 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 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 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 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 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 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 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 schemas: const_nac_events_cert_san_upn: examples: - - suriyas@juniper.net 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 const_events: items: $ref: '#/components/schemas/const_event' type: array const_event: additionalProperties: false properties: description: type: string display: type: string example: additionalProperties: true type: object group: type: string key: type: string required: - key - display type: object site_id: examples: - 441a1214-6928-442a-8e92-e1d34b8ec6a6 format: uuid readOnly: true type: string response_http404: additionalProperties: false properties: id: type: string type: object const_alarm_definition: additionalProperties: false properties: display: description: Description of the alarm type examples: - Device offline type: string example: additionalProperties: true 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' group: description: Group to which the alarm belongs examples: - infrastructure type: string key: description: Key name of the alarm type examples: - device_down type: string marvis_suggestion_category: description: Marvis defined category to which the alarm belongs type: string severity: description: Severity of the alarm examples: - warn type: string required: - key - display - group - severity - fields type: object timestamp: description: Epoch (seconds) format: double readOnly: true type: number 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 response_http400: additionalProperties: false properties: detail: examples: - 'JSON parse error - Expecting value: line 5 column 8 (char 56)' type: string type: object const_alarm_definitions: items: $ref: '#/components/schemas/const_alarm_definition' type: array 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 const_nac_event: additionalProperties: false properties: ap: examples: - 5c5b355008c0 type: string bssid: examples: - 5c5b35548892 type: string cert_cn: examples: - suriyas type: string cert_expiry: examples: - 1711557441 type: integer cert_issuer: 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' cert_serial: examples: - 1300103d29e56ef083797bedc2000100103d29 type: string cert_subject: examples: - /CN=suriyas/emailAddress=suriyas@juniper.net type: string eap_type: examples: - EAP-TLS type: string nas_vendor: examples: - Mist type: string org_id: $ref: '#/components/schemas/org_id' random_mac: examples: - true type: boolean site_id: $ref: '#/components/schemas/site_id' ssid: examples: - Test_Suriya-SSID type: string timestamp: $ref: '#/components/schemas/timestamp' type: examples: - NAC_CLIENT_CERT_CHECK_SUCCESS type: string username: examples: - suriyas@juniper.net type: string wcid: examples: - b43637b0-f0d9-0a1d-1ec2-73c394a9f679 format: uuid type: string type: object const_nac_events: items: $ref: '#/components/schemas/const_nac_event' type: array 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 examples: 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 ConstClientEventsExample: value: - display: 11r Association key: CLIENT_AUTH_ASSOCIATION_11R 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 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 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 HTTP401Example: value: detail: Authentication credentials were not provided. ConstSystemEventsExample: value: - display: AP Disconnect group: ap_health key: ap_disconnected 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 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 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