Tenable Inventory API

The Tenable Inventory API enables users to search for their organization's assets and the software installed on those assets. Additionally, API endpoints are provided to retrieve a list of asset and software properties that can be used as filters on endpoints that support them. For more information, see [Inventory](https://docs.tenable.com/exposure-management/Content/exposure-management/inventory/inventory.htm) in the _Tenable Exposure Management User Guide_.

OpenAPI Specification

tenable-inventory-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.0
  title: Downloads About Inventory API
  description: 'The Downloads API enables customers to access and download installation and update files for available Tenable products. You can use the API endpoints to list product pages, list downloads available for a specific product, and to download a file. The endpoints can also be used to determine and download the latest version of a file to facilitate the automation of an installation.


    **Note:** The Tenable Downloads API uses a different server URL than the Tenable Vulnerability Management API:


    `https://www.tenable.com/downloads/api/v2/pages`.


    ### Authentication


    Like the Downloads website, certain files require authentication to download. When files have a `"requires_auth": true` attribute on the product list page, the Downloads API uses bearer token authentication and requires a valid token in the Authorization header to download the file:

    ```

    Authorization: Bearer AbCdEf123456

    ```


    To access or reset your authentication token, navigate to the [Authentication Token](https://www.tenable.com/downloads/api-docs) page.


    Examples of product downloads that **do not** require authentication include Nessus and Nessus Agents.'
servers:
- url: https://www.tenable.com/downloads/api/v2
security:
- Bearer: []
tags:
- name: Inventory
  description: The Tenable Inventory API enables users to search for their organization's assets and the software installed on those assets. Additionally, API endpoints are provided to retrieve a list of asset and software properties that can be used as filters on endpoints that support them. For more information, see [Inventory](https://docs.tenable.com/exposure-management/Content/exposure-management/inventory/inventory.htm) in the _Tenable Exposure Management User Guide_.
  x-displayName: Inventory
paths:
  /api/v1/t1/inventory/assets/search:
    post:
      summary: Search assets
      operationId: inventory-assets-search
      description: 'Returns a list of assets in your organization that match the specified search criteria.


        **Caution:** This endpoint is available for use but is currently in beta. The response structure is subject to change as we continue to enhance the data model. <div class="perms-callout">Requires the Basic [16] user role or the `ASSET_INVENTORY.CYBER_ASSET_MANAGEMENT.READ` and `AD.TOGGLE_AD.USE` custom role privileges. See [Roles](doc:roles).</div>'
      tags:
      - Inventory
      parameters:
      - description: "Specifies extra asset properties to include in the search results. You can provide multiple properties as a comma-separated list. \n\nUse the [List asset properties](ref:inventory-asset-properties-list) endpoint to retrieve a list of valid properties for this parameter. For example, you might include `created_at`, `sources`, and `fqdns` as extra properties."
        explode: true
        in: query
        name: extra_properties
        required: false
        schema:
          example: prop1,prop2,prop3
          pattern: ^[a-zA-Z0-9_]+(,[a-zA-Z0-9_]+)*$
          type: string
        style: form
      - description: The starting record to retrieve. If omitted, the default value is `0`.
        explode: true
        in: query
        name: offset
        required: false
        schema:
          default: 0
          type: integer
        style: form
      - description: The number of records to retrieve. If omitted, the default value is `1000`. The maximum value is `1000`.
        explode: true
        in: query
        name: limit
        required: false
        schema:
          default: 1000
          type: integer
          maximum: 1000
        style: form
      - description: 'The property and direction to sort the results by, in the format `property:direction`. For example: `asset_name:asc` or `acr:desc`'
        example: acr:desc
        explode: true
        in: query
        name: sort
        required: false
        schema:
          pattern: ^[a-zA-Z0-9_]+:(asc|desc)$
          type: string
          default: aes:desc
        style: form
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Inventory_Request-Search-Assets'
        required: true
      responses:
        '200':
          description: Returned if the list of assets was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_Response-Search-Assets'
              examples:
                response:
                  value:
                    data:
                    - id: 309f87d2-9234-54a7-973f-0526600b4e91
                      asset_class: ACCOUNT
                      name: Administrator
                      aes: 936
                      acr: 10
                      extra_properties:
                        created_at: '2025-03-01T13:20:22.166Z'
                        sources:
                        - T.IO
                        - TIE AD
                    - id: dcff2953-c93a-49a1-adbb-c387267a0995
                      asset_class: DEVICE
                      name: srv2
                      aes: 883
                      acr: 8
                      extra_properties:
                        created_at: '2025-03-13T13:25:11.706Z'
                        sources:
                        - T.IO
                        - TIE AD
                        fqdns:
                        - srv2.example.com
                    - id: af440e24-f0ae-4db7-aea8-24b2a126910a
                      asset_class: DEVICE
                      name: srv
                      aes: 876
                      acr: 8
                      extra_properties:
                        created_at: '2025-03-03T21:28:24.202Z'
                        sources:
                        - T.IO
                        - TIE MEID
                        fqdns: []
                    - id: bf675b12-05ee-474a-9126-0acc73d5a3de
                      asset_class: DEVICE
                      name: adcon
                      aes: 875
                      acr: 8
                      extra_properties:
                        created_at: '2025-03-07T01:08:06.783Z'
                        sources:
                        - T.IO
                        - TIE MEID
                        fqdns: []
                    - id: 10242d53-8d66-5d85-8a3b-04877c20b139
                      asset_class: DEVICE
                      name: 'comm. adapter #13901'
                      aes: 841
                      acr: 7
                      extra_properties:
                        created_at: '2024-06-24T19:12:17.422Z'
                        sources:
                        - T.OT
                        fqdns: []
                    - id: 6dc3c256-22ce-53b8-a7ba-8fde481b5803
                      asset_class: DEVICE
                      name: sith
                      aes: 839
                      acr: 10
                      extra_properties:
                        created_at: '2024-02-14T17:09:33.771Z'
                        sources:
                        - T.OT
                        fqdns: []
                    - id: 89148da3-0dbb-56a3-824c-2cc6bef8e042
                      asset_class: DEVICE
                      name: a10_l71
                      aes: 839
                      acr: 7
                      extra_properties:
                        created_at: '2024-06-24T14:12:22.852Z'
                        sources:
                        - T.OT
                        fqdns: []
                    - id: 2548c060-6e2e-526b-9657-2d5fe776acaa
                      asset_class: DEVICE
                      name: Example Name
                      aes: 836
                      acr: 10
                      extra_properties:
                        created_at: '2024-06-24T14:12:20.665Z'
                        sources:
                        - T.OT
                        fqdns: []
                    - id: bdc262d2-a92b-5244-b23e-8d4fff081835
                      asset_class: DEVICE
                      name: Example Name 2
                      aes: 833
                      acr: 10
                      extra_properties:
                        created_at: '2024-02-14T17:09:27.900Z'
                        sources:
                        - T.OT
                        fqdns: []
                    - id: cb927ee0-3e0f-5bac-9b65-0c87bad0b700
                      asset_class: DEVICE
                      name: Example Name 3
                      aes: 820
                      acr: 10
                      extra_properties:
                        created_at: '2024-02-14T17:09:10.502Z'
                        sources:
                        - T.OT
                        fqdns: []
                    pagination:
                      total: 100
                      offset: 0
                      limit: 10
                      sort:
                        name: aes
                        order: desc
        '400':
          description: Returned if your request specified invalid parameters or if your request was improperly formatted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse-400'
              examples:
                response:
                  value:
                    message: Requested EXAMPLE not found
                    status: 400
        '401':
          description: Returned if the API keys specified in your request are invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    error: Unauthorized
                    message: Invalid credentials.
        '403':
          description: Returned if you do not have permission to search assets.
        '429':
          description: Returned if you attempt to send too many requests in a specific period of time. For more information, see [Rate Limiting](doc:rate-limiting).
          content:
            text/html:
              examples:
                response:
                  value: "<html>\n\n<head>\n    <title>429 Too Many Requests</title>\n</head>\n\n<body bgcolor=\"white\">\n    <center>\n        <h1>429 Too Many Requests</h1>\n    </center>\n    <hr>\n    <center>nginx</center>\n</body>\n\n</html>"
        '500':
          description: Returned if an internal error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    statusCode: 500
                    error: Internal Server Error
                    message: An internal server error occurred. Please wait a moment and try your request again.
      security:
      - Inventory_cloud: []
  /api/v1/t1/inventory/findings/search:
    post:
      summary: Search findings
      operationId: inventory-findings-search
      description: 'Returns a list of findings in your organization that match the specified search criteria.


        **Caution:** This endpoint is available for use but is currently in beta. The response structure is subject to change as we continue to enhance the data model. <div class="perms-callout">Requires the Basic [16] user role or the `ASSET_INVENTORY.CYBER_ASSET_MANAGEMENT.READ` and `AD.TOGGLE_AD.USE` custom role privileges. See [Roles](doc:roles).</div>'
      tags:
      - Inventory
      parameters:
      - description: "Specifies extra findings properties to include in the search results. You can provide multiple properties as a comma-separated list. \n\nUse the [List finding properties](ref:inventory-finding-properties-list) endpoint to retrieve a list of valid properties for this parameter. For example, you might include `asset_name`, `solution`, and `vpr_score` as extra properties."
        explode: true
        in: query
        name: extra_properties
        required: false
        schema:
          example: prop1,prop2,prop3
          pattern: ^[a-zA-Z0-9_]+(,[a-zA-Z0-9_]+)*$
          type: string
        style: form
      - description: The starting record to retrieve. If omitted, the default value is `0`.
        explode: true
        in: query
        name: offset
        required: false
        schema:
          default: 0
          type: integer
        style: form
      - description: The number of records to retrieve. If omitted, the default value is `1000`. The maximum value is `10000`.
        explode: true
        in: query
        name: limit
        required: false
        schema:
          default: 1000
          maximum: 10000
          type: integer
        style: form
      - description: 'The property and direction to sort the results by, in the format `property:direction`. For example: `finding_name:asc` or `severity:desc`'
        example: severity:desc
        explode: true
        in: query
        name: sort
        required: false
        schema:
          pattern: ^[a-zA-Z0-9_]+:(asc|desc)$
          type: string
          default: severity:desc
        style: form
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Inventory_Request-Search-Findings'
        required: true
      responses:
        '200':
          description: Returned if the list of findings was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_Response-Search-Findings'
              examples:
                response:
                  value:
                    data:
                    - id: 0040b719-9b8a-4fbc-b4ce-15461d2f831b
                      name: 'KB4497932: Security update for Adobe Flash Player (May 2019)'
                      asset_id: fd58d73f-0ade-4004-910c-e4a927f7486f
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: NESSUS:125068
                        asset_name: sql1
                    - id: 0069ea2d-a682-4f01-aec0-3c210fc51912
                      name: 'MS17-009: Security Update for Microsoft Windows PDF Library (4010319)'
                      asset_id: fd58d73f-0ade-4004-910c-e4a927f7486f
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: NESSUS:97731
                        asset_name: sql1
                    - id: 00ed588c-09f5-4b6d-99d3-e318f7fbbb61
                      name: 'KB5001382: Windows 8.1 and Windows Server 2012 R2 Security Update (Apr 2021)'
                      asset_id: fd58d73f-0ade-4004-910c-e4a927f7486f
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: NESSUS:148477
                        asset_name: sql1
                    - id: 00fcaf1f-ac6f-40d8-ae3d-d23419b3f4a7
                      name: 'KB4034662: Security update for Adobe Flash Player (August 2017)'
                      asset_id: fd58d73f-0ade-4004-910c-e4a927f7486f
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: NESSUS:102266
                        asset_name: sql1
                    - id: 0147a29d-ad5c-5035-bb09-6398a17e9b8e
                      name: securityHubEnabled
                      asset_id: 40be10a4-2681-5285-b62f-56b6e858ff8c
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: CS:AC_AWS_0631
                        asset_name: ap-southeast-2
                    - id: 01574e2c-785b-50eb-b64a-c12f7c4afdff
                      name: securityHubEnabled
                      asset_id: 1046e6bd-8ebc-56db-ae06-1d28d597420b
                      state: ACTIVE
                      severity: MEDIUM
                      extra_properties:
                        detection_id: CS:AC_AWS_0631
                        asset_name: eu-central-1
                    pagination:
                      total: 100
                      offset: 0
                      limit: 10
                      sort:
                        name: id
                        order: asc
        '400':
          description: Returned if your request specified invalid parameters or if your request was improperly formatted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse-400'
              examples:
                response:
                  value:
                    message: Requested EXAMPLE not found
                    status: 400
        '401':
          description: Returned if the API keys specified in your request are invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    error: Unauthorized
                    message: Invalid credentials.
        '403':
          description: Returned if you do not have permission to search findings.
        '429':
          description: Returned if you attempt to send too many requests in a specific period of time. For more information, see [Rate Limiting](doc:rate-limiting).
          content:
            text/html:
              examples:
                response:
                  value: "<html>\n\n<head>\n    <title>429 Too Many Requests</title>\n</head>\n\n<body bgcolor=\"white\">\n    <center>\n        <h1>429 Too Many Requests</h1>\n    </center>\n    <hr>\n    <center>nginx</center>\n</body>\n\n</html>"
        '500':
          description: Returned if an internal error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    statusCode: 500
                    error: Internal Server Error
                    message: An internal server error occurred. Please wait a moment and try your request again.
      security:
      - Inventory_cloud: []
  /api/v1/t1/inventory/software/search:
    post:
      summary: Search software
      operationId: inventory-software-search
      description: 'Returns a list of software installed on your assets that match the specified search criteria.


        **Caution:** This endpoint is available for use but is currently in beta. The response structure is subject to change as we continue to enhance the data model. <div class="perms-callout">Requires the Basic [16] user role or the `ASSET_INVENTORY.CYBER_ASSET_MANAGEMENT.READ` and `AD.TOGGLE_AD.USE` custom role privileges. See [Roles](doc:roles).</div>'
      tags:
      - Inventory
      parameters:
      - description: "Specifies extra software properties include in the search results. You can provide multiple properties as a comma-separated list. \n\nUse the [List software properties](ref:inventory-software-properties-list) endpoint to retrieve a list of valid properties for this parameter. For example, you might include `cpe`, `version`, and `file_location` as extra properties."
        explode: true
        in: query
        name: extra_properties
        required: false
        schema:
          example: prop1,prop2,prop3
          pattern: ^[a-zA-Z0-9_]+(,[a-zA-Z0-9_]+)*$
          type: string
        style: form
      - description: The starting record to retrieve. If omitted, the default value is `0`.
        explode: true
        in: query
        name: offset
        required: false
        schema:
          default: 0
          type: integer
        style: form
      - description: The number of records to retrieve. If omitted, the default value is `1000`. The maximum value is `1000`.
        explode: true
        in: query
        name: limit
        required: false
        schema:
          default: 1000
          maximum: 1000
          type: integer
        style: form
      - description: 'The property and direction to sort the results by, in the format `property:direction`. For example: `application:asc` or `version:desc`'
        example: application:asc
        explode: true
        in: query
        name: sort
        required: false
        schema:
          pattern: ^[a-zA-Z0-9_]+:(asc|desc)$
          type: string
          default: application:asc
        style: form
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Inventory_Request-Search-Software'
        required: true
      responses:
        '200':
          description: Returned if the list of installed software was retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_Response-Search-Software'
              examples:
                response:
                  value:
                    data:
                    - application: .net_core
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 4
                      extra_properties:
                        cpe: cpe:2.3:a:microsoft:.net_core:6.0.16.32323:*:*:*:*:*:*:*
                        version: 6.0.16.32323
                        file_location: C:\Program Files\dotnet\shared\Microsoft.NetCore.App\6.0.16\
                    - application: .net_core_windows
                      publisher: Any
                      type:
                      - APPLICATION
                      devices_count: 1
                      extra_properties:
                        cpe: cpe:2.3:*:*:.net_core_windows:6.0.2.30914:*:*:*:*:*:*:-
                        version: 6.0.2.30914
                        file_location: C:\Program Files\dotnet\shared\Microsoft.NetCore.App\6.0.2\
                    - application: .net_framework
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 19
                      extra_properties:
                        cpe: cpe:2.3:a:microsoft:.net_framework:4.8.9277.0:*:*:*:*:*:*:*
                        version: 4.8.9277.0
                        file_location: C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\system.web.dll
                    - application: 7-zip
                      publisher: 7-zip
                      type:
                      - APPLICATION
                      devices_count: 1
                      extra_properties:
                        cpe: cpe:2.3:a:7-zip:7-zip:9.20.0.0:*:*:*:*:*:*:*
                        version: 9.20.0.0
                        file_location: C:\Program Files\7-Zip
                    - application: acrobat_reader
                      publisher: adobe
                      type:
                      - APPLICATION
                      devices_count: 2
                      extra_properties:
                        cpe: cpe:2.3:*:adobe:acrobat_reader:11.0.0.379:*:*:*:*:*:*:-
                        version: 11.0.0.379
                        file_location: C:\Program Files (x86)\Adobe\Reader 11.0\Reader
                    - application: asp.net_core
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 3
                      extra_properties:
                        cpe: cpe:2.3:*:microsoft:asp.net_core:6.0.2:*:*:*:*:*:*:-
                        version: 6.0.2
                        file_location: C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App\6.0.2
                    - application: azure_active_directory_connect
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 1
                      extra_properties:
                        cpe: cpe:2.3:a:microsoft:azure_active_directory_connect:2.4.131.0:*:*:*:*:*:*:*
                        version: 2.4.131.0
                        file_location: C:\Program Files\Microsoft Azure Active Directory Connect\AzureADConnect.exe
                    - application: azure_command-line_interface
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 3
                      extra_properties:
                        cpe: cpe:2.3:a:microsoft:azure_command-line_interface:2.65.0:*:*:*:*:*:*:*
                        version: 2.65.0
                        file_location: C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az
                    - application: azure_connected_machine_agent
                      publisher: microsoft
                      type:
                      - APPLICATION
                      devices_count: 1
                      extra_properties:
                        cpe: cpe:2.3:a:microsoft:azure_connected_machine_agent:1.32.02371.1114:*:*:*:*:*:*:*
                        version: 1.32.02371.1114
                        file_location: C:\Program Files\AzureConnectedMachineAgent
                    pagination:
                      total: 100
                      offset: 0
                      limit: 10
                      sort:
                        name: application
                        order: asc
        '400':
          description: Returned if your request specified invalid parameters or if your request was improperly formatted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse-400'
              examples:
                response:
                  value:
                    message: Requested EXAMPLE not found
                    status: 400
        '401':
          description: Returned if the API keys specified in your request are invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    error: Unauthorized
                    message: Invalid credentials.
        '403':
          description: Returned if you do not have permission to search software.
        '429':
          description: Returned if you attempt to send too many requests in a specific period of time. For more information, see [Rate Limiting](doc:rate-limiting).
          content:
            text/html:
              examples:
                response:
                  value: "<html>\n\n<head>\n    <title>429 Too Many Requests</title>\n</head>\n\n<body bgcolor=\"white\">\n    <center>\n        <h1>429 Too Many Requests</h1>\n    </center>\n    <hr>\n    <center>nginx</center>\n</body>\n\n</html>"
        '500':
          description: Returned if an internal error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory_ErrorResponse'
              examples:
                response:
                  value:
                    statusCode: 500
                    error: Internal Server Error
                    message: An internal server error occurred. Please wait a moment and try your request again.
      security:
      - Inventory_cloud: []
  /api/v1/t1/inventory/assets/properties:
    get:
      summary: List asset properties
      description: "Returns a list of asset properties that can be used as filters on endpoints that support them. For example, the properties that are returned by this endpoint can be used as filters for the [Search assets](ref:inventory-assets-search) or [Export assets](ref:inventory-export-assets) endpoints.\n\n In addition to the asset properties, the results list includes the logical operators you can use with the asset properties along with the supported values.\n\n**Caution:** This endpoint is available for use but is currently in beta. The response structure is subject to change as we continue to enhance the data model. <div class=\"perms-callout\">Requires the Basic [16] user role or the `ASSET_INVENTORY.CYBER_ASSET_MANAGEMENT.READ` and `AD.TOGGLE_AD.USE` custom role privileges. See [Roles](doc:roles).</div>"
      operationId: inventory-asset-properties-list
      tags:
      - Inventory
      parameters:
      - name: asset_classes
        description: 'The asset classes you want to retrieve property filters for. If this parameter is omitted, Tenable Exposure Management returns property filters for all asset classes.


          Asset classes enable users to easily separate asset data based on its type. For more information about asset classes, see [Asset Classes](https://docs.tenable.com/exposure-management/Content/exposure-management/inventory/classes.htm) in the Tenable Exposure Management User Guide.'
        in: query
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            $ref: '#/components/schemas/Inventory_AssetClasses'
      responses:
        '200':
          description: Returned if the list of asset properties was retrieved successfully.
          content:
            application/json:
              schema:
                description: A list of asset properties.
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Inventory_Properties-Object'
              examples:
                response:
                  value:
                    properties:
                    - key: asset_id
                      readable_name: Asset ID
                      control:
                        type: STRING
                        multiple_allowed: true
                        regex:
                          hint: 01234567-abcd-ef01-2345-6789abcdef01
                          expression: '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}(,[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12})*'
                      operators:
                      - '='
                      - '!='
                      - exists
                      - not exists
                      sortable: true
                      filterable: true
                      description: '# Asset ID

                        ## A unique identifier for an asset


                        An asset ID is a unique identifier that is assigned to each asset in a cyber asset management system. This identifier can be used to track the asset, its associated vulnerabilities, and its security posture. Asset IDs are typically generated automatically by the asset management system, but they can also be manually assigned.


                        Here are some key points to understand about asset IDs in the context of the cyber industry:

                        - **Uniqueness**: Asset IDs must be unique within the asset management system. This ensures that each asset can be easily identified and tracked.

                        - **Accuracy**: Asset IDs must be accurate and up-to-date. This ensures that the asset management system has the most accurate information about each asset.

                        - **Consistency**: Asset IDs must be consistent across all systems and applications that use them. This ensures that there is no confusion about which asset is being referred to.


                        Asset IDs are an important part of cyber asset management. They help to track assets, their associated vulnerabilities, and their security posture. Asset IDs must be unique, accurate, and consistent.

                        '
                    - key: asset_class
                      readable_name: Asset Class
                      control:
                        type: STRING
                        multiple_allowed: true
                        selection:
                        - name: Account
                          value: ACCOUNT
                          deprecated: false
                        - name: Web Application
                          

# --- truncated at 32 KB (233 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tenable/refs/heads/main/openapi/tenable-inventory-api-openapi.yml