Mist Orgs JSI API

Juniper Support Insight is a free service provided to all Mist customers. You can adopt your devices via a few lines CLI commands. Allowing you to * get some basic information about the adopted devices * web shell into device (write privilege required) \n* upgrade (write privilege required)

OpenAPI Specification

mist-orgs-jsi-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    email: tmunzer@juniper.net
    name: Thomas Munzer
  description: '> Version: **2606.1.1**

    >

    > Date: **July 10, 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 JSI API
  version: 2606.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: []
- csrfToken: []
tags:
- description: "Juniper Support Insight is a free service provided to all Mist customers.\nYou can adopt your devices via a few lines CLI commands. Allowing you to \n* get some basic information about the adopted devices \n* web shell into device (write privilege required) \\n* upgrade (write privilege required)"
  name: Orgs JSI
paths:
  /api/v1/orgs/{org_id}/jsi/devices:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: List organization devices connected to Juniper Support Insights (JSI), optionally filtered by model, serial number, or MAC address.
      operationId: listOrgJsiDevices
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      - description: Filter results by device model
        in: query
        name: model
        schema:
          examples:
          - AP43
          type: string
      - description: Filter results by device serial number
        in: query
        name: serial
        schema:
          examples:
          - FXLH2015150025
          type: string
      - description: Filter results by MAC address
        in: query
        name: mac
        schema:
          examples:
          - 5c5b350e0001
          type: string
      responses:
        '200':
          $ref: '#/components/responses/JsiDevices'
        '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: listOrgJsiDevices
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/devices/outbound_ssh_cmd:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Return the outbound SSH registration command used to onboard Junos devices to Juniper Support Insights (JSI).
      operationId: adoptOrgJsiDevice
      responses:
        '200':
          $ref: '#/components/responses/JunosRegisterCmd'
        '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: adoptOrgJsiDevice
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/devices/{device_mac}/shell:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/device_mac'
    post:
      description: Create a WebSocket-backed shell session for a JSI-connected device identified by MAC address.
      operationId: createOrgJsiDeviceShellSession
      responses:
        '200':
          $ref: '#/components/responses/WebsocketSessionWithUrl'
        '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: createOrgJsiDeviceShellSession
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/inventory:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: "This gets all devices purchased from the accounts associated with the Org \n  * Fetch Install base devices for all linked accounts and associated account of the linked accounts. \n  * The primary and the associated account ids will be queries from SFDC by passing the linked account \n  * Returns only the device centric details of the Install base device. No customer specific information will be returned."
      operationId: listOrgJsiPastPurchases
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      - description: Filter results by one or more device models. Supports comma-separated values
        in: query
        name: model
        schema:
          examples:
          - AP43
          type: string
      - description: Filter results by device serial number
        in: query
        name: serial
        schema:
          examples:
          - FXLH2015150025
          type: string
      responses:
        '200':
          $ref: '#/components/responses/JsiInventory'
        '400':
          $ref: '#/components/responses/JsiInventoryError'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: listOrgJsiPastPurchases
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/inventory/count:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Count devices purchased from the accounts associated with the Org
      operationId: countOrgJsiAssetsAndContracts
      parameters:
      - description: 'Field used to group this count response. enum: `account_id`, `claimed`, `has_support`, `end_of_sale_time`, `eos_time`, `version_time`, `model`, `sku`, `status`, `type`, `version`, `warranty_type`'
        in: query
        name: distinct
        schema:
          $ref: '#/components/schemas/jsi_inventory_count_distinct'
      - $ref: '#/components/parameters/limit'
      responses:
        '200':
          $ref: '#/components/responses/Count'
        '400':
          $ref: '#/components/responses/JsiInventoryError'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: countOrgJsiAssetsAndContracts
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/inventory/search:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: "This gets all devices purchased from the accounts associated with the Org \n  * Fetch Install base devices for all linked accounts and associated account of the linked accounts. \n  * The primary and the associated account ids will be queries from SFDC by passing the linked account \n  * Returns only the device centric details of the Install base device. No customer specific information will be returned."
      operationId: searchOrgJsiAssetsAndContracts
      parameters:
      - description: Device claim status, `true` for claimed devices, `false` for all devices. Accepts multiple comma-separated boolean values.
        in: query
        name: claimed
        schema:
          examples:
          - true,false
          - true
          type: boolean
      - description: Filter results by device model. Accepts multiple comma-separated values.
        in: query
        name: model
        schema:
          examples:
          - QFX10000-36Q,QFX10000-30C
          - AP43
          type: string
      - description: Filter results by device serial number. Accepts multiple comma-separated values.
        in: query
        name: serial
        schema:
          examples:
          - ACNP4666,ACNP6969
          - FXLH2015150025
          type: string
      - description: Filter results by SKU. Accepts multiple comma-separated values.
        in: query
        name: sku
        schema:
          examples:
          - QFX10000-36Q,QFX10000-30C
          - EX2300
          type: string
      - description: 'Device status. enum: `all`, `connected`, `disconnected`'
        in: query
        name: status
        schema:
          $ref: '#/components/schemas/device_status'
      - description: 'Device warranty type used to filter Juniper Support Insight inventory. enum: `Standard Hardware Warranty`, `Enhanced Hardware Warranty`, `Dead On Arrival Warranty`, `Limited Lifetime Warranty`, `Software Warranty`, `Limited Lifetime Warranty for WLA`, `Warranty-JCPO EOL (DOA Not Included)`, `MIST Enhanced Hardware Warranty`, `MIST Standard Warranty`, `Determine Lifetime warranty`'
        in: query
        name: warranty_type
        schema:
          $ref: '#/components/schemas/jsi_warranty_type'
      - description: Filter devices with End Of Sale date after this date
        in: query
        name: end_of_sale_after
        schema:
          examples:
          - '2024-01-01'
          type: string
      - description: Filter devices with End Of Sale date before this date
        in: query
        name: end_of_sale_before
        schema:
          examples:
          - '2025-12-31'
          type: string
      - description: Filter devices with End Of Support date after this date
        in: query
        name: eos_after
        schema:
          examples:
          - '2024-01-01'
          type: string
      - description: Filter devices with End Of Support date before this date
        in: query
        name: eos_before
        schema:
          examples:
          - '2025-12-31'
          type: string
      - description: Filter devices with OS Version End Of Support date after this date
        in: query
        name: version_eos_after
        schema:
          examples:
          - '2024-01-01'
          type: string
      - description: Filter devices with OS Version End Of Support date before this date
        in: query
        name: version_eos_before
        schema:
          examples:
          - '2025-12-31'
          type: string
      - description: Indicates if the device is covered under active support contract. Accepts multiple comma-separated boolean values.
        in: query
        name: has_support
        schema:
          examples:
          - true,false
          - true
          type: boolean
      - description: To get the onboarded devices that are affected by the SIRT ID
        in: query
        name: sirt_id
        schema:
          examples:
          - JSA12345
          type: string
      - description: To get the onboarded devices that are affected by the PBN ID
        in: query
        name: pbn_id
        schema:
          examples:
          - PBN67890
          type: string
      - description: Wildcards for `serial`, `model`, `account_id`
        in: query
        name: text
        schema:
          type: string
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/sort'
      - $ref: '#/components/parameters/search_after'
      responses:
        '200':
          $ref: '#/components/responses/JsiInventorySearch'
        '400':
          $ref: '#/components/responses/JsiInventoryError'
        '401':
          $ref: '#/components/responses/HTTP401'
        '403':
          $ref: '#/components/responses/HTTP403'
        '404':
          $ref: '#/components/responses/HTTP404'
        '429':
          $ref: '#/components/responses/HTTP429'
      summary: searchOrgJsiAssetsAndContracts
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/pbn/count:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get count of PBN advisories grouped by specified field
      operationId: countOrgJsiPbn
      parameters:
      - description: 'Field to group by enum: `versions`, `models`, `customer_risk`, `bug_type`'
        in: query
        name: distinct
        required: true
        schema:
          $ref: '#/components/schemas/count_pbn_distinct'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      responses:
        '200':
          $ref: '#/components/responses/JsiPbnCount'
        '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: countOrgJsiPbn
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/pbn/search:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Text search for PBN (Problem Bug Notification) advisories. Search can be done on versions, models, customer_risk, id, and bug_type fields.
      operationId: searchOrgJsiPbn
      parameters:
      - description: OS versions to search for
        in: query
        name: versions
        schema:
          examples:
          - 20.4R3
          type: string
      - description: Device models to search for
        in: query
        name: models
        schema:
          type: string
      - description: Customer risk level to filter by
        in: query
        name: customer_risk
        schema:
          type: string
      - description: PBN ID to search for
        in: query
        name: id
        schema:
          examples:
          - '1403338'
          type: string
      - description: Bug type to filter by
        in: query
        name: bug_type
        schema:
          type: string
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/search_after'
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      responses:
        '200':
          $ref: '#/components/responses/JsiPbnSearch'
        '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: searchOrgJsiPbn
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/sirt/count:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get count of SIRT advisories grouped by specified field
      operationId: countOrgJsiSirt
      parameters:
      - description: 'Field to group by. enum: `jsa_updated_date`, `models`, `severity`, `versions`'
        in: query
        name: distinct
        required: true
        schema:
          $ref: '#/components/schemas/count_sirt_distinct'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      responses:
        '200':
          $ref: '#/components/responses/JsiSirtCount'
        '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: countOrgJsiSirt
      tags:
      - Orgs JSI
  /api/v1/orgs/{org_id}/jsi/sirt/search:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Search and get all the SIRT for the onboarded devices. Search can be done on severity, id, updated_after, updated_before, published_after, published_before, models, versions, and text fields.
      operationId: searchOrgJsiSirt
      parameters:
      - description: Filter results by severity
        in: query
        name: severity
        schema:
          type: string
      - description: Filter results by identifier
        in: query
        name: id
        schema:
          examples:
          - JSA100053
          type: string
      - description: JSA Updated date to be filtered after this date
        in: query
        name: updated_after
        schema:
          type: string
      - description: JSA Updated date to be filtered before this date
        in: query
        name: updated_before
        schema:
          type: string
      - description: JSA Published date to be filtered after this date
        in: query
        name: published_after
        schema:
          type: string
      - description: JSA Published date to be filtered before this date
        in: query
        name: published_before
        schema:
          type: string
      - description: Filter results by models
        in: query
        name: models
        schema:
          type: string
      - description: Software version affected by the SIRT
        in: query
        name: versions
        schema:
          examples:
          - 20.4R3
          type: string
      - description: Wildcards search on os_version_affected, affected_models, severity, jsa_id
        in: query
        name: text
        schema:
          type: string
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/sort'
      - $ref: '#/components/parameters/search_after'
      - $ref: '#/components/parameters/start'
      - $ref: '#/components/parameters/end'
      responses:
        '200':
          $ref: '#/components/responses/JsiSirtSearch'
        '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: searchOrgJsiSirt
      tags:
      - Orgs JSI
components:
  schemas:
    websocket_session_with_url:
      additionalProperties: false
      description: Response containing a WebSocket session handle and connection URL
      properties:
        session:
          description: Identifier used to correlate output on the WebSocket stream
          examples:
          - 19e73828-937f-05e6-f709-e29efdb0a82b
          type: string
        url:
          description: WebSocket URL returned for connecting to this session
          examples:
          - wss://api-ws.mist.com/ssh?jwt=xxxx
          type: string
      required:
      - session
      - url
      type: object
    jsi_sirt_search:
      additionalProperties: false
      description: Juniper Security Intelligence SIRT search response with result metadata
      properties:
        end:
          description: Upper bound timestamp for the SIRT search window
          type: integer
        limit:
          description: Number of results to return
          type: integer
        next:
          description: Pagination URL for the next page of SIRT advisories
          type: string
        results:
          description: List of SIRT advisories
          items:
            $ref: '#/components/schemas/jsi_sirt_item'
          type: array
        start:
          description: Lower bound timestamp for the SIRT search window
          type: integer
        total:
          description: Count of SIRT advisories matching the search
          type: integer
      type: object
    jsi_sirt_item:
      additionalProperties: false
      description: Juniper Security Intelligence SIRT advisory item
      properties:
        cvss_score:
          description: Common Vulnerability Scoring System score for the SIRT advisory
          type: number
        id:
          description: Unique SIRT or JSA advisory identifier from Juniper Support Insights
          examples:
          - JSA100053
          type: string
        models:
          description: Device models affected by the SIRT advisory
          items:
            type: string
          type: array
        problem:
          description: Issue details described by the SIRT advisory
          type: string
        published_date:
          description: Release date of the SIRT issue
          type: integer
        release_notes:
          description: Release notes if any
          type: string
        severity:
          description: Security severity assigned to the SIRT advisory
          type: string
        solution:
          description: Recommended fix or remediation for the security issue
          type: string
        title:
          description: Summary title for the SIRT advisory
          type: string
        updated_date:
          description: Time when the JSA advisory was last updated
          type: integer
        versions:
          description: Software versions affected by the SIRT advisory
          items:
            type: string
          type: array
        workaround:
          description: Mitigation or workaround guidance for the SIRT advisory
          type: string
      type: object
    device_status:
      default: all
      description: 'enum: `all`, `connected`, `disconnected`'
      enum:
      - all
      - connected
      - disconnected
      type: string
    response_device_config_cmd:
      additionalProperties: false
      description: Device configuration command response
      properties:
        cmd:
          description: Configuration command returned for the device
          type: string
      required:
      - cmd
      type: object
    response_http429:
      additionalProperties: false
      description: Standard HTTP 429 rate limit error response
      properties:
        detail:
          description: Human-readable explanation of the rate limit error
          examples:
          - Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold
          type: string
      type: object
    js_inventory:
      description: JSI inventory items returned for an organization
      items:
        $ref: '#/components/schemas/js_inventory_item'
      type: array
    response_http401:
      additionalProperties: false
      description: Standard HTTP 401 authentication error response
      properties:
        detail:
          description: Human-readable explanation of the authentication error
          examples:
          - Authentication credentials were not provided.
          type: string
      type: object
    jsi_warranty_type:
      description: 'Warranty type label for Juniper Support Insight (JSI) devices. enum: `Standard Hardware Warranty`, `Enhanced Hardware Warranty`, `Dead On Arrival Warranty`, `Limited Lifetime Warranty`, `Software Warranty`, `Limited Lifetime Warranty for WLA`, `Warranty-JCPO EOL (DOA Not Included)`, `MIST Enhanced Hardware Warranty`, `MIST Standard Warranty`, `Determine Lifetime warranty`'
      enum:
      - Standard Hardware Warranty
      - Enhanced Hardware Warranty
      - Dead On Arrival Warranty
      - Limited Lifetime Warranty
      - Software Warranty
      - Limited Lifetime Warranty for WLA
      - Warranty-JCPO EOL (DOA Not Included)
      - MIST Enhanced Hardware Warranty
      - MIST Standard Warranty
      - Determine Lifetime warranty
      type: string
    org_id:
      description: Unique identifier of a Mist organization
      examples:
      - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61
      format: uuid
      readOnly: true
      type: string
    response_http403:
      additionalProperties: false
      description: Standard HTTP 403 permission error response
      properties:
        detail:
          description: Human-readable explanation of the permission error
          examples:
          - You do not have permission to perform this action.
          type: string
      type: object
    response_detail_string:
      additionalProperties: false
      description: Response containing a human-readable detail message
      properties:
        detail:
          description: Human-readable detail message returned by the API
          type: string
      type: object
    count_results:
      description: List of count result rows
      items:
        $ref: '#/components/schemas/count_result'
      type: array
      uniqueItems: true
    response_http400:
      additionalProperties: false
      description: Standard HTTP 400 bad request error response
      properties:
        detail:
          description: Human-readable explanation of the bad request error
          examples:
          - 'JSON parse error - Expecting value: line 5 column 8 (char 56)'
          type: string
      type: object
    last_seen:
      description: Timestamp indicating when the entity was last seen
      examples:
      - 1470417522
      format: double
      readOnly: true
      type:
      - number
      - 'null'
    jsi_pbn_item:
      additionalProperties: false
      description: PBN (Problem Bug Notification) advisory item
      properties:
        bug_type:
          description: Type of the bug (Day-1, Regression)
          type: string
        customer_risk:
          description: Customer impact risk level for the PBN advisory
          type: string
        fixed_in:
          description: Release in which the issue was fixed
          type: string
        id:
          description: Unique PBN advisory identifier from Juniper Support Insights
          examples:
          - '1403338'
          type: string
        introduced_in:
          description: Release where the PBN issue was introduced
          type: string
        models:
          description: Device models affected by the PBN issue
          items:
            type: string
          type: array
        product_family:
          description: Product family affected by the PBN issue
          type: string
        release_notes:
          description: Release notes for this PBN
          type: string
        restoration:
          description: Steps recommended to restore service or recover from the PBN issue
          type: string
        title:
          description: Summary title for the PBN issue
          type: string
        updated_date:
          description: Time when the PBN advisory was last updated
          type: integer
        versions:
          description: Software versions affected by the PBN issue
          items:
            type: string
          type: array
        workaround:
          description: Mitigation or workaround guidance for the PBN issue
          type: string
        workaround_provided:
          description: Indicator of whether workaround guidance is available
          type: string
      type: object
    device_type:
      description: 'enum: `ap`, `gateway`, `switch`'
      enum:
      - ap
      - gateway
      - switch
      type: string
    count_pbn_distinct:
      description: 'Fields that can be used to group PBN advisory count results. enum: `versions`, `models`, `customer_risk`, `bug_type`'
      enum:
      - versions
      - models
      - customer_risk
      - bug_type
      examples:
      - versions
      type: string
    jse_devices:
      description: JSE devices returned for an organization
      items:
        $ref: '#/components/schemas/jse_device'
      type: array
    jse_device:
      additionalProperties: false
      description: JSE device reported for an organization
      properties:
        ext_ip:
          description: External IP address for the JSE device, when available
          type: string
        last_seen:
          $ref: '#/components/schemas/last_seen'
          description: Timestamp when the JSE device was last seen
        mac:
          description: Device MAC address for the JSE device
          type: string
        model:
          description: Device model for the JSE device
          type: string
        serial:
          description: Device serial number for the JSE device
          type: string
      type: object
    count_result:
      additionalProperties:
        type: string
      description: Count result row with the matching distinct field values
      properties:
        count:
          description: Number of matching items for the distinct value or values in this result
          type: integer
      required:
      - count
      type: object
    response_count:
      additionalProperties: false
      description: Distinct count response for time-bounded search results
      properties:
        distinct:
          description: Field used to group the count results
          type: string
        end:
          description: Search window end timestamp for the count request, in epoch seconds
          type: integer
        limit:
          description: Maximum number of distinct count results requested
          type: integer
        results:
          $ref: '#/components/schemas/count_results'
          description: Count results grouped by the distinct field
        start:
          description: Search window start timestamp for the count request, in epoch seconds
          type: integer
        total:
          description: Number of distinct result buckets returned
          type: integer
      required:
      - distinct
      - end
      - limit
      - results
      - start
      - total
      type: object
    count_sirt_distinct:
      description: 'Fields that can be used to group SIRT advisory count results. enum: `versions`, `models`, `severity`, `jsa_updated_date`'
      enum:
      - versions
      - models
      - severity
      - jsa_updated_date
      examples:
      - versions
      type: string
    jsi_inventory_count_distinct:
      description: 'Distinct field used when counting Juniper Support Insight inventory records. enum: `account_id`, `claimed`, `has_support`, `end_of_sale_time`, `eos_time`, `version_time`, `model`, `sku`, `status`, `type`, `version`, `warranty_type`'
      enum:
      - account_id
      - claimed
      - has_support
      - end_of_sale_time
      - eos_time
      - version_time
      - model
      - sku
      - status
      - type
      - version
      - warranty_type
      type: string
    jsi_pbn_search:
      additionalProperties: false
      description: Juniper Security Intelligence PBN search response with result metadata
      properties:
        end:
          description: Upper bound timestamp for the PBN search window
          type: integer
        limit:
          description: Number of results to return
          type: integer
        next:
          description: Pagination URL for the next page of PBN advisories


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