Juniper Mist AI Constants Events API
API Calls to retrieve the definitions of the Mist events. These definitions are providing example of the Webhook payloads
API Calls to retrieve the definitions of the Mist events. These definitions are providing example of the Webhook payloads
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 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