Bug: exports.vulns() and exports.was() still send the vpr_v2_score filter, which the API removed on 2026-10-01
I maintainer di solito rispondono entro 2 giorni
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start by reading the exports.vulns() and exports.was() implementations and their tests, which the issue identifies as the affected entry points. Check how export filters are assembled and how existing argument deprecations are handled; verify both methods translate vpr_v2_score, warn callers, and reject using it together with vpr_score. The linked open pull request indicates work is already underway.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
Tenable removed the vpr_v2_score filter from the Vulnerability Management and Web App Scanning export APIs on 2026-10-01. pyTenable still accepts vpr_v2_score in tio.exports.vulns() and tio.exports.was() and sends it in the request, so every export that uses it now fails:
tenable.errors.BadRequestError: [400: POST] https://cloud.tenable.com/vulns/export
body=b'{"code":"BAD_REQUEST_UNKNOWN_PROPERTY","message":"Unknown property \'vpr_v2_score\' detected in the payload. ..."}'
Tenable announced the removal in three changelogs:
| Date | Changelog | What it says |
|---|---|---|
| 2026-04-17 | Vulnerability Priority Rating: Transition to VPR Version 2 | vpr_v2_score will be deprecated. Use vpr_score, which reflects the updated VPR model from July 1, 2026. |
| 2026-06-24 | Reminder: Vulnerability Priority Rating (VPR) Version 2 Transition on July 1 | Reminder of the transition. |
| 2026-09-10 | Final Reminder: vpr_v2 Fields Removed from Exports on October 1 | vpr_v2_score and plugin.vpr_v2 are removed from both export endpoints on 2026-10-01. vpr_score reflects the enhanced VPR model. |
The Export vulnerabilities and Export findings reference pages no longer list vpr_v2_score, and both carry a caution note that it was removed.
To Reproduce
from tenable.io import TenableIO
tio = TenableIO(access_key='...', secret_key='...')
tio.exports.vulns(vpr_v2_score={'gte': 7.0}) # BadRequestError: 400 BAD_REQUEST_UNKNOWN_PROPERTY
tio.exports.was(vpr_v2_score={'gte': 7.0}) # same
Expected behavior
vpr_score now uses the same VPR v2 model that vpr_v2_score used, so existing scripts should keep working:
- Translation: the
vpr_v2_scoreargument is sent to the API asvpr_score, with aDeprecationWarningthat tells callers to switch tovpr_score. - Both arguments: passing
vpr_scoreandvpr_v2_scoretogether raises a clear error.
Workaround
Pass the same value as vpr_score instead:
tio.exports.vulns(vpr_score={'gte': 7.0})
System Information:
- OS: any
- Architecture: any
- Version: pyTenable 26.10.1 and earlier
Additional context
Confirmed against the live API in several environments: vpr_v2_score returns 400 BAD_REQUEST_UNKNOWN_PROPERTY for both vulnerability and WAS exports, while vpr_score is accepted.
- Lingua principale
- Python
- Stelle
- 416
- Fork
- 190
- Merge medio
- 3g 20h
- PR unite (30g)
- 12
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di tenable/pyTenable
-
Bug: tenable_one.attack_path.vectors.top_attack_paths_search() always fails with 403 because it calls an undocumented pathForse già presa @lanz l’ha presa 2 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
I maintainer di solito rispondono entro 2 giorni
-
Bug: exports.vulns(cve_id=...) rejects the PHP2Shell CVEs, blocking vulnerability exports filtered by CVEForse già presa @lanz l’ha presa 4 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 25/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
I maintainer di solito rispondono entro 2 giorni
-
pyTenable ModernizationAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di tenable/pyTenable
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
vllm-project/vllm#64845 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
dekobon/big-code-analysis#1729 ·
I maintainer di solito rispondono entro 1 giorno
-
Add `openai_safety_identifier`, the replacement for the `user` field that `openai_user` sendsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
pydantic/pydantic-ai#12091 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100