Data models¶
Every document Vulners returns is a bulletin, modelled in three inheritance layers so you get typed fields and IDE hints at whatever level of detail you need:
Bulletin— the base: the fields every document carries.- Family models (
CveBulletin,ExploitBulletin, …) — one perbulletinFamily, extendingBulletinwith that family's shared fields. - Collection models — one per collection
type, extending its family model with the fields specific to that collection.
search/archive/audit return the most specific model that matches a document's type, then its bulletinFamily, then Bulletin. Every model keeps extra="allow", so a field Vulners adds before the SDK models it is still there on the object, just untyped — nothing is ever dropped.
A field sits at the level where it is always present: on
Bulletinwhen every document carries it, on a family model when every document of thatbulletinFamilycarries it, otherwise on the collection model.
Structure¶
Bulletin (base) → a model per bulletinFamily → a model per collection type. Every family model extends Bulletin; every collection model extends its family model, so isinstance holds at every level (a nessus document is a NessusBulletin, which is a ScannerBulletin, which is a Bulletin). Each family below links to its page, which lists the family's fields and every collection type under it.
Bulletin— base fields, common to every documentBlogBulletin—bulletinFamily: blogBugbountyBulletin—bulletinFamily: bugbountyCnnvdBulletin—bulletinFamily: cnnvdCnvdBulletin—bulletinFamily: cnvdCryptoBulletin—bulletinFamily: cryptoCveBulletin—bulletinFamily: cveEuvdBulletin—bulletinFamily: euvdExploitBulletin—bulletinFamily: exploitInfoBulletin—bulletinFamily: infoJvnBulletin—bulletinFamily: jvnLibraryBulletin—bulletinFamily: libraryMicrosoftBulletin—bulletinFamily: microsoftNcscBulletin—bulletinFamily: ncscNozomiBulletin—bulletinFamily: nozomiScannerBulletin—bulletinFamily: scannerSoftwareBulletin—bulletinFamily: softwareToolsBulletin—bulletinFamily: toolsUnixBulletin—bulletinFamily: unix
Base fields¶
Present in every document, at the Bulletin level — full table with types, descriptions and examples on the base page:
bulletinFamily, cvelist, cvss, cvss2, cvss3, cvss4, description, enchantments, epss, href, id, immutableFields, lastseen, metrics, modified, published, references, reporter, sourceAvailable, timestamps, title, type, vendorId, vhref, viewCount