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

OpenAPI Specification

mist-ai-constants-events-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 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