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.
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
# 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'