Tenable · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Vulnerability Management Workbenches API

15 actions 15 updates phrasing extends openapi/tenable-workbenches-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Tenable's API. It is a proposal applied on top of the contract, not a document Tenable publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 15

$.info
$.paths['/workbenches/vulnerabilities'].get
$.paths['/workbenches/vulnerabilities/{plugin_id}/info'].get
$.paths['/workbenches/vulnerabilities/{plugin_id}/outputs'].get
$.paths['/workbenches/assets'].get
$.paths['/workbenches/assets/vulnerabilities'].get
$.paths['/workbenches/assets/{asset_id}/info'].get
$.paths['/workbenches/assets/{asset_uuid}/activity'].get
$.paths['/workbenches/assets/{asset_id}/vulnerabilities'].get
$.paths['/workbenches/assets/{asset_id}/vulnerabilities/{plugin_id}/info'].get
$.paths['/workbenches/assets/{asset_id}/vulnerabilities/{plugin_id}/outputs'].get
$.paths['/workbenches/assets/{asset_uuid}'].delete
$.paths['/workbenches/export'].get
$.paths['/workbenches/export/{file_id}/status'].get
$.paths['/workbenches/export/{file_id}/download'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Vulnerability Management Workbenches API
  version: 1.0.0
extends: openapi/tenable-workbenches-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 14
- target: $.paths['/workbenches/vulnerabilities'].get
  update:
    x-apievangelist-phrasing:
      intent: List vulnerabilities in the workbench
      effect: read
      questions:
      - What vulnerabilities have been recorded across my environment?
      - Is there a cap on how many vulnerabilities the workbench list returns?
      - Can I narrow the vulnerability workbench to the last 30 days?
      instructions:
      - text: List vulnerabilities seen in the last {date_range} days.
        slots:
          date_range: query.date_range
      - text: List workbench vulnerabilities where {filter} {quality} {value}.
        slots:
          filter: query.filter.0.filter
          quality: query.filter.0.quality
          value: query.filter.0.value
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/vulnerabilities/{plugin_id}/info'].get
  update:
    x-apievangelist-phrasing:
      intent: Get workbench details for a plugin
      effect: read
      questions:
      - What does the workbench know about a specific vulnerability plugin across my assets?
      - Can I see a plugin's description, solution and risk info from the workbench?
      instructions:
      - text: Get workbench details for plugin {plugin_id}.
        slots:
          plugin_id: path.plugin_id
      - text: Show info for plugin {plugin_id} over the last {date_range} days.
        slots:
          plugin_id: path.plugin_id
          date_range: query.date_range
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/vulnerabilities/{plugin_id}/outputs'].get
  update:
    x-apievangelist-phrasing:
      intent: List plugin outputs across assets
      effect: read
      questions:
      - Where can I see the raw plugin output a vulnerability check produced on my hosts?
      - Which assets reported output for a given plugin?
      instructions:
      - text: List the outputs for plugin {plugin_id} across all assets.
        slots:
          plugin_id: path.plugin_id
      - text: Get plugin {plugin_id} output from the last {date_range} days.
        slots:
          plugin_id: path.plugin_id
          date_range: query.date_range
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets'].get
  update:
    x-apievangelist-phrasing:
      intent: List assets in the workbench
      effect: read
      questions:
      - Which assets does my vulnerability management workbench know about?
      - Can I return every field for each asset in the workbench list?
      - What should I use instead if I need more than 5,000 assets?
      instructions:
      - text: List workbench assets seen in the last {date_range} days.
        slots:
          date_range: query.date_range
      - text: List assets with all fields set to {all_fields}.
        slots:
          all_fields: query.all_fields
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/vulnerabilities'].get
  update:
    x-apievangelist-phrasing:
      intent: List assets that have vulnerabilities
      effect: read
      questions:
      - Which of my assets currently have vulnerabilities and how many?
      - Can I filter the list of vulnerable assets by severity?
      instructions:
      - text: List assets that have vulnerabilities.
      - text: Show vulnerable assets where {filter} {quality} {value}.
        slots:
          filter: query.filter.0.filter
          quality: query.filter.0.quality
          value: query.filter.0.value
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_id}/info'].get
  update:
    x-apievangelist-phrasing:
      intent: Get information about an asset
      effect: read
      questions:
      - What does Tenable know about a specific asset, like its IPs and operating system?
      - Can I get every available field for a single asset?
      instructions:
      - text: Get information about asset {asset_id}.
        slots:
          asset_id: path.asset_id
      - text: Show all fields for asset {asset_id} with all_fields {all_fields}.
        slots:
          asset_id: path.asset_id
          all_fields: query.all_fields
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_uuid}/activity'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an asset's activity log
      effect: read
      questions:
      - When was an asset discovered, last seen or tagged?
      - Is there a history of changes for one of my assets?
      instructions:
      - text: Show the activity log for asset {asset_uuid}.
        slots:
          asset_uuid: path.asset_uuid
      - text: Get discovery and tagging events for asset {asset_uuid}.
        slots:
          asset_uuid: path.asset_uuid
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_id}/vulnerabilities'].get
  update:
    x-apievangelist-phrasing:
      intent: List vulnerabilities on an asset
      effect: read
      questions:
      - What vulnerabilities are recorded on a particular host?
      - Are an asset's vulnerabilities sorted by count by default?
      instructions:
      - text: List vulnerabilities on asset {asset_id}.
        slots:
          asset_id: path.asset_id
      - text: Show asset {asset_id} vulnerabilities from the last {date_range} days.
        slots:
          asset_id: path.asset_id
          date_range: query.date_range
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_id}/vulnerabilities/{plugin_id}/info'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a vulnerability's details on one asset
      effect: read
      questions:
      - How do I see the details of one specific vulnerability on one specific host?
      - Can I check when a plugin finding was first and last seen on an asset?
      instructions:
      - text: Get details of plugin {plugin_id} on asset {asset_id}.
        slots:
          plugin_id: path.plugin_id
          asset_id: path.asset_id
      - text: Show vulnerability info for plugin {plugin_id} recorded on host {asset_id}.
        slots:
          plugin_id: path.plugin_id
          asset_id: path.asset_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_id}/vulnerabilities/{plugin_id}/outputs'].get
  update:
    x-apievangelist-phrasing:
      intent: Get plugin output for a vulnerability on an asset
      effect: read
      questions:
      - What raw output did a plugin produce on one particular asset?
      - Can I see the port and evidence a check reported on a single host?
      instructions:
      - text: Get plugin {plugin_id} output on asset {asset_id}.
        slots:
          plugin_id: path.plugin_id
          asset_id: path.asset_id
      - text: Show what plugin {plugin_id} reported for host {asset_id} in the last {date_range} days.
        slots:
          plugin_id: path.plugin_id
          asset_id: path.asset_id
          date_range: query.date_range
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/assets/{asset_uuid}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an asset
      effect: destructive
      questions:
      - How do I delete an asset and its vulnerability data?
      - Does deleting an asset immediately reduce my licensed asset count?
      instructions:
      - text: Delete asset {asset_uuid}.
        slots:
          asset_uuid: path.asset_uuid
      - text: Remove host {asset_uuid} and its vulnerability history.
        slots:
          asset_uuid: path.asset_uuid
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/export'].get
  update:
    x-apievangelist-phrasing:
      intent: Request a workbench export file
      effect: write
      questions:
      - Can I export the vulnerabilities workbench to a PDF or CSV report?
      - Which chapters can I include when exporting a workbench?
      - How do I export the workbench for a single asset or plugin?
      instructions:
      - text: Export the {report} workbench as {format} with chapters {chapter}.
        slots:
          report: query.report
          format: query.format
          chapter: query.chapter
      - text: Export the {report} workbench for asset {asset_id} as {format} including {chapter}.
        slots:
          report: query.report
          asset_id: query.asset_id
          format: query.format
          chapter: query.chapter
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/export/{file_id}/status'].get
  update:
    x-apievangelist-phrasing:
      intent: Check a workbench export's status
      effect: read
      questions:
      - Is my workbench export file ready to download yet?
      - What status do I poll for before downloading a workbench export?
      instructions:
      - text: Check the status of workbench export {file_id}.
        slots:
          file_id: path.file_id
      - text: Tell me whether workbench export {file_id} is ready to download.
        slots:
          file_id: path.file_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/workbenches/export/{file_id}/download'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a workbench export file
      effect: read
      questions:
      - How do I download a workbench export once it says ready?
      - Is the workbench export download endpoint deprecated?
      instructions:
      - text: Download workbench export file {file_id}.
        slots:
          file_id: path.file_id
      - text: Save the finished workbench export {file_id}.
        slots:
          file_id: path.file_id
      method: generated
      generated: '2026-10-01'