{ "swagger": "2.0", "basePath": "/api", "paths": { "/browse/": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the known vendors", "description": "Deprecated: use GET /api/browse/vendors instead. Get the known vendors.\nDeprecated in favor of /api/browse/vendors.", "operationId": "get_vendors", "deprecated": true, "tags": [ "browse" ] } }, "/browse/vendors": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the known vendors with their last vulnerability change date", "description": "Get the known vendors with the date of their most recent vulnerability change, most recently changed first. Vendors without a known last change date are listed last with a null last_change.", "operationId": "get_vendors_last_change", "parameters": [ { "name": "q", "in": "query", "type": "string", "description": "Case-insensitive substring filter on the name." }, { "name": "since", "in": "query", "type": "string", "description": "Only return entries whose last change is at or after this date (ISO 8601 datetime or Unix timestamp). Entries without a known last change date are excluded." }, { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return (capped at 1000).", "default": 100 } ], "tags": [ "browse" ] } }, "/browse/vendors/{vendor}/products": { "parameters": [ { "name": "vendor", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the products of a vendor with their last vulnerability change date", "description": "Get the known products of a vendor with the date of their most recent vulnerability change, most recently changed first. Products without a known last change date are listed last with a null last_change.", "operationId": "get_vendor_products_last_change", "parameters": [ { "name": "q", "in": "query", "type": "string", "description": "Case-insensitive substring filter on the name." }, { "name": "since", "in": "query", "type": "string", "description": "Only return entries whose last change is at or after this date (ISO 8601 datetime or Unix timestamp). Entries without a known last change date are excluded." }, { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return (capped at 1000).", "default": 100 } ], "tags": [ "browse" ] } }, "/browse/{vendor}": { "parameters": [ { "name": "vendor", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the known products for a vendor", "description": "Deprecated: use GET /api/browse/vendors//products instead. Get the known products for a vendor.\nDeprecated in favor of /api/browse/vendors//products.", "operationId": "get_vendor_products", "deprecated": true, "tags": [ "browse" ] } }, "/bundle/": { "delete": { "responses": { "200": { "description": "Deleted bundles successfully." }, "400": { "description": "Invalid UUID format." }, "403": { "description": "Admin permission required." }, "404": { "description": "No bundles matched the filter." } }, "summary": "Delete bundles by vulnerability_lookup_origin", "description": "Delete bundles by vulnerability_lookup_origin (admin only).", "operationId": "delete_bundles_list", "parameters": [ { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "required": true, "description": "Delete bundles from this origin instance UUID." } ], "tags": [ "bundle" ] }, "post": { "responses": { "201": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/BundlesList" } } }, "400": { "description": "JSON validation failed or incorrect payload to instantiate a bundle." }, "403": { "description": "Administrator permission required." } }, "description": "Create a bundle.", "operationId": "post_bundles_list", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/Bundle" } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "bundle" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/BundlesList" } } } }, "summary": "List all bundles", "operationId": "list_bundles", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the bundle." }, { "name": "author", "in": "query", "type": "string", "description": "Author (login) of the bundle." }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Id of a vulnerability referenced by the bundle." }, { "name": "meta", "in": "query", "type": "string", "description": "Query for the meta JSON field. Example: meta=[{'tags': ['tcp']}]" }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the bundles must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the bundles must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "bundle" ] } }, "/bundle/{bundle_uuid}": { "parameters": [ { "name": "bundle_uuid", "in": "path", "required": true, "type": "string" } ], "delete": { "responses": { "204": { "description": "Success." }, "403": { "description": "Administrator permission required or not the author of the bundle." }, "404": { "description": "Bundle not found." } }, "summary": "Endpoint for deleting a bundle", "description": "Delete a bundle.\nOnly an admin can delete a bundle.", "operationId": "delete_bundle_item", "tags": [ "bundle" ] }, "get": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/Bundle" } }, "404": { "description": "Bundle not found." } }, "description": "Get a bundle with its UUID.", "operationId": "get_bundle_item", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "bundle" ] } }, "/capec/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/CAPECsList" } } } }, "summary": "List all CAPECs", "operationId": "list_capecs", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "capec" ] } }, "/capec/{capec_id}": { "parameters": [ { "name": "capec_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get detailed information about a CAPEC", "description": "Get detailed information about a CAPEC.", "operationId": "get_capec_item", "tags": [ "capec" ] } }, "/cisa_kev/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/KEVsList" } } } }, "summary": "List all CISA KEV", "operationId": "list_kevs", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cisa_kev" ] } }, "/cna/cve": { "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "A filtered list of CVE Records, along with pagination fields if results span multiple pages of data", "schema": { "$ref": "#/definitions/CveListUnionResponse" } } }, "summary": "Retrieves all CVE Records after applying the query parameters as filters (accessible to Secretariat)", "operationId": "get_cve", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "time_modified.lt", "in": "query", "type": "string", "format": "date-time", "description": "Most recent CVE record modified timestamp to retrieve (format: yyyy-MM-ddTHH:mm:ssZZZZ)" }, { "name": "time_modified.gt", "in": "query", "type": "string", "format": "date-time", "description": "Earliest CVE record modified timestamp to retrieve (format: yyyy-MM-ddTHH:mm:ssZZZZ)" }, { "name": "state", "in": "query", "type": "string", "description": "Filter by state", "enum": [ "PUBLISHED", "REJECTED" ] }, { "name": "assigner_short_name", "in": "query", "type": "string", "description": "Filter by assignerShortName" }, { "name": "assigner", "in": "query", "type": "string", "description": "Filter by assigner org UUID" }, { "name": "page", "in": "query", "type": "integer", "description": "The current page in the paginator", "default": 1 }, { "name": "adp_short_name", "in": "query", "type": "string", "description": "Filter by ADP short name" }, { "name": "count_only", "in": "query", "type": "boolean", "description": "Get count of records that match query" }, { "name": "cna_modified", "in": "query", "type": "boolean", "description": "Only get CVE records with cnaContainers modified/created within the time_modified range" } ], "tags": [ "cna" ] } }, "/cna/cve-id": { "post": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "206": { "description": "Partially Reserved CVE IDs", "schema": { "$ref": "#/definitions/PartialReservedCveIdsResponseModel" } }, "200": { "description": "Reseved CVE IDs", "schema": { "$ref": "#/definitions/ReservedCveIdsResonseModel" } } }, "summary": "Reserves CVE IDs for the organization provided in the short_name query parameter (accessible to CNAs and Secretariat)", "operationId": "post_cve_id_info", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "amount", "in": "query", "type": "integer", "required": true, "description": "Quantity of CVE IDs to reserve" }, { "name": "batch_type", "in": "query", "type": "string", "description": "Required when amount is greater than one", "enum": [ "sequential", "non-sequential", "nonsequential" ] }, { "name": "cve_year", "in": "query", "type": "integer", "required": true, "description": "The year the CVE IDs will be reserved for" }, { "name": "short_name", "in": "query", "type": "string", "description": "The CNA that will own the reserved CVE IDs" } ], "tags": [ "cna" ] }, "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "Filtered CVE IDs", "schema": { "$ref": "#/definitions/CveIdListResponseModel" } } }, "summary": "Retrieves information about CVE IDs after applying the query parameters as filters (accessible to all registered users)", "operationId": "get_cve_id_info", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "state", "in": "query", "type": "string", "description": "Filter by state", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, { "name": "cve_id_year", "in": "query", "type": "string", "description": "Filter by the year of the CVE IDs" }, { "name": "time_reserved.lt", "in": "query", "type": "string", "format": "date-time", "description": "Most recent reserved timestamp to retrieve" }, { "name": "time_reserved.gt", "in": "query", "type": "string", "format": "date-time", "description": "Earliest CVE ID reserved timestamp to retrieve" }, { "name": "time_modified.lt", "in": "query", "type": "string", "format": "date-time", "description": "Most recent modified timestamp to retrieve" }, { "name": "time_modified.gt", "in": "query", "type": "string", "format": "date-time", "description": "Earliest CVE ID modified timestamp to retrieve" }, { "name": "page", "in": "query", "type": "integer", "description": "The current page in the paginator", "default": 1 }, { "name": "sort_by", "in": "query", "type": "string", "description": "Sort field (default: modified)", "default": "modified", "enum": [ "created", "modified" ] }, { "name": "sort_dir", "in": "query", "type": "string", "description": "Sort direction (default: desc)", "default": "desc", "enum": [ "asc", "desc" ] }, { "name": "search", "in": "query", "type": "string", "description": "Substring filter on vuln_id (case-insensitive)" } ], "tags": [ "cna" ] } }, "/cna/cve-id-range/{year}": { "parameters": [ { "name": "year", "in": "path", "required": true, "type": "integer" } ], "post": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE-ID-Range was created" } }, "summary": "Creates a CVE-ID-Range for the specified year (accessible to Secretariat)", "operationId": "post_cve_id_range", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" } ], "tags": [ "cna" ] } }, "/cna/cve-id/{id}": { "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The requested CVE ID information is returned", "schema": { "$ref": "#/definitions/CveIdUpdateModel" } } }, "summary": "Updates information related to the specified CVE ID (accessible to CNAs and Secretariat)", "operationId": "put_cve_id_by_id", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "org", "in": "query", "type": "string", "description": "The shortname of the new owning_cna for the CVE ID" }, { "name": "state", "in": "query", "type": "string", "description": "The id of the CVE ID to update", "enum": [ "RESERVED", "REJECTED" ] } ], "tags": [ "cna" ] }, "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "429": { "description": "Too Many Requests", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "200": { "description": "The requested CVE ID information is returned", "schema": { "$ref": "#/definitions/CveIdGetModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } } }, "summary": "Retrieves information about the specified CVE ID (accessible to all users)", "operationId": "get_cve_id_by_id", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" } ], "tags": [ "cna" ] } }, "/cna/cve/{id}": { "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CveRecordUpdateresponseModel" } } }, "summary": "Updates a CVE Record from full CVE Record JSON for the specified ID (accessible to Secretariat", "description": ")", "operationId": "put_cve_id", "tags": [ "cna" ] }, "delete": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } } }, "operationId": "delete_cve_id", "tags": [ "cna" ] }, "post": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CveRecordResponseModel" } } }, "summary": "Creates a CVE Record from full CVE Record JSON for the specified ID (accessible to Secretariat", "description": ")", "operationId": "post_cve_id", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" } ], "tags": [ "cna" ] }, "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "429": { "description": "Too Many Requests", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" }, "headers": { "RateLimit-Limit": { "description": "Indicates the service limit associated with the client in the current time window.", "type": "string" }, "RateLimit-Policy": { "description": "Indicates a service policy currently associated with the client.", "type": "string" }, "RateLimit-Remaining": { "description": "Indicates the remaining quota units associated with the expiring-limit.", "type": "string" }, "RateLimit-Reset": { "description": "Indicates the number of seconds until the quota resets.", "type": "string" } } }, "200": { "description": "The requested CVE Record", "schema": { "$ref": "#/definitions/CveGetUnionResponse" } } }, "summary": "Returns a CVE Record by CVE ID (accessible to all users)", "operationId": "get_cve_id", "tags": [ "cna" ] } }, "/cna/cve/{id}/adp": { "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CreateCveRecordModel" } } }, "summary": "Inserts or replaces the ADP container for the caller org on an existing CVE Record", "operationId": "put_cve_adp", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/CnaRequestModel" } } ], "tags": [ "cna" ] } }, "/cna/cve/{id}/cna": { "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CreateCveRecordModel" } } }, "operationId": "put_cve_cna", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "erlcheck", "in": "query", "type": "boolean", "description": "Enable ERL check" }, { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/CnaRequestModel" } } ], "tags": [ "cna" ] }, "post": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CreateCveRecordModel" } } }, "summary": "Creates a CVE Record from CNA Container JSON for the specified ID (accessible to CNAs and Secretariat)", "operationId": "post_cve_cna", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "erlcheck", "in": "query", "type": "boolean", "description": "Enable ERL check" }, { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/CnaRequestModel" } } ], "tags": [ "cna" ] } }, "/cna/cve/{id}/reject": { "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CreateCveRecordModel" } } }, "operationId": "put_cve_reject", "tags": [ "cna" ] }, "post": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "The CVE Record created", "schema": { "$ref": "#/definitions/CreateCveRecordModel" } } }, "summary": "Creates a rejected CVE Record for the specified ID if no record yet exists (accessible to CNAs and Secretariat)", "operationId": "post_cve_reject", "tags": [ "cna" ] } }, "/cna/cve_count": { "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "\tA count of the total number of filtered CVE records", "schema": { "$ref": "#/definitions/RecordCountModel" } } }, "summary": "Retrieves the count of all the CVE Records after applying the query parameters as filters (accessible to all users)", "operationId": "get_cve_count", "parameters": [ { "name": "state", "in": "query", "type": "string", "description": "Filter by state", "enum": [ "PUBLISHED", "REJECTED" ] } ], "tags": [ "cna" ] } }, "/cna/cve_cursor": { "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } }, "200": { "description": "A filtered list of CVE Records, along with pagination fields if results span multiple pages of data", "schema": { "$ref": "#/definitions/CveCursorUnionResponse" } } }, "summary": "Retrieves all CVE Records after applying the query parameters as filters (accessible to Secretariat)", "operationId": "get_cve_cursor", "parameters": [ { "name": "time_modified.lt", "in": "query", "type": "string", "format": "date-time", "description": "Most recent CVE record modified timestamp to retrieve" }, { "name": "time_modified.gt", "in": "query", "type": "string", "format": "date-time", "description": "Earliest CVE record modified timestamp to retrieve" }, { "name": "state", "in": "query", "type": "string", "description": "Filter by state", "enum": [ "PUBLISHED", "REJECTED" ] }, { "name": "count_only", "in": "query", "type": "boolean", "description": "Get count of records that match query" }, { "name": "assigner_short_name", "in": "query", "type": "string", "description": "Filter by assignerShortName" }, { "name": "assigner", "in": "query", "type": "string", "description": "Filter by assigner org UUID" }, { "name": "cna_modified", "in": "query", "type": "boolean", "description": "Only get CVE records with cnaContainers that have been modified/created within the set time_modified range" }, { "name": "adp_short_name", "in": "query", "type": "string", "description": "Only get CVE records that have an adpContainer owned by this org" }, { "name": "next_page", "in": "query", "type": "string", "description": "Key returned by a GET /cve_cursor call that must be used to get the next page of results in a subsequent call" }, { "name": "previous_page", "in": "query", "type": "string", "description": "Key returned by a GET /cve_cursor call that must be used to get the previous page of results in a subsequent call" }, { "name": "limit", "in": "query", "type": "integer", "description": "Maximum number of records to return" } ], "tags": [ "cna" ] } }, "/cna/health-check": { "get": { "responses": { "200": { "description": "Returns a 200 respose code" } }, "summary": "Check that the system is running", "description": "Checks that the system is running (accessible to all users)", "operationId": "get_health_check", "tags": [ "cna" ] } }, "/cna/org": { "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } } }, "operationId": "get_org", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "page", "in": "query", "type": "integer", "description": "The current page in the paginator", "default": 1 } ], "tags": [ "cna" ] } }, "/cna/org/{identifier}": { "parameters": [ { "name": "identifier", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } } }, "operationId": "get_org_id", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" } ], "tags": [ "cna" ] } }, "/cna/users": { "get": { "responses": { "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "401": { "description": "Not Authenticated", "schema": { "$ref": "#/definitions/GenericErrorModel" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/BadRequestModel" } } }, "operationId": "get_users", "parameters": [ { "name": "CVE-API-ORG", "in": "header", "type": "string", "description": "Organization shortname is required" }, { "name": "CVE-API-USER", "in": "header", "type": "string", "description": "Username is required" }, { "name": "CVE-API-KEY", "in": "header", "type": "string", "description": "API key is required" }, { "name": "page", "in": "query", "type": "integer", "description": "The current page in the paginator", "default": 1 } ], "tags": [ "cna" ] } }, "/cna_credential/": { "get": { "responses": { "200": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/CNACredentialsList" } } }, "403": { "description": "Admin permission required." } }, "summary": "List the CNA credentials", "description": "Only available to administrators.", "operationId": "list_cna_credentials", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 10 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cna_credential" ] } }, "/cna_credential/{credential_id}": { "parameters": [ { "name": "credential_id", "in": "path", "required": true, "type": "integer" } ], "put": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/CNACredential" } }, "403": { "description": "Admin permission required." }, "404": { "description": "CNA credential not found." } }, "summary": "Enable or disable CNA publication for the user bound to a credential", "description": "Enable or disable CNA publication for the user bound to a credential. Only available to administrators.", "operationId": "put_cna_credential_item", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "type": "object", "properties": { "enabled": { "type": "boolean" } } } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cna_credential" ] }, "get": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/CNACredential" } }, "403": { "description": "Admin permission required." }, "404": { "description": "CNA credential not found." } }, "summary": "Get a CNA credential", "description": "Get a CNA credential. Only available to administrators.\nOnly available to administrators.", "operationId": "get_cna_credential_item", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cna_credential" ] } }, "/cnw_kev/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/KEVsList" } } } }, "summary": "List all CNW KEV", "operationId": "list_kevs", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cnw_kev" ] } }, "/comment/": { "delete": { "responses": { "200": { "description": "Deleted comments successfully." }, "400": { "description": "Invalid UUID format." }, "403": { "description": "Admin permission required." }, "404": { "description": "No comments matched the filter." } }, "summary": "Delete comments by vulnerability_lookup_origin", "description": "Delete comments by vulnerability_lookup_origin (admin only).", "operationId": "delete_comments_list", "parameters": [ { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "required": true, "description": "Delete comments from this origin instance UUID." } ], "tags": [ "comment" ] }, "post": { "responses": { "201": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/CommentsList" } } }, "400": { "description": "JSON validation failed or incorrect payload to instantiate a comment." }, "403": { "description": "Commenter permission required or not the author of the comment." } }, "summary": "Create a new comment related to a security advisory (vulnerability)", "description": "Create a comment related to a security advisory.", "operationId": "post_comments_list", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/Comment" } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "comment" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/CommentsList" } } } }, "summary": "List all comments", "operationId": "list_comments", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the comment." }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Vulnerability related to the comment." }, { "name": "author", "in": "query", "type": "string", "description": "Author of the comment." }, { "name": "meta", "in": "query", "type": "string", "description": "Query for the meta JSON field. Tags are matched exactly. Example: meta=[{'tags': ['vulnerability:information=PoC']}]" }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the comments must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the comments must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "comment" ] } }, "/comment/{comment_uuid}": { "parameters": [ { "name": "comment_uuid", "in": "path", "required": true, "type": "string" } ], "delete": { "responses": { "204": { "description": "Success." }, "403": { "description": "Commenter permission required or not the author of the comment." }, "404": { "description": "Comment not found." } }, "summary": "Endpoint for deleting a comment", "description": "Delete a comment.", "operationId": "delete_comment_item", "tags": [ "comment" ] }, "get": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/Comment" } }, "404": { "description": "Comment not found." } }, "description": "Get a comment with its UUID.", "operationId": "get_comment_item", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "comment" ] } }, "/cwe/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/CWEsList" } } } }, "summary": "List all CWEs", "operationId": "list_cwes", "parameters": [ { "name": "vuln_id", "in": "query", "type": "string", "description": "ID of a vulnerability that references one or more CWE identifiers." }, { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "cwe" ] } }, "/cwe/{cwe_id}": { "parameters": [ { "name": "cwe_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get detailed information about a CWE", "description": "Get detailed information about a CWE.", "operationId": "get_cwe_item", "tags": [ "cwe" ] } }, "/emb3d/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/EMB3DsList" } } } }, "summary": "List all Adversarial Techniques from MITRE EMB3D", "operationId": "list_emb3ds", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Vulnerability identifier." }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "emb3d" ] } }, "/emb3d/{emb3d_id}": { "parameters": [ { "name": "emb3d_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get detailed information about a MITRE EMB3D Adversarial Technique", "description": "Get detailed information about a MITRE EMB3D Adversarial Technique.", "operationId": "get_emb3_d_item", "tags": [ "emb3d" ] } }, "/epss/{vulnerability_id}": { "parameters": [ { "name": "vulnerability_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success." }, "404": { "description": "EPSS score not found." }, "502": { "description": "Bad Gateway: Invalid response from EPSS service." }, "503": { "description": "Service Unavailable: Unable to reach EPSS service or misconfigured." } }, "summary": "Get the EPSS score of a vulnerability", "description": "Get the EPSS score of a vulnerability.", "operationId": "get_epss_item", "tags": [ "epss" ] } }, "/gcve/publication": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "List the GCVE published by the local Vulnerability-Lookup instance", "operationId": "List the GCVE published by the local Vulnerability-Lookup instance (as a GNA).", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 30 }, { "name": "date_sort", "in": "query", "type": "string", "description": "Field to sort by (published, updated, reserved).", "default": "updated" }, { "name": "sort_order", "in": "query", "type": "string", "description": "Sort order: asc or desc.", "default": "desc" }, { "name": "since", "in": "query", "type": "string", "description": "Retrieve vulnerabilities published/updated after this date.", "default": "" } ], "tags": [ "gcve" ] } }, "/gcve/registry": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/GNAsList" } } } }, "summary": "List the GNAs from the local GCVE registry of the Vulnerability-Lookup instance", "operationId": "List the GNAs from the local GCVE registry of the Vulnerability-Lookup instance.", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 100 }, { "name": "short_name", "in": "query", "type": "string", "description": "Short name of the organization.", "default": "" }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "gcve" ] } }, "/gcve/registry/integrity": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Verify the integrity of the local registry", "operationId": "Verify the integrity of the registry.", "tags": [ "gcve" ] } }, "/kev": { "post": { "responses": { "200": { "description": "Success" } }, "summary": "Create new KEV entry (requires reporter or admin role)", "operationId": "post_kev_list", "tags": [ "kev" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/KEVList" } } }, "summary": "List KEV entries with pagination and filtering", "operationId": "get_kev_list", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Page number", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Items per page (max 1000)", "default": 100 }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Filter by vulnerability ID" }, { "name": "status_reason", "in": "query", "type": "string", "enum": [ "confirmed", "suspected", "disputed", "historical", "unknown" ] }, { "name": "exploited", "in": "query", "type": "boolean", "description": "Filter by exploited status" }, { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "description": "Filter by origin instance UUID" }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "Filter from date (YYYY-MM-DD)" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "Filter to date (YYYY-MM-DD)" }, { "name": "author", "in": "query", "type": "string", "description": "Filter by author login" }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "kev" ] } }, "/kev/": { "post": { "responses": { "200": { "description": "Success" } }, "summary": "Create new KEV entry (requires reporter or admin role)", "operationId": "post_kev_list", "tags": [ "kev" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/KEVList" } } }, "summary": "List KEV entries with pagination and filtering", "operationId": "get_kev_list", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Page number", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Items per page (max 1000)", "default": 100 }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Filter by vulnerability ID" }, { "name": "status_reason", "in": "query", "type": "string", "enum": [ "confirmed", "suspected", "disputed", "historical", "unknown" ] }, { "name": "exploited", "in": "query", "type": "boolean", "description": "Filter by exploited status" }, { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "description": "Filter by origin instance UUID" }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "Filter from date (YYYY-MM-DD)" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "Filter to date (YYYY-MM-DD)" }, { "name": "author", "in": "query", "type": "string", "description": "Filter by author login" }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "kev" ] } }, "/kev/catalog/{catalog_uuid}": { "parameters": [ { "name": "catalog_uuid", "in": "path", "required": true, "type": "string" } ], "delete": { "responses": { "200": { "description": "Success" } }, "summary": "Delete all KEV entries from a specific catalog (admin only)", "operationId": "delete_kev_catalog_batch", "tags": [ "kev" ] } }, "/kev/origin/{origin_uuid}/{vuln_id}": { "parameters": [ { "name": "origin_uuid", "in": "path", "required": true, "type": "string" }, { "name": "vuln_id", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "200": { "description": "Success" } }, "summary": "Update KEV entry by (origin_uuid, vulnId) (author or admin only)", "operationId": "put_kev_detail_by_identifier", "tags": [ "kev" ] }, "delete": { "responses": { "200": { "description": "Success" } }, "summary": "Delete KEV entry by (origin_uuid, vulnId) (admin only)", "operationId": "delete_kev_detail_by_identifier", "tags": [ "kev" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/KEVEntry" } } }, "summary": "Get single KEV entry by (origin_uuid, vulnId)", "operationId": "get_kev_detail_by_identifier", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "kev" ] } }, "/kev/{kev_uuid}": { "parameters": [ { "name": "kev_uuid", "in": "path", "required": true, "type": "string" } ], "put": { "responses": { "200": { "description": "Success" } }, "summary": "Update KEV entry (author or admin only)", "operationId": "put_kev_detail", "tags": [ "kev" ] }, "delete": { "responses": { "200": { "description": "Success" } }, "summary": "Delete KEV entry (admin only)", "operationId": "delete_kev_detail", "tags": [ "kev" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/KEVEntry" } } }, "summary": "Get single KEV entry", "operationId": "get_kev_detail", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "kev" ] } }, "/organization/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/OrganizationsList" } } } }, "summary": "List all organizations", "operationId": "list_organizations", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 1000 }, { "name": "id", "in": "query", "type": "integer", "description": "ID of the organization." }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the organization." }, { "name": "name", "in": "query", "type": "string", "description": "The name of the organization." }, { "name": "gna_id", "in": "query", "type": "integer", "description": "The reserved GNA identifier of the organization." }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "organization" ] } }, "/product/": { "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/ProductsList" } } } }, "summary": "List all products", "operationId": "list_products", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 1000 }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the product." }, { "name": "name", "in": "query", "type": "string", "description": "The name of the product." }, { "name": "organization_name", "in": "query", "type": "string", "description": "The name of the organization related to the product." }, { "name": "organization_id", "in": "query", "type": "string", "description": "The id of the organization related to the product." }, { "name": "organization_uuid", "in": "query", "type": "string", "description": "The uuid of the organization related to the product." }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "product" ] } }, "/rulezet/search_rules_by_vulnerabilities/{vulnerability_id}": { "parameters": [ { "name": "vulnerability_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/RulesList" } } }, "404": { "description": "Rule not found in Rulezet." }, "502": { "description": "Bad Gateway: Invalid response from Rulezet." }, "503": { "description": "Service Unavailable: Unable to reach Rulezet or misconfigured." } }, "summary": "Get rules from Rulezet by vulnerability id", "description": "Get rules from Rulezet by vulnerability id.", "operationId": "get_rulezet_item", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 50 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "rulezet" ] } }, "/sighting": { "delete": { "responses": { "200": { "description": "Deleted sightings successfully." }, "403": { "description": "Not allowed to delete these sightings." }, "404": { "description": "No sightings matched the filters." } }, "summary": "Delete sightings by filters (author, source, date)", "description": "Delete sightings by filters (author, source, date). At least one filter must be specified.\nAt least one filter must be specified.", "operationId": "delete_sightings_list", "parameters": [ { "name": "author", "in": "query", "type": "string", "description": "Author of the sightings to delete (login). Only the author themselves or an admin can delete." }, { "name": "source", "in": "query", "type": "string", "description": "Source of the sightings (supports partial match using ilike)." }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "Delete sightings from this date (inclusive). Format: YYYY-MM-DD." }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "Delete sightings up to this date (inclusive). Format: YYYY-MM-DD." }, { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "description": "Delete sightings from this origin instance UUID." } ], "tags": [ "sighting" ] }, "post": { "responses": { "201": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/SightingsList" } } }, "400": { "description": "Incorrect payload to instantiate a sighting." }, "409": { "description": "Duplicate sighting." } }, "summary": "Create a new sighting", "description": "Create a new sighting.", "operationId": "post_sightings_list", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/Sighting" } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "sighting" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/SightingsList" } } } }, "summary": "List all sightings", "operationId": "list_sightings", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 1000 }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the sighting." }, { "name": "type", "in": "query", "type": "string", "description": "Type of sightings:\n - Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.\n - Published Proof of Concept: A public proof of concept is available for this vulnerability.\n - Exploited: This vulnerability was exploited and seen by the user reporting the sighting.\n - Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.\n - Confirmed: The vulnerability is confirmed from an analyst perspective.\n - Not confirmed: The user expresses doubt about the veracity of the vulnerability.\n - Patched: This vulnerability was successfully patched by the user reporting the sighting.\n - Not patched: This vulnerability was not successfully patched by the user reporting the sighting.", "enum": [ "seen", "published-proof-of-concept", "exploited", "not-exploited", "confirmed", "not-confirmed", "patched", "not-patched" ] }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Vulnerability related to the sighting." }, { "name": "author", "in": "query", "type": "string", "description": "Author of the sighting (login)." }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "source", "in": "query", "type": "string", "description": "Source of the sighting." }, { "name": "advisory_status", "in": "query", "type": "string", "description": "Filter sightings by the status of the related advisory.", "enum": [ "unpublished" ] }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "sighting" ] } }, "/sighting/": { "delete": { "responses": { "200": { "description": "Deleted sightings successfully." }, "403": { "description": "Not allowed to delete these sightings." }, "404": { "description": "No sightings matched the filters." } }, "summary": "Delete sightings by filters (author, source, date)", "description": "Delete sightings by filters (author, source, date). At least one filter must be specified.\nAt least one filter must be specified.", "operationId": "delete_sightings_list", "parameters": [ { "name": "author", "in": "query", "type": "string", "description": "Author of the sightings to delete (login). Only the author themselves or an admin can delete." }, { "name": "source", "in": "query", "type": "string", "description": "Source of the sightings (supports partial match using ilike)." }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "Delete sightings from this date (inclusive). Format: YYYY-MM-DD." }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "Delete sightings up to this date (inclusive). Format: YYYY-MM-DD." }, { "name": "vulnerability_lookup_origin", "in": "query", "type": "string", "description": "Delete sightings from this origin instance UUID." } ], "tags": [ "sighting" ] }, "post": { "responses": { "201": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/SightingsList" } } }, "400": { "description": "Incorrect payload to instantiate a sighting." }, "409": { "description": "Duplicate sighting." } }, "summary": "Create a new sighting", "description": "Create a new sighting.", "operationId": "post_sightings_list", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/Sighting" } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "sighting" ] }, "get": { "responses": { "200": { "description": "Success", "schema": { "type": "array", "items": { "$ref": "#/definitions/SightingsList" } } } }, "summary": "List all sightings", "operationId": "list_sightings", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 1000 }, { "name": "uuid", "in": "query", "type": "string", "description": "UUID of the sighting." }, { "name": "type", "in": "query", "type": "string", "description": "Type of sightings:\n - Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.\n - Published Proof of Concept: A public proof of concept is available for this vulnerability.\n - Exploited: This vulnerability was exploited and seen by the user reporting the sighting.\n - Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.\n - Confirmed: The vulnerability is confirmed from an analyst perspective.\n - Not confirmed: The user expresses doubt about the veracity of the vulnerability.\n - Patched: This vulnerability was successfully patched by the user reporting the sighting.\n - Not patched: This vulnerability was not successfully patched by the user reporting the sighting.", "enum": [ "seen", "published-proof-of-concept", "exploited", "not-exploited", "confirmed", "not-confirmed", "patched", "not-patched" ] }, { "name": "vuln_id", "in": "query", "type": "string", "description": "Vulnerability related to the sighting." }, { "name": "author", "in": "query", "type": "string", "description": "Author of the sighting (login)." }, { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "source", "in": "query", "type": "string", "description": "Source of the sighting." }, { "name": "advisory_status", "in": "query", "type": "string", "description": "Filter sightings by the status of the related advisory.", "enum": [ "unpublished" ] }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "sighting" ] } }, "/sighting/stats": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Aggregated sighting counts over a date range. Returns pre-grouped (no pagination) rows so the homepage can render the top-N charts and the evolution table without fetching raw sightings.", "operationId": "sightings_stats", "parameters": [ { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "Inclusive lower bound of creation date. Format: YYYY-MM-DD." }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "Inclusive upper bound of creation date. Format: YYYY-MM-DD." }, { "name": "type", "in": "query", "type": "string", "description": "Optional filter on sighting type.", "enum": [ "seen", "published-proof-of-concept", "exploited", "not-exploited", "confirmed", "not-confirmed", "patched", "not-patched" ] }, { "name": "group_by", "in": "query", "type": "string", "required": true, "description": "Grouping dimensions. 'type,vulnerability' returns per-type vulnerability counts (charts); 'vulnerability,date' returns daily counts per vulnerability (table).", "enum": [ "type,vulnerability", "vulnerability,date" ] } ], "tags": [ "sighting" ] } }, "/sighting/{sighting_uuid}": { "parameters": [ { "name": "sighting_uuid", "in": "path", "required": true, "type": "string" } ], "delete": { "responses": { "200": { "description": "Sighting deleted successfully." }, "403": { "description": "Not allowed to delete this sighting." }, "404": { "description": "Sighting not found." } }, "summary": "Delete a single sighting by UUID", "description": "Delete a single sighting by its UUID.", "operationId": "delete_sighting_item", "tags": [ "sighting" ] }, "get": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/Sighting" } }, "404": { "description": "Sighting not found." } }, "description": "Get a sighting with its UUID.", "operationId": "get_sighting_item", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "sighting" ] } }, "/stats/assigners/ranking": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the assigners ranking.", "operationId": "get_assigners_ranking", "parameters": [ { "name": "limit", "in": "query", "type": "integer", "description": "The top elements to take into account in the query.", "default": 10 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] }, { "name": "period", "in": "query", "type": "string", "description": "The period of the stats. Format: YYYY[-MM]", "default": "" }, { "name": "source", "in": "query", "type": "string", "description": "The source of the vulnerability advisories.", "default": "cvelistv5", "enum": [ "cvelistv5", "certfr_avis", "certfr_alerte" ] } ], "tags": [ "stats" ] } }, "/stats/cwe/most_used": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the most used CWEs based on sightings", "operationId": "get_cwe_most_used", "parameters": [ { "name": "limit", "in": "query", "type": "integer", "description": "The top elements to take into account in the query.", "default": 10 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] }, { "name": "period", "in": "query", "type": "string", "description": "The period of the stats. Format: YYYY[-MM]", "default": "" } ], "tags": [ "stats" ] } }, "/stats/sighting/exploitation_ratio": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Per CVE year, the share of CVEs that have at least one exploitation sighting (type 'exploited' or 'published-proof-of-concept') over the total number of published CVEs for that year. Useful to track whether the proportion of exploited vulnerabilities evolves over time, independently of the raw discovery volume. Note: recent years are undercounted, as sightings accumulate over time.", "operationId": "get_exploitation_ratio", "parameters": [ { "name": "year_from", "in": "query", "type": "integer", "description": "Inclusive lower bound of the CVE year range. Format: YYYY.", "default": 1999 }, { "name": "year_to", "in": "query", "type": "integer", "description": "Inclusive upper bound of the CVE year range. Defaults to the current year." }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] } ], "tags": [ "stats" ] } }, "/stats/sighting/exploitation_ratio_cumulative": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Cumulative share of published CVEs that have received at least one exploitation sighting ('exploited' or 'published-proof-of-concept'), bucketed by the date of the sighting rather than the CVE year. Each bucket reports the running totals up to that point, so the series is monotonic in its inputs and reflects how the overall exploited fraction evolves over time. Returns the trailing 'window' buckets (default 30).", "operationId": "get_exploitation_ratio_cumulative", "parameters": [ { "name": "granularity", "in": "query", "type": "string", "description": "Bucket size of the cumulative series.", "default": "month", "enum": [ "month", "year" ] }, { "name": "window", "in": "query", "type": "integer", "description": "Number of trailing buckets to return. Use 0 for the full history.", "default": 30 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] } ], "tags": [ "stats" ] } }, "/stats/vendors/ranking": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the vendors ranking.", "operationId": "get_vendors_ranking", "parameters": [ { "name": "limit", "in": "query", "type": "integer", "description": "The top elements to take into account in the query.", "default": 10 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] }, { "name": "period", "in": "query", "type": "string", "description": "The period of the stats. Format: YYYY[-MM]", "default": "" }, { "name": "source", "in": "query", "type": "string", "description": "The source of the vulnerability advisories.", "default": "cvelistv5", "enum": [ "cvelistv5", "certfr_avis", "certfr_alerte" ] } ], "tags": [ "stats" ] } }, "/stats/vulnerability/count": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the number of published/reserved vulnerabilities for a specific period.", "operationId": "get_vulnerability_count", "parameters": [ { "name": "state", "in": "query", "type": "string", "description": "The state of the advisory.", "default": "published", "enum": [ "published", "reserved" ] }, { "name": "period", "in": "query", "type": "string", "required": true, "description": "The period of the stats. Format: YYYY[-MM]", "default": "" }, { "name": "source", "in": "query", "type": "string", "required": true, "description": "The source of the vulnerability advisories.", "default": "cvelistv5", "enum": [ "cvelistv5", "github", "pysec", "tailscale", "ossf_malicious_packages", "variot" ] } ], "tags": [ "stats" ] } }, "/stats/vulnerability/most_commented": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the most commented vulnerabilities.", "operationId": "get_vulnerability_most_commented", "parameters": [ { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "limit", "in": "query", "type": "integer", "description": "The top elements to take into account in the query.", "default": 10 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] } ], "tags": [ "stats" ] } }, "/stats/vulnerability/most_sighted": { "get": { "responses": { "200": { "description": "Success" } }, "description": "Returns the most sighted vulnerabilities.", "operationId": "get_vulnerability_most_sighted", "parameters": [ { "name": "date_from", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be bigger or equal than this value. Format: YYYY-MM-DD" }, { "name": "date_to", "in": "query", "type": "string", "format": "date", "description": "The date of the sightings must be smaller or equal than this value. Format: YYYY-MM-DD" }, { "name": "sighting_type", "in": "query", "type": "string", "description": "The type of the sighting.", "default": "", "enum": [ "seen", "exploited", "published-proof-of-concept", "not-exploited", "confirmed", "not-confirmed", "patched", "not-patched" ] }, { "name": "limit", "in": "query", "type": "integer", "description": "The top elements to take into account in the query.", "default": 10 }, { "name": "output", "in": "query", "type": "string", "description": "The format of the output.", "default": "json", "enum": [ "json", "markdown" ] } ], "tags": [ "stats" ] } }, "/system/checkProcess": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Checks the heartbeats of the various processes", "description": "Checks the heartbeats of the various processes.", "operationId": "get_check_process", "tags": [ "system" ] } }, "/system/checkSMTP": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Checks the SMTP connection", "description": "Checks the SMTP connection.", "operationId": "get_check_smtp", "tags": [ "system" ] } }, "/system/configInfo": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Returns non-sensitive information about the configuration of the system", "description": "Returns non-sensitive information about the configuration of the system.", "operationId": "get_config_info", "tags": [ "system" ] } }, "/system/dbInfo": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Returns information about the current sources in the Kvrocks database in use and when it was updated", "description": "Returns information about the current sources in the Kvrocks database in use and when it was updated.", "operationId": "get_info", "tags": [ "system" ] } }, "/system/pgInfo": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Returns information about the PostgreSQL database", "description": "Returns information about the PostgreSQL database.", "operationId": "get_pg_info", "tags": [ "system" ] } }, "/system/redis_up": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Check if Valkey/Redis is up and running", "description": "Alias for /api/system/redis_up", "operationId": "get_redis_up_/system/redis_up", "deprecated": true, "tags": [ "system" ] } }, "/system/valkey_up": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Check if Valkey/Redis is up and running", "description": "Check if Valkey/Redis is up and running.", "operationId": "get_redis_up", "tags": [ "system" ] } }, "/user/": { "post": { "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/UserFull" } }, "201": { "description": "Success." }, "403": { "description": "Self-registration is disabled." }, "422": { "description": "Email address not accepted (disposable email detected, blocked domain, or invalid domain)." }, "429": { "description": "Too many requests (maximum 3 registrations/hour per IP)" } }, "description": "Create a non-admin user.", "operationId": "post_users_list", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 10 }, { "name": "payload", "required": true, "in": "body", "schema": { "type": "object", "properties": { "login": { "type": "string" }, "name": { "type": "string" }, "organisation": { "type": "string" }, "email": { "type": "string" } } } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "user" ] }, "get": { "responses": { "200": { "description": "Success.", "schema": { "type": "array", "items": { "$ref": "#/definitions/UsersList" } } }, "403": { "description": "Admin permission required." } }, "summary": "List all users", "description": "Only available to administrators.", "operationId": "list_users", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 10 }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "user" ] } }, "/user/api_key": { "post": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/UserFull" } }, "403": { "description": "Wrong API key submitted." }, "404": { "description": "User not found." } }, "summary": "Regenerating the API key of the authenticated user with the current API key", "description": "Regenerating the API key of the authenticated user with the current API key.", "operationId": "post_user_new_api_key", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "$ref": "#/definitions/API%20Key" } }, { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "user" ] } }, "/user/me": { "get": { "responses": { "200": { "description": "Success.", "schema": { "$ref": "#/definitions/UserFull" } }, "404": { "description": "User not found." } }, "summary": "Get information about the currently authenticated user", "description": "Get information about the currently authenticated user.", "operationId": "get_user_self", "parameters": [ { "name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask" } ], "tags": [ "user" ] } }, "/user/{user_id}": { "parameters": [ { "name": "user_id", "in": "path", "required": true, "type": "integer" } ], "delete": { "responses": { "204": { "description": "Success." }, "403": { "description": "Administrator permission required or not the current user." }, "404": { "description": "User not found." }, "500": { "description": "Internal server error." } }, "summary": "Endpoint for deleting a user", "description": "Delete a user.", "operationId": "delete_user_item", "tags": [ "user" ] } }, "/vex/": { "get": { "responses": { "200": { "description": "Success." } }, "summary": "Browse VEX records and pivot to the related vulnerability", "description": "Browse the VEX records available in vulnerability-lookup, newest first.", "operationId": "get_vex_browse", "parameters": [ { "name": "source", "in": "query", "type": "string", "description": "Filter by VEX metadata source." }, { "name": "q", "in": "query", "type": "string", "description": "Case-insensitive substring filter on the vulnerability id or document title." }, { "name": "page", "in": "query", "type": "integer", "default": 1, "description": "Number of the page." }, { "name": "per_page", "in": "query", "type": "integer", "default": 100, "description": "Maximum number of VEX records to return (capped at 1000)." } ], "tags": [ "vex" ] } }, "/vex/{vulnerability_id}": { "parameters": [ { "name": "vulnerability_id", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success." } }, "summary": "Get the VEX statements attached to a vulnerability", "description": "Get the VEX statements attached to a vulnerability.", "operationId": "get_vex_list", "tags": [ "vex" ] } }, "/vex/{vulnerability_id}/{meta_source}/csaf": { "parameters": [ { "name": "vulnerability_id", "in": "path", "required": true, "type": "string" }, { "name": "meta_source", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success." }, "404": { "description": "No stored VEX document for this vulnerability and source." } }, "summary": "Get the full CSAF VEX document stored for a vulnerability", "description": "Get the full CSAF VEX document stored for a vulnerability.", "operationId": "get_vex_document", "tags": [ "vex" ] } }, "/vlai/severity-classification": { "post": { "responses": { "200": { "description": "Success." }, "500": { "description": "Unexpected error." }, "502": { "description": "Bad content: Invalid response from ML-Gateway." }, "503": { "description": "Connection Error: Unable to reach ML-Gateway." } }, "description": "Classify vulnerabilities by severity based on their descriptions.", "operationId": "post_vlai_severity_classification", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "type": "object", "properties": { "description": { "type": "string" }, "model": { "type": "string" } } } } ], "tags": [ "vlai" ] } }, "/vulnerability/": { "parameters": [ { "default": "", "in": "query", "description": "Optional product name to filter vulnerabilities (case-insensitive). When provided, results are returned for the product across all vendors.", "name": "product", "type": "string" }, { "default": "false", "in": "query", "description": "If 'true', include sightings for each result. Ignored in light mode.", "name": "with_sightings", "type": "string" }, { "default": "false", "in": "query", "description": "If 'true', include bundles for each result. Ignored in light mode.", "name": "with_bundles", "type": "string" }, { "default": "false", "in": "query", "description": "If 'true', include comments for each result. Ignored in light mode.", "name": "with_comments", "type": "string" }, { "default": "false", "in": "query", "description": "If 'true', include linked vulnerabilities for each result. Ignored in light mode.", "name": "with_linked", "type": "string" }, { "default": "false", "in": "query", "description": "If 'true', include metadata for each vulnerability. Ignored in light mode.", "name": "with_meta", "type": "string" }, { "default": "0", "in": "query", "description": "If '1', returns only vulnerability ID and source", "name": "light", "type": "string" }, { "in": "query", "description": "Filter vulnerabilities by a specific CWE ID", "name": "cwe", "type": "string" }, { "default": "", "in": "query", "description": "Retrieve vulnerabilities reported after the specified date.", "name": "since", "type": "string" }, { "default": "desc", "in": "query", "description": "Sort order: 'asc' or 'desc'", "name": "sort_order", "type": "string" }, { "default": "updated", "in": "query", "description": "Sort field: '', 'published', 'updated', 'reserved'", "name": "date_sort", "type": "string" }, { "default": 30, "in": "query", "description": "Maximum number of results (capped at 100)", "name": "per_page", "type": "string" }, { "default": 1, "in": "query", "description": "Pagination page number", "name": "page", "type": "string" }, { "in": "query", "description": "Optional data source to filter vulnerabilities (e.g., 'cvelistv5', 'github', 'nvd')", "name": "source", "type": "string" } ], "post": { "responses": { "200": { "description": "Success." }, "400": { "description": "JSON validation failed." }, "403": { "description": "Reporter permission required." }, "422": { "description": "Not possible to edit a vulnerability from the requested source." } }, "summary": "Endpoint for creating and editing vulnerabilities in the local source", "description": "Retrieve vulnerabilities with optional filtering and pagination.\n\nSupports light mode for minimal data (returns only vulnerability ID and source).\nCreate a vulnerability with the CVE version 5 format.\n(Deprecated)", "operationId": "post_vulnerabilities_list", "parameters": [ { "name": "payload", "required": true, "in": "body", "schema": { "type": "object", "properties": { "data": { "type": "string" } } } } ], "tags": [ "vulnerability" ] }, "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities with optional filters", "description": "Retrieve vulnerabilities with optional filtering and pagination.\n\nSupports light mode for minimal data (returns only vulnerability ID and source).\nReturns full vulnerability details by default, or only IDs and sources in light mode.\n\nQuery Parameters\n----------------\nsource : str\n Optional source to filter vulnerabilities (e.g., 'CVE', 'GHSA', 'PySec').\nper_page : int, default=30\n Maximum number of results (capped at 100).\ndate_sort : str\n Field to sort by. Options: '', 'published', 'updated', 'reserved'.\nsort_order : str\n Sort order: 'asc' or 'desc'.\nsince : str\n Retrieve vulnerabilities published/updated after the specified date.\npage : int\n Pagination page number.\ncwe : str\n Filter vulnerabilities by a specific CWE ID.\nproduct : str\n Optional product name to filter vulnerabilities (case-insensitive). If set, the endpoint returns vulnerabilities related to this product across all vendors. Use with `assigner` to further narrow results.\nassigner : str\n Optional CNA/assigner short name to filter results (case-insensitive). Only effective when used with `product` or `vendor` filters.\nlight : str\n If '1', returns only `(vulnerability_id, source)` instead of full details.\nwith_meta : str\n If 'true', includes metadata for each vulnerability. Ignored in light mode.\nwith_linked : str\n If 'true', includes linked vulnerabilities for each result. Ignored in light mode.\nwith_comments : str\n If 'true', includes comments for each result. Ignored in light mode.\nwith_bundles : str\n If 'true', includes bundles for each result. Ignored in light mode.\nwith_sightings : str\n If 'true', includes sightings for each result. Ignored in light mode.\n\nReturns\n-------\nlist[dict[str, Any]] | list[tuple[str, str | None]]\n Full vulnerability details or minimal tuples if light mode is enabled.", "operationId": "get_vulnerabilities_list", "tags": [ "vulnerability" ] } }, "/vulnerability/browse/": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the known vendors", "description": "Deprecated: use GET /api/browse/vendors instead. Get the known vendors.\nDeprecated in favor of /api/browse/vendors.", "operationId": "get_vendors", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/browse/assigners": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get the known CNAs", "description": "Get the known CNAs.", "operationId": "get_assigners", "tags": [ "vulnerability" ] } }, "/vulnerability/cpesearch/{cpe}": { "parameters": [ { "default": "desc", "in": "query", "description": "Sort order: 'asc' or 'desc'", "name": "sort_order", "type": "string" }, { "default": "updated", "in": "query", "description": "Sort field: '', 'published', 'updated', 'reserved'", "name": "date_sort", "type": "string" }, { "default": 30, "in": "query", "description": "Maximum number of results (capped at 100)", "name": "per_page", "type": "string" }, { "default": 1, "in": "query", "description": "Pagination page number", "name": "page", "type": "string" }, { "default": "cvelistv5", "in": "query", "description": "Optional source to filter vulnerabilities (e.g., 'cvelistv5', 'nvd')", "name": "source", "type": "string" }, { "name": "cpe", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success." }, "404": { "description": "No match found in the CPE string." } }, "summary": "Get vulnerabilities by CPE (based on the extracted CPE vendor and product)", "description": "Get vulnerabilities by CPE (based on the extracted CPE vendor and product).", "operationId": "get_cpe_search", "tags": [ "vulnerability" ] } }, "/vulnerability/fulltext": { "get": { "responses": { "200": { "description": "Success." }, "400": { "description": "Missing or empty query parameter." }, "503": { "description": "Fulltext search is not enabled on this instance." } }, "summary": "Search vulnerabilities using fulltext search", "description": "Fulltext search across all indexed vulnerability sources.", "operationId": "get_fulltext_search", "parameters": [ { "name": "q", "in": "query", "type": "string", "required": true, "description": "Fulltext search query string." }, { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return (capped at 100).", "default": 10 }, { "name": "sources", "in": "query", "type": "string", "description": "Comma-separated list of sources to search (e.g., 'cvelistv5', 'variot', 'certfr_alerte', 'certfr_avis', 'jvndb'). Defaults to 'cvelistv5'." } ], "tags": [ "vulnerability" ] } }, "/vulnerability/last": { "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "cwe", "in": "query", "type": "string", "description": "CWE mentioned in the vulnerability." } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve the latest vulnerabilities, with optional filters for source and number of results", "description": "Retrieve the latest vulnerabilities, with optional filters for source and number of results. Supports light mode for minimal data and provides backward-compatible routes.The light mode only returns the vulnerability id and the sources.\nSupports light mode for minimal data and provides backward-compatible routes.\nThe light mode only returns the vulnerability id and the sources.", "operationId": "get_last", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/last/{number}": { "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "cwe", "in": "query", "type": "string", "description": "CWE mentioned in the vulnerability." }, { "name": "number", "in": "path", "required": true, "type": "integer" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve the latest vulnerabilities, with optional filters for source and number of results", "description": "Retrieve the latest vulnerabilities, with optional filters for source and number of results. Supports light mode for minimal data and provides backward-compatible routes.The light mode only returns the vulnerability id and the sources.\nSupports light mode for minimal data and provides backward-compatible routes.\nThe light mode only returns the vulnerability id and the sources.", "operationId": "get_last", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/last/{source}": { "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "cwe", "in": "query", "type": "string", "description": "CWE mentioned in the vulnerability." }, { "name": "source", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve the latest vulnerabilities, with optional filters for source and number of results", "description": "Retrieve the latest vulnerabilities, with optional filters for source and number of results. Supports light mode for minimal data and provides backward-compatible routes.The light mode only returns the vulnerability id and the sources.\nSupports light mode for minimal data and provides backward-compatible routes.\nThe light mode only returns the vulnerability id and the sources.", "operationId": "get_last", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/last/{source}/{number}": { "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "cwe", "in": "query", "type": "string", "description": "CWE mentioned in the vulnerability." }, { "name": "source", "in": "path", "required": true, "type": "string" }, { "name": "number", "in": "path", "required": true, "type": "integer" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve the latest vulnerabilities, with optional filters for source and number of results", "description": "Retrieve the latest vulnerabilities, with optional filters for source and number of results. Supports light mode for minimal data and provides backward-compatible routes.The light mode only returns the vulnerability id and the sources.\nSupports light mode for minimal data and provides backward-compatible routes.\nThe light mode only returns the vulnerability id and the sources.", "operationId": "get_last", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent/": { "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent/{date}": { "parameters": [ { "name": "date", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent/{date}/{number}": { "parameters": [ { "name": "date", "in": "path", "required": true, "type": "string" }, { "name": "number", "in": "path", "required": true, "type": "integer" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent/{date}/{source}": { "parameters": [ { "name": "date", "in": "path", "required": true, "type": "string" }, { "name": "source", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/recent/{date}/{source}/{number}": { "parameters": [ { "name": "date", "in": "path", "required": true, "type": "string" }, { "name": "source", "in": "path", "required": true, "type": "string" }, { "name": "number", "in": "path", "required": true, "type": "integer" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results", "description": "Retrieve vulnerabilities reported after a specified date, with optional filters for source and number of results. Defaults to the last 24 hours if no date is provided. Supports light mode for minimal data.\nDefaults to the last 24 hours if no date is provided. Supports light mode for minimal data.", "operationId": "get_recent", "deprecated": true, "tags": [ "vulnerability" ] } }, "/vulnerability/search/{vendor}/{product}": { "parameters": [ { "name": "vendor", "in": "path", "required": true, "type": "string" }, { "name": "product", "in": "path", "required": true, "type": "string" } ], "get": { "responses": { "200": { "description": "Success" } }, "summary": "Returns a list of vulnerabilities related to the vendor and product", "description": "Returns a list of vulnerabilities related to the product.\nOptionally filter vulnerabilities published or updated after the specified date (format: YYYY-MM-DD).", "operationId": "get_vendor_product_vulnerabilities", "parameters": [ { "name": "page", "in": "query", "type": "integer", "description": "Number of the page.", "default": 1 }, { "name": "per_page", "in": "query", "type": "integer", "description": "Maximum number of elements to return.", "default": 10 }, { "name": "since", "in": "query", "type": "string", "description": "Filter vulnerabilities published or updated after the specified date (format: YYYY-MM-DD)." } ], "tags": [ "vulnerability" ] } }, "/vulnerability/{vulnerability_id}": { "parameters": [ { "name": "vulnerability_id", "in": "path", "required": true, "type": "string" } ], "delete": { "responses": { "204": { "description": "Success." }, "403": { "description": "Admin permission required." }, "422": { "description": "Not possible to edit a vulnerability from the requested source." } }, "summary": "Endpoint for deleting a vulnerability", "description": "Delete a vulnerability from the local source.\nWe only accept to delete vulnerabilities from the local source.", "operationId": "delete_vulnerability", "tags": [ "vulnerability" ] }, "get": { "responses": { "200": { "description": "Success" } }, "summary": "Get a vulnerability with its id", "description": "Get a vulnerability.", "operationId": "get_vulnerability", "parameters": [ { "name": "with_meta", "in": "query", "type": "boolean", "description": "Include metadata.", "default": false }, { "name": "with_linked", "in": "query", "type": "boolean", "description": "Include the linked vulnerabilities.", "default": false }, { "name": "with_comments", "in": "query", "type": "boolean", "description": "Include the comments.", "default": false }, { "name": "with_bundles", "in": "query", "type": "boolean", "description": "Include the bundles.", "default": false }, { "name": "with_sightings", "in": "query", "type": "boolean", "description": "Include the sightings.", "default": false } ], "tags": [ "vulnerability" ] } } }, "info": { "title": "Vulnerability-Lookup API", "version": "5.3.0", "description": "
API to query Vulnerability-Lookup. A project from CIRCL.

Back to the main page

Official documentation of the project.", "license": { "name": "GNU Affero General Public License version 3", "url": "https://www.gnu.org/licenses/agpl-3.0.html" } }, "produces": [ "application/json" ], "consumes": [ "application/json" ], "securityDefinitions": { "apikey": { "type": "apiKey", "in": "header", "name": "X-API-KEY" } }, "security": [ { "apikey": [] } ], "tags": [ { "name": "system", "description": "Endpoints for retrieving various information about the system's status." }, { "name": "vulnerability", "description": "Vulnerability related operations." }, { "name": "browse", "description": "Endpoints for accessing vendor and product information." }, { "name": "stats", "description": "Endpoint for retrieving various statistics." }, { "name": "comment", "description": "Comment related operations." }, { "name": "user", "description": "User related operations." }, { "name": "bundle", "description": "Bundle related operations." }, { "name": "sighting", "description": "Sighting related operations." }, { "name": "cna_credential", "description": "CNA credentials related operations (administrators only)." }, { "name": "epss", "description": "EPSS related operations." }, { "name": "vex", "description": "VEX related operations." }, { "name": "cwe", "description": "CWE related operations." }, { "name": "capec", "description": "CAPEC related operations." }, { "name": "organization", "description": "Organization related operations." }, { "name": "product", "description": "Product related operations." }, { "name": "emb3d", "description": "EMB3D related operations." }, { "name": "cisa_kev", "description": "CISA KEV related operations." }, { "name": "cnw_kev", "description": "CNW KEV related operations." }, { "name": "gcve", "description": "GCVE related operations." }, { "name": "vlai", "description": "AI and NLP-driven services provided via the ML-Gateway." }, { "name": "rulezet", "description": "Rulezet related operations." }, { "name": "kev", "description": "KEV catalog operations (GCVE-BCP-07)." }, { "name": "cna", "description": "API endpoint which is confrom with CNA API endpoint" } ], "definitions": { "Comment": { "properties": { "uuid": { "type": "string", "description": "Comment uuid." }, "vulnerability_lookup_origin": { "type": "string", "description": "UUID of the Vulnerability-Lookup origin instance.", "readOnly": true, "default": "1a89b78e-f703-45f3-bb86-59eb712668be" }, "title": { "type": "string", "description": "Comment title." }, "description": { "type": "string", "description": "Description." }, "description_format": { "type": "string", "description": "Description format (markdown or text)." }, "vulnerability": { "type": "string", "description": "Vulnerability id." }, "creation_timestamp": { "type": "string", "format": "date-time", "description": "Creation time of the comment.", "readOnly": true }, "timestamp": { "type": "string", "format": "date-time", "description": "Updated time of the comment.", "readOnly": true }, "related_vulnerabilities": { "type": "array", "description": "One or more vulnerability references (CVE ID, GHSA-ID, PYSEC ID, etc.) for this comment.", "items": { "type": "string" } }, "meta": { "type": "object", "description": "Zero or more meta-fields." }, "author": { "readOnly": true, "allOf": [ { "$ref": "#/definitions/User" } ] } }, "type": "object" }, "User": { "properties": { "login": { "type": "string", "description": "Login of the user.", "readOnly": true } }, "type": "object" }, "CommentsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of comments.", "items": { "$ref": "#/definitions/Comment" } } }, "type": "object" }, "metadata": { "properties": { "count": { "type": "integer", "description": "Total number of the items of the data.", "readOnly": true }, "page": { "type": "integer", "description": "Number of the page.", "readOnly": true }, "per_page": { "type": "integer", "description": "Requested limit data.", "readOnly": true } }, "type": "object" }, "UserFull": { "properties": { "uuid": { "type": "string", "description": "User UUID." }, "login": { "type": "string", "description": "User login." }, "is_admin": { "type": "boolean", "description": "Boolean specifying whether the user is administrator." }, "is_reporter": { "type": "boolean", "description": "Boolean specifying whether the user is reporter." }, "is_commenter": { "type": "boolean", "description": "Boolean specifying whether the user is commenter." }, "created_at": { "type": "string", "format": "date-time", "description": "Creation time of the user.", "readOnly": true }, "last_seen": { "type": "string", "format": "date-time", "description": "Last seen time of the user.", "readOnly": true } }, "type": "object" }, "API Key": { "properties": { "apikey": { "type": "string", "description": "The current API key of the user." } }, "type": "object" }, "UsersList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of users.", "items": { "$ref": "#/definitions/UserFull" } } }, "type": "object" }, "Bundle": { "properties": { "uuid": { "type": "string", "description": "Bundle id." }, "vulnerability_lookup_origin": { "type": "string", "description": "UUID of the Vulnerability-Lookup origin instance.", "readOnly": true, "default": "1a89b78e-f703-45f3-bb86-59eb712668be" }, "name": { "type": "string", "description": "Bundle name." }, "description": { "type": "string", "description": "Description." }, "creation_timestamp": { "type": "string", "format": "date-time", "description": "Creation time of the bundle.", "readOnly": true }, "timestamp": { "type": "string", "format": "date-time", "description": "Updated time of the bundle.", "readOnly": true }, "related_vulnerabilities": { "type": "array", "description": "One or more vulnerability references (CVE ID, GHSA-ID, PYSEC ID, etc.) for this bundle.", "items": { "type": "string" } }, "meta": { "type": "object", "description": "Zero or more meta-fields." }, "author": { "readOnly": true, "allOf": [ { "$ref": "#/definitions/User" } ] } }, "type": "object" }, "BundlesList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of bundles.", "items": { "$ref": "#/definitions/Bundle" } } }, "type": "object" }, "Sighting": { "properties": { "uuid": { "type": "string", "description": "Sighting UUID.", "readOnly": true }, "vulnerability_lookup_origin": { "type": "string", "description": "UUID of the Vulnerability-Lookup origin instance.", "readOnly": true, "default": "1a89b78e-f703-45f3-bb86-59eb712668be" }, "creation_timestamp": { "type": "string", "format": "date-time", "description": "Creation time of the sighting.", "readOnly": true }, "type": { "type": "string", "description": "Type of the sighting." }, "source": { "type": "string", "description": "The source of the sighting (Fediverse status URI, link, tool, etc.)." }, "content": { "type": "string", "description": "Optional content of the sighting (e.g. the body of a Telegram message, a Bluesky/Mastodon post, a GitHub Gist or a blog article).", "default": "" }, "vulnerability": { "type": "string", "description": "Vulnerability id." }, "author": { "readOnly": true, "allOf": [ { "$ref": "#/definitions/User" } ] } }, "type": "object" }, "SightingsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of sightings.", "items": { "$ref": "#/definitions/Sighting" } } }, "type": "object" }, "CNACredentialsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of CNA credentials.", "items": { "$ref": "#/definitions/CNACredential" } } }, "type": "object" }, "CNACredential": { "properties": { "id": { "type": "integer", "description": "CNA credential id.", "readOnly": true }, "login": { "type": "string", "description": "Login of the user bound to this credential.", "readOnly": true }, "cve_api_org": { "type": "string", "description": "CVE Services API organization." }, "cve_api_user": { "type": "string", "description": "CVE Services API user." }, "enabled": { "type": "boolean", "description": "Whether CNA publication is allowed for the user bound to this credential." }, "created_at": { "type": "string", "format": "date-time", "description": "Creation time of the credential.", "readOnly": true }, "updated_at": { "type": "string", "format": "date-time", "description": "Last update time of the credential.", "readOnly": true } }, "type": "object" }, "CWEsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of CWEs.", "items": { "$ref": "#/definitions/CWE" } } }, "type": "object" }, "CWE": { "required": [ "@Abstraction", "@ID", "@Name", "@Status", "@Structure", "Description" ], "properties": { "@ID": { "type": "string", "description": "CWE ID" }, "@Name": { "type": "string", "description": "Name of the CWE" }, "@Abstraction": { "type": "string", "description": "Abstraction of the CWE" }, "@Structure": { "type": "string", "description": "Structure of the CWE" }, "@Status": { "type": "string", "description": "Status of the CWE" }, "Description": { "type": "string", "description": "Description of the CWE" }, "Related_Weaknesses": { "description": "Related weaknesses", "allOf": [ { "$ref": "#/definitions/RelatedWeaknesses" } ] }, "Potential_Mitigations": { "description": "Potential mitigations", "allOf": [ { "$ref": "#/definitions/Mitigations" } ] } }, "type": "object" }, "RelatedWeaknesses": { "properties": { "Related_Weakness": { "type": "array", "description": "List of related weaknesses", "items": { "$ref": "#/definitions/RelatedWeakness" } } }, "type": "object" }, "RelatedWeakness": { "required": [ "@CWE_ID", "@Nature", "@Ordinal", "@View_ID" ], "properties": { "@Nature": { "type": "string", "description": "Nature of the relationship" }, "@CWE_ID": { "type": "string", "description": "CWE ID of the related weakness" }, "@View_ID": { "type": "string", "description": "View ID of the related weakness" }, "@Ordinal": { "type": "string", "description": "Ordinal of the relationship" } }, "type": "object" }, "Mitigations": { "properties": { "Mitigation": { "type": "array", "description": "List of potential mitigations", "items": { "$ref": "#/definitions/Mitigation" } } }, "type": "object" }, "Mitigation": { "required": [ "@Mitigation_ID", "Description" ], "properties": { "@Mitigation_ID": { "type": "string", "description": "Id of the mitigation" }, "Description": { "type": "string", "description": "Description of the mitigation" } }, "type": "object" }, "CAPECsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of CAPECs.", "items": { "$ref": "#/definitions/CAPEC" } } }, "type": "object" }, "CAPEC": { "properties": { "@ID": { "type": "string", "description": "Identifiant.", "readOnly": true }, "@Name": { "type": "string", "description": "Name.", "readOnly": true }, "@Description": { "type": "string", "description": "Description.", "readOnly": true } }, "type": "object" }, "OrganizationsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of organizations.", "items": { "$ref": "#/definitions/Organization" } } }, "type": "object" }, "Organization": { "properties": { "id": { "type": "string", "description": "Organization id." }, "uuid": { "type": "string", "description": "Organization uuid." }, "name": { "type": "string", "description": "Organization name." }, "short_name": { "type": "string", "description": "Organization short name." }, "description": { "type": "string", "description": "Description." }, "gna_id": { "type": "integer", "description": "The reserved GNA identifier of the organization." }, "creation_timestamp": { "type": "string", "format": "date-time", "description": "Creation time of the organization.", "readOnly": true }, "updated_timestamp": { "type": "string", "format": "date-time", "description": "Updated time of the organization.", "readOnly": true } }, "type": "object" }, "ProductsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of products.", "items": { "$ref": "#/definitions/Product" } } }, "type": "object" }, "Product": { "properties": { "id": { "type": "string", "description": "Product id." }, "uuid": { "type": "string", "description": "Product uuid." }, "name": { "type": "string", "description": "Product name." }, "description": { "type": "string", "description": "Description." }, "creation_timestamp": { "type": "string", "format": "date-time", "description": "Creation time of the product.", "readOnly": true }, "updated_timestamp": { "type": "string", "format": "date-time", "description": "Updated time of the product.", "readOnly": true } }, "type": "object" }, "EMB3DsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of Adversarial Techniques from MITRE EMB3D.", "items": { "$ref": "#/definitions/Emb3d" } } }, "type": "object" }, "Emb3d": { "properties": { "id": { "type": "string", "description": "Identifiant", "readOnly": true }, "Type": { "type": "string", "description": "Type", "readOnly": true }, "description": { "type": "string", "description": "Description", "readOnly": true }, "CWE": { "type": "object", "description": "CWE", "readOnly": true } }, "type": "object" }, "KEVsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of KEVs.", "items": { "$ref": "#/definitions/KEV" } } }, "type": "object" }, "KEV": { "required": [ "CVE" ], "properties": { "CVE": { "type": "string", "description": "CVE identifier" }, "EUVD": { "type": "string", "description": "EUVD identifier" }, "vendorProject": { "type": "string", "description": "Vendor or project name" }, "product": { "type": "string", "description": "Product affected by the vulnerability" }, "vulnerabilityName": { "type": "string", "description": "Vulnerability name" }, "dateReported": { "type": "string", "description": "Date when reported" }, "originSource": { "type": "string", "description": "Source reporting the vulnerability" }, "shortDescription": { "type": "string", "description": "Short description of the vulnerability" }, "exploitationType": { "type": "string", "description": "Type of exploitation observed" }, "threatActorsExploiting": { "type": "string", "description": "Threat actors exploiting the vulnerability" }, "notes": { "type": "string", "description": "Additional notes or links" }, "cwes": { "type": "string", "description": "CWE identifiers" } }, "type": "object" }, "GNAsList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of GNAs.", "items": { "$ref": "#/definitions/GNA" } } }, "type": "object" }, "GNA": { "properties": { "id": { "type": "string", "description": "Unique identifier for the GCVE Numbering Authority.", "readOnly": true }, "short_name": { "type": "string", "description": "Short name of the organization.", "readOnly": true }, "full_name": { "type": "string", "description": "Full legal name of the organization.", "readOnly": true }, "cpe_vendor_name": { "type": "string", "description": "Official CPE vendor name.", "readOnly": true }, "gcve_url": { "type": "string", "description": "URL to the public vulnerability disclosure website.", "readOnly": true }, "gcve_api": { "type": "string", "description": "URL of the API endpoint providing vulnerability data.", "readOnly": true }, "gcve_dump": { "type": "string", "description": "URL to a machine-readable dump (e.g., JSON) of vulnerability information.", "readOnly": true }, "gcve_allocation": { "type": "string", "description": "URL of the interface used to allocate or register new vulnerabilities.", "readOnly": true }, "gcve_pull_api": { "type": "string", "description": "URL of the interface compatible to retrieve the local GNA publications.", "readOnly": true } }, "type": "object" }, "RulesList": { "properties": { "metadata": { "description": "Metadata related to the result.", "allOf": [ { "$ref": "#/definitions/metadata" } ] }, "data": { "type": "array", "description": "List of rules.", "items": { "$ref": "#/definitions/Rule" } } }, "type": "object" }, "Rule": { "required": [ "creation_date", "description", "detail_url", "format", "id", "raw", "title", "updated_date", "uuid", "vulnerability_id" ], "properties": { "id": { "type": "integer", "description": "Rule ID." }, "uuid": { "type": "string", "description": "Rule UUID." }, "vulnerability_id": { "type": "string", "description": "Related vulnerability." }, "format": { "type": "string", "description": "Format of the rule." }, "title": { "type": "string", "description": "Title of the rule." }, "description": { "type": "string", "description": "Description of the rule." }, "raw": { "type": "string", "description": "raw version of the rule." }, "detail_url": { "type": "string", "description": "URL of the rule." }, "creation_date": { "type": "string", "description": "Date the ule was created." }, "updated_date": { "type": "string", "description": "Date the rule was updated." } }, "type": "object" }, "KEVList": { "properties": { "metadata": { "$ref": "#/definitions/ListMetadata" }, "data": { "type": "array", "items": { "$ref": "#/definitions/KEVEntry" } } }, "type": "object" }, "ListMetadata": { "properties": { "count": { "type": "integer", "description": "Total number of the items of the data.", "readOnly": true }, "page": { "type": "integer", "description": "Number of the page.", "readOnly": true }, "per_page": { "type": "integer", "description": "Requested limit data.", "readOnly": true } }, "type": "object" }, "KEVEntry": { "properties": { "uuid": { "type": "string", "description": "KEV entry UUID", "readOnly": true }, "vulnerability": { "$ref": "#/definitions/Vulnerability" }, "gcve": { "description": "GCVE origin metadata for the KEV assertion", "allOf": [ { "$ref": "#/definitions/GCVERoot" } ] }, "status": { "$ref": "#/definitions/Status" }, "characteristics": { "type": "object", "description": "Technical characteristics" }, "timestamps": { "type": "object", "description": "Temporal context" }, "scope": { "type": "object", "description": "Geographical/sectoral context" }, "evidence": { "type": "array", "description": "Supporting evidence", "items": { "$ref": "#/definitions/Evidence" } }, "references": { "type": "object", "description": "Related references" } }, "type": "object" }, "Vulnerability": { "required": [ "vulnId" ], "properties": { "vulnId": { "type": "string", "description": "Vulnerability ID" }, "altId": { "type": "array", "description": "Alternative vulnerability identifiers", "items": { "type": "string" } } }, "type": "object" }, "GCVERoot": { "properties": { "origin_uuid": { "type": "string", "description": "UUID of the origin instance where the KEV assertion originated" }, "gna": { "type": "integer", "description": "GNA ID identifying the origin of the KEV assertion (0-65535)", "minimum": 0, "maximum": 65535 }, "object_uuid": { "type": "string", "description": "UUID of the KEV assertion in the GCVE ecosystem" } }, "type": "object" }, "Status": { "required": [ "exploited", "status_reason", "status_updated_at" ], "properties": { "exploited": { "type": "boolean", "description": "Exploitation observed" }, "status_reason": { "type": "string", "description": "Status reason", "example": "confirmed", "enum": [ "confirmed", "suspected", "disputed", "historical", "unknown" ] }, "status_updated_at": { "type": "string", "format": "date-time", "description": "Status update time" } }, "type": "object" }, "Evidence": { "required": [ "source" ], "properties": { "type": { "type": "string", "description": "Evidence type (optional)", "example": "incident_response", "enum": [ "incident_response", "telemetry", "honeypot", "sinkhole", "vendor_report", "csirt_report", "public_report", "research_report", "unknown" ] }, "source": { "type": "string", "description": "Evidence source (required)" }, "signal": { "type": "object", "description": "Evidence signal (string or array of strings)" }, "confidence": { "type": "object", "description": "Confidence (number 0.0-1.0 or string)" }, "details": { "type": "object", "description": "Implementation-specific details" } }, "type": "object" }, "GenericErrorModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "error": { "type": "string", "description": "Error name" }, "message": { "type": "string", "description": "Error description" } } }, "BadRequestModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "error": { "type": "string", "description": "Error name" }, "message": { "type": "string", "description": "Error description" }, "details": { "type": "array", "items": { "type": "object", "properties": { "msg": { "type": "string", "description": "Invalid value" }, "param": { "type": "string", "description": "The name of the parameter with the error" }, "location": { "type": "string", "enum": [ "body", "param", "query" ], "description": "The location of the parameter" } } } } } }, "PartialReservedCveIdsResponseModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "error": { "type": "string" }, "message": { "type": "string" }, "details": { "type": "object", "properties": { "amount_reserved": { "type": "integer", "format": "int32", "description": "The quantity of IDs reserved in the system" } } }, "cve_ids": { "type": "array", "items": { "properties": { "cve_id": { "type": "string", "pattern": "^CVE-[0-9]{4}-[0-9]{4,}$" }, "cve_year": { "type": "string", "pattern": "^[0-9]{4}$" }, "owning_cna": { "type": "string", "description": "The shortname for the organization that owns the CVE ID" }, "state": { "type": "string", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, "requested_by": { "type": "object", "properties": { "cna": { "type": "string", "description": "The shortname for the organization of the user that requested the ID" }, "user": { "type": "string", "description": "The username for the account that requested the ID" } } }, "reserved": { "type": "string", "format": "date-time", "description": "The time the ID was reserved" } } } } } }, "ReservedCveIdsResonseModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "cve_ids": { "type": "array", "items": { "properties": { "cve_id": { "type": "string", "description": "^CVE-[0-9]{4}-[0-9]{4,}$" }, "cve_year": { "type": "string", "description": "^[0-9]{4}$" }, "owning_cna": { "type": "string", "description": "The shortname for the organization that owns the CVE ID" }, "state": { "type": "string", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, "requested_by": { "type": "object", "properties": { "cna": { "type": "string", "description": "The shortname for the organization of the user that requested the ID" }, "user": { "type": "string", "description": "The username for the account that requested the ID" } } }, "reserved": { "type": "string", "format": "date-time", "description": "The time the ID was reserved" } } } }, "meta": { "type": "object", "properties": { "remaining_quota": { "type": "integer", "format": "int32" } } } } }, "CveIdListResponseModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "totalCount": { "type": "integer", "format": "int32", "description": "Total CVE records found" }, "itemsPerPage": { "type": "integer", "format": "int32", "description": "Number of CVE records in a page" }, "pageCount": { "type": "integer", "format": "int32", "description": "Total number of pages" }, "currentPage": { "type": "integer", "format": "int32", "description": "Current page" }, "prevPage": { "type": "integer", "format": "int32", "description": "Previous page" }, "nextPage": { "type": "integer", "format": "int32", "description": "Next page" }, "cve_ids": { "type": "array", "items": { "type": "object", "properties": { "cve_id": { "type": "string", "description": "^CVE-[0-9]{4}-[0-9]{4,}$" }, "cve_year": { "type": "string", "description": "^[0-9]{4}$" }, "owning_cna": { "type": "string", "description": "The shortname for the organization that owns the CVE ID" }, "state": { "type": "string", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, "requested_by": { "type": "object", "properties": { "cna": { "type": "string", "description": "The shortname for the organization of the user that requested the ID" }, "user": { "type": "string", "description": "The username for the account that requested the ID" } } }, "reserved": { "type": "string", "format": "date-time", "description": "The time the ID was reserved" }, "time": { "type": "object", "properties": { "created": { "type": "string", "format": "date-time", "description": "The time the ID was created" }, "modified": { "type": "string", "format": "date-time", "description": "The last time the ID was modified" } } } } } } } }, "CveIdUpdateModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "updated": { "type": "object", "properties": { "cve_id": { "type": "string", "description": "^CVE-[0-9]{4}-[0-9]{4,}$" }, "cve_year": { "type": "string", "description": "^[0-9]{4}$" }, "owning_cna": { "type": "string", "description": "The shortname for the organization that owns the CVE ID" }, "state": { "type": "string", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, "requested_by": { "type": "object", "properties": { "cna": { "type": "string", "description": "The shortname for the organization of the user that requested the ID" }, "user": { "type": "string", "description": "The username for the account that requested the ID" } } }, "reserved": { "type": "string", "format": "date-time", "description": "The time the ID was reserved" }, "time": { "type": "object", "properties": { "created": { "type": "string", "format": "date-time", "description": "The time the ID was created" }, "modified": { "type": "string", "format": "date-time", "description": "The last time the ID was modified" } } } } } } }, "CveIdGetModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "cve_id": { "type": "string", "description": "^CVE-[0-9]{4}-[0-9]{4,}$" }, "cve_year": { "type": "string", "description": "^[0-9]{4}$" }, "owning_cna": { "type": "string", "description": "The shortname for the organization that owns the CVE ID" }, "state": { "type": "string", "enum": [ "RESERVED", "PUBLISHED", "REJECTED" ] }, "requested_by": { "type": "object", "properties": { "cna": { "type": "string", "description": "The shortname for the organization of the user that requested the ID" }, "user": { "type": "string", "description": "The username for the account that requested the ID" } } }, "reserved": { "type": "string", "format": "date-time", "description": "The time the ID was reserved" }, "time": { "type": "object", "properties": { "created": { "type": "string", "format": "date-time", "description": "The time the ID was created" }, "modified": { "type": "string", "format": "date-time", "description": "The last time the ID was modified" } } } } }, "CveRecordUpdateresponseModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "updated": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "product": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "url": { "type": "string" } } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } }, "CveRecordResponseModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "created": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "product": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" }, "shortName": { "type": "string" }, "dateUpdated": { "type": "string", "format": "date-time" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "url": { "type": "string" } } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } }, "CveGetUnionResponse": { "$schema": "http://json-schema.org/draft-04/schema#", "oneOf": [ { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "url": { "type": "string" } } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } }, { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "created": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "rejectedReasons": { "type": "array", "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" }, "supportingMedia": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "title": "Media type", "minLength": 1, "maxLength": 256, "description": "RFC2046 compliant IANA Media type for eg., text/markdown, text/html.", "examples": [ "text/markdown", "text/html", "image/png", "image/svg", "audio/mp3" ] }, "base64": { "type": "boolean", "title": "Encoding", "description": "If true then the value field contains the media data encoded in base64. If false then the value field contains the UTF-8 media content.", "default": false }, "value": { "type": "string", "description": "Supporting media content, up to 16K. If base64 is true, this field stores base64 encoded data.", "minLength": 1, "maxLength": 16384 } }, "required": [ "type", "value" ] } } } } }, "replacedBy": { "type": "array", "items": { "type": "string" } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" }, "shortName": { "type": "string" }, "dateUpdated": { "type": "string", "format": "date-time" } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } } ] }, "CveListUnionResponse": { "$schema": "http://json-schema.org/draft-04/schema#", "oneOf": [ { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "totalCount": { "type": "integer", "format": "int32" }, "itemsPerPage": { "type": "integer", "format": "int32" }, "pageCount": { "type": "integer", "format": "int32" }, "currentPage": { "type": "integer", "format": "int32" }, "prevPage": { "type": "integer", "format": "int32" }, "nextPage": { "type": "integer", "format": "int32" }, "cveRecords": { "type": "array", "items": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "url": { "type": "string" } } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "integer" } } } } } }, { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "created": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "rejectedReasons": { "type": "array", "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" }, "supportingMedia": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "title": "Media type", "minLength": 1, "maxLength": 256, "description": "RFC2046 compliant IANA Media type for eg., text/markdown, text/html.", "examples": [ "text/markdown", "text/html", "image/png", "image/svg", "audio/mp3" ] }, "base64": { "type": "boolean", "title": "Encoding", "description": "If true then the value field contains the media data encoded in base64. If false then the value field contains the UTF-8 media content.", "default": false }, "value": { "type": "string", "description": "Supporting media content, up to 16K. If base64 is true, this field stores base64 encoded data.", "minLength": 1, "maxLength": 16384 } }, "required": [ "type", "value" ] } } } } }, "replacedBy": { "type": "array", "items": { "type": "string" } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" }, "shortName": { "type": "string" }, "dateUpdated": { "type": "string", "format": "date-time" } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } } ] }, "RecordCountModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "totalCount": { "type": "integer", "format": "int32" } } }, "CveCursorUnionResponse": { "$schema": "http://json-schema.org/draft-04/schema#", "oneOf": [ { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "hasNext": { "type": "boolean" }, "hasPrevious": { "type": "boolean" }, "next": { "type": "string" }, "previous": { "type": "string" }, "cveRecords": { "type": "array", "items": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "url": { "type": "string" } } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "integer" } } } } } }, { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "created": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "rejectedReasons": { "type": "array", "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" }, "supportingMedia": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "title": "Media type", "minLength": 1, "maxLength": 256, "description": "RFC2046 compliant IANA Media type for eg., text/markdown, text/html.", "examples": [ "text/markdown", "text/html", "image/png", "image/svg", "audio/mp3" ] }, "base64": { "type": "boolean", "title": "Encoding", "description": "If true then the value field contains the media data encoded in base64. If false then the value field contains the UTF-8 media content.", "default": false }, "value": { "type": "string", "description": "Supporting media content, up to 16K. If base64 is true, this field stores base64 encoded data.", "minLength": 1, "maxLength": 16384 } }, "required": [ "type", "value" ] } } } } }, "replacedBy": { "type": "array", "items": { "type": "string" } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" }, "shortName": { "type": "string" }, "dateUpdated": { "type": "string", "format": "date-time" } } } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } } ] }, "CnaRequestModel": { "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://cve.org/cve/record/v5_00/", "type": "object", "title": "CVE JSON record format", "description": "cve-schema specifies the CVE JSON record format. This is the blueprint for a rich set of JSON data that can be submitted by CVE Numbering Authorities (CNAs) and Authorized Data Publishers (ADPs) to describe a CVE Record. Some examples of CVE Record data include CVE ID number, affected product(s), affected version(s), and public references. While those specific items are required when assigning a CVE, there are many other optional data in the schema that can be used to enrich CVE Records for community benefit. Learn more about the CVE program at [the official website](https://cve.mitre.org). This CVE JSON record format is defined using JSON Schema. Learn more about JSON Schema [here](https://json-schema.org/).", "definitions": { "uriType": { "type": "string", "format": "uri" }, "uuidType": { "type": "string" }, "reference": { "type": "object", "required": [ "url" ], "properties": { "url": { "$ref": "#/definitions/uriType" }, "name": { "type": "string" }, "tags": { "type": "array", "items": { "oneOf": [ { "$ref": "#/definitions/tagExtension" }, { "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://cve.mitre.org/cve/v5_00/tags/reference/", "type": "string" } ] } } } }, "cveId": { "type": "string" }, "orgId": { "$ref": "#/definitions/uuidType" }, "userId": { "$ref": "#/definitions/uuidType" }, "shortName": { "type": "string" }, "datestamp": { "type": "string", "format": "date" }, "timestamp": { "type": "string", "format": "date-time" }, "version": { "type": "string" }, "status": { "type": "string" }, "product": { "type": "object", "allOf": [ { "anyOf": [ { "required": [ "vendor", "product" ] }, { "required": [ "collectionURL", "packageName" ] } ] }, { "anyOf": [ { "required": [ "versions" ] }, { "required": [ "defaultStatus" ] } ] } ], "properties": { "vendor": { "type": "string" }, "product": { "type": "string" }, "collectionURL": { "$ref": "#/definitions/uriType" }, "packageName": { "type": "string" }, "cpes": { "type": "array", "uniqueItems": true, "items": { "type": "string" } }, "modules": { "type": "array", "uniqueItems": true, "items": { "type": "string" } }, "programFiles": { "type": "array", "uniqueItems": true, "items": { "type": "string" } }, "programRoutines": { "type": "array", "uniqueItems": true, "items": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string" } } } }, "platforms": { "type": "array", "uniqueItems": true, "items": { "type": "string" } }, "repo": { "$ref": "#/definitions/uriType" }, "defaultStatus": { "$ref": "#/definitions/status" }, "versions": { "type": "array", "uniqueItems": true, "items": { "type": "object", "oneOf": [ { "required": [ "version", "status" ], "maxProperties": 2 }, { "required": [ "version", "status", "versionType" ], "oneOf": [ { "required": [ "lessThan" ] }, { "required": [ "lessThanOrEqual" ] } ] } ], "properties": { "version": { "$ref": "#/definitions/version" }, "status": { "$ref": "#/definitions/status" }, "versionType": { "type": "string" }, "lessThan": { "$ref": "#/definitions/version" }, "lessThanOrEqual": { "$ref": "#/definitions/version" }, "changes": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "required": [ "at", "status" ], "properties": { "at": { "$ref": "#/definitions/version" }, "status": { "$ref": "#/definitions/status" } } } } } } } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" }, "cveMetadataPublished": { "type": "object", "required": [ "cveId", "assignerOrgId", "state" ], "properties": { "cveId": { "$ref": "#/definitions/cveId" }, "assignerOrgId": { "$ref": "#/definitions/orgId" }, "assignerShortName": { "$ref": "#/definitions/shortName" }, "requesterUserId": { "$ref": "#/definitions/userId" }, "dateUpdated": { "$ref": "#/definitions/timestamp" }, "serial": { "type": "integer" }, "dateReserved": { "$ref": "#/definitions/timestamp" }, "datePublished": { "$ref": "#/definitions/timestamp" }, "state": { "type": "string" } }, "additionalProperties": false }, "cveMetadataRejected": { "type": "object", "required": [ "cveId", "assignerOrgId", "state" ], "properties": { "cveId": { "$ref": "#/definitions/cveId" }, "assignerOrgId": { "$ref": "#/definitions/orgId" }, "assignerShortName": { "$ref": "#/definitions/shortName" }, "serial": { "type": "integer" }, "dateUpdated": { "$ref": "#/definitions/timestamp" }, "datePublished": { "$ref": "#/definitions/timestamp" }, "dateRejected": { "$ref": "#/definitions/timestamp" }, "state": { "type": "string" }, "dateReserved": { "$ref": "#/definitions/timestamp" } }, "additionalProperties": false }, "providerMetadata": { "type": "object", "properties": { "orgId": { "$ref": "#/definitions/orgId" }, "shortName": { "$ref": "#/definitions/shortName" }, "dateUpdated": { "$ref": "#/definitions/timestamp" } }, "required": [ "orgId" ] }, "cnaPublishedContainer": { "type": "object", "properties": { "providerMetadata": { "$ref": "#/definitions/providerMetadata" }, "dateAssigned": { "$ref": "#/definitions/timestamp" }, "datePublic": { "$ref": "#/definitions/timestamp" }, "title": { "type": "string" }, "descriptions": { "$ref": "#/definitions/descriptions" }, "affected": { "$ref": "#/definitions/affected" }, "problemTypes": { "$ref": "#/definitions/problemTypes" }, "references": { "$ref": "#/definitions/references" }, "impacts": { "$ref": "#/definitions/impacts" }, "metrics": { "$ref": "#/definitions/metrics" }, "configurations": { "$ref": "#/definitions/configurations" }, "workarounds": { "$ref": "#/definitions/workarounds" }, "solutions": { "$ref": "#/definitions/solutions" }, "exploits": { "$ref": "#/definitions/exploits" }, "timeline": { "$ref": "#/definitions/timeline" }, "credits": { "$ref": "#/definitions/credits" }, "source": { "$ref": "#/definitions/source" }, "tags": { "$ref": "#/definitions/cnaTags" }, "taxonomyMappings": { "$ref": "#/definitions/taxonomyMappings" } }, "required": [ "providerMetadata", "descriptions", "affected", "references" ], "patternProperties": { "^x_[^.]*$": {} }, "additionalProperties": false }, "cnaRejectedContainer": { "type": "object", "properties": { "providerMetadata": { "$ref": "#/definitions/providerMetadata" }, "rejectedReasons": { "$ref": "#/definitions/descriptions" }, "replacedBy": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/cveId" } } }, "required": [ "providerMetadata", "rejectedReasons" ], "patternProperties": { "^x_[^.]*$": {} }, "additionalProperties": false }, "affected": { "type": "array", "minItems": 1, "items": { "$ref": "#/definitions/product" } }, "description": { "type": "object", "properties": { "lang": { "$ref": "#/definitions/language" }, "value": { "type": "string" }, "supportingMedia": { "type": "array", "uniqueItems": true, "minItems": 1, "items": { "type": "object", "properties": { "type": { "type": "string" }, "base64": { "type": "boolean", "default": false }, "value": { "type": "string" } }, "required": [ "type", "value" ] } } }, "required": [ "lang", "value" ], "additionalProperties": false }, "englishLanguageDescription": { "type": "object", "properties": { "lang": { "$ref": "#/definitions/englishLanguage" } }, "required": [ "lang" ] }, "descriptions": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/description" }, "contains": { "$ref": "#/definitions/englishLanguageDescription" } }, "problemTypes": { "type": "array", "items": { "type": "object", "required": [ "descriptions" ], "properties": { "descriptions": { "type": "array", "items": { "type": "object", "required": [ "lang", "description" ], "properties": { "lang": { "$ref": "#/definitions/language" }, "description": { "type": "string" }, "cweId": { "type": "string" }, "type": { "type": "string" }, "references": { "$ref": "#/definitions/references" } } }, "minItems": 1, "uniqueItems": true } } }, "minItems": 1, "uniqueItems": true }, "references": { "type": "array", "items": { "$ref": "#/definitions/reference" }, "minItems": 1, "maxItems": 512, "uniqueItems": true }, "impacts": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "required": [ "descriptions" ], "properties": { "capecId": { "type": "string" }, "descriptions": { "$ref": "#/definitions/descriptions" } } } }, "metrics": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "anyOf": [ { "required": [ "cvssV4_0" ] }, { "required": [ "cvssV3_1" ] }, { "required": [ "cvssV3_0" ] }, { "required": [ "cvssV2_0" ] }, { "required": [ "other" ] } ], "properties": { "format": { "type": "string" }, "scenarios": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "lang": { "$ref": "#/definitions/language" }, "value": { "type": "string" } }, "required": [ "lang", "value" ] } }, "cvssV4_0": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "allOf": [ { "properties": { "baseScore": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneScoreType" }, "baseSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneSeverityType" } } }, { "properties": { "threatScore": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneScoreType" }, "threatSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneSeverityType" } } }, { "properties": { "environmentalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneScoreType" }, "environmentalSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/noneSeverityType" } } } ], "definitions": { "attackComplexityType": { "type": "string" }, "attackRequirementsType": { "type": "string" }, "attackVectorType": { "type": "string" }, "automatableType": { "type": "string" }, "ciaRequirementType": { "type": "string" }, "criticalScoreType": { "type": "number" }, "criticalSeverityType": { "const": "string" }, "exploitMaturityType": { "type": "string" }, "highScoreType": { "type": "number" }, "highSeverityType": { "type": "string" }, "lowScoreType": { "type": "number" }, "lowSeverityType": { "type": "string" }, "mediumScoreType": { "type": "number" }, "mediumSeverityType": { "const": "string" }, "modifiedAttackComplexityType": { "type": "string" }, "modifiedAttackRequirementsType": { "type": "string" }, "modifiedAttackVectorType": { "type": "string" }, "modifiedPrivilegesRequiredType": { "type": "string" }, "modifiedSubCType": { "type": "string" }, "modifiedSubIaType": { "type": "string" }, "modifiedUserInteractionType": { "type": "string" }, "modifiedVulnCiaType": { "type": "string" }, "noneScoreType": { "type": "number" }, "noneSeverityType": { "const": "string" }, "privilegesRequiredType": { "type": "string" }, "providerUrgencyType": { "type": "string" }, "recoveryType": { "type": "string" }, "safetyType": { "type": "string" }, "scoreType": { "type": "number" }, "severityType": { "type": "string" }, "subCiaType": { "type": "string" }, "userInteractionType": { "type": "string" }, "valueDensityType": { "type": "string" }, "vulnCiaType": { "type": "string" }, "vulnerabilityResponseEffortType": { "type": "string" } }, "properties": { "Automatable": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/automatableType" }, "Recovery": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/recoveryType" }, "Safety": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/safetyType" }, "attackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/attackComplexityType" }, "attackRequirements": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/attackRequirementsType" }, "attackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/attackVectorType" }, "availabilityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/ciaRequirementType" }, "baseScore": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/scoreType" }, "baseSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/severityType" }, "confidentialityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/ciaRequirementType" }, "exploitMaturity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/exploitMaturityType" }, "integrityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/ciaRequirementType" }, "modifiedAttackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedAttackComplexityType" }, "modifiedAttackRequirements": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedAttackRequirementsType" }, "modifiedAttackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedAttackVectorType" }, "modifiedPrivilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedPrivilegesRequiredType" }, "modifiedSubAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedSubIaType" }, "modifiedSubConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedSubCType" }, "modifiedSubIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedSubIaType" }, "modifiedUserInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedUserInteractionType" }, "modifiedVulnAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedVulnCiaType" }, "modifiedVulnConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedVulnCiaType" }, "modifiedVulnIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/modifiedVulnCiaType" }, "privilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/privilegesRequiredType" }, "providerUrgency": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/providerUrgencyType" }, "subAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/subCiaType" }, "subConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/subCiaType" }, "subIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/subCiaType" }, "userInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/userInteractionType" }, "valueDensity": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/valueDensityType" }, "vectorString": { "type": "string" }, "version": { "description": "CVSS Version", "enum": [ "4.0" ], "type": "string" }, "vulnAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/vulnCiaType" }, "vulnConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/vulnCiaType" }, "vulnIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/vulnCiaType" }, "vulnerabilityResponseEffort": { "$ref": "#/definitions/metrics/items/properties/cvssV4_0/definitions/vulnerabilityResponseEffortType" } }, "required": [ "version", "vectorString", "baseScore", "baseSeverity" ], "title": "JSON Schema for Common Vulnerability Scoring System version 4.0", "type": "object" }, "cvssV3_1": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "definitions": { "attackVectorType": { "type": "string" }, "modifiedAttackVectorType": { "type": "string" }, "attackComplexityType": { "type": "string" }, "modifiedAttackComplexityType": { "type": "string" }, "privilegesRequiredType": { "type": "string" }, "modifiedPrivilegesRequiredType": { "type": "string" }, "userInteractionType": { "type": "string" }, "modifiedUserInteractionType": { "type": "string" }, "scopeType": { "type": "string" }, "modifiedScopeType": { "type": "string" }, "ciaType": { "type": "string" }, "modifiedCiaType": { "type": "string" }, "exploitCodeMaturityType": { "type": "string" }, "remediationLevelType": { "type": "string" }, "confidenceType": { "type": "string" }, "ciaRequirementType": { "type": "string" }, "scoreType": { "type": "number" }, "severityType": { "type": "string" } }, "properties": { "version": { "description": "CVSS Version", "type": "string" }, "vectorString": { "type": "string" }, "attackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/attackVectorType" }, "attackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/attackComplexityType" }, "privilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/privilegesRequiredType" }, "userInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/userInteractionType" }, "scope": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/scopeType" }, "confidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaType" }, "integrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaType" }, "availabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaType" }, "baseScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/scoreType" }, "baseSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/severityType" }, "exploitCodeMaturity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/exploitCodeMaturityType" }, "remediationLevel": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/remediationLevelType" }, "reportConfidence": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/confidenceType" }, "temporalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/scoreType" }, "temporalSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/severityType" }, "confidentialityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaRequirementType" }, "integrityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaRequirementType" }, "availabilityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/ciaRequirementType" }, "modifiedAttackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedAttackVectorType" }, "modifiedAttackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedAttackComplexityType" }, "modifiedPrivilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedPrivilegesRequiredType" }, "modifiedUserInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedUserInteractionType" }, "modifiedScope": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedScopeType" }, "modifiedConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedCiaType" }, "modifiedIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedCiaType" }, "modifiedAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/modifiedCiaType" }, "environmentalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/scoreType" }, "environmentalSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_1/definitions/severityType" } }, "required": [ "version", "vectorString", "baseScore", "baseSeverity" ] }, "cvssV3_0": { "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "definitions": { "attackVectorType": { "type": "string" }, "modifiedAttackVectorType": { "type": "string" }, "attackComplexityType": { "type": "string" }, "modifiedAttackComplexityType": { "type": "string" }, "privilegesRequiredType": { "type": "string" }, "modifiedPrivilegesRequiredType": { "type": "string" }, "userInteractionType": { "type": "string" }, "modifiedUserInteractionType": { "type": "string" }, "scopeType": { "type": "string" }, "modifiedScopeType": { "type": "string" }, "ciaType": { "type": "string" }, "modifiedCiaType": { "type": "string" }, "exploitCodeMaturityType": { "type": "string" }, "remediationLevelType": { "type": "string" }, "confidenceType": { "type": "string" }, "ciaRequirementType": { "type": "string" }, "scoreType": { "type": "number" }, "severityType": { "type": "string" } }, "properties": { "version": { "type": "string" }, "vectorString": { "type": "string" }, "attackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/attackVectorType" }, "attackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/attackComplexityType" }, "privilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/privilegesRequiredType" }, "userInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/userInteractionType" }, "scope": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/scopeType" }, "confidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaType" }, "integrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaType" }, "availabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaType" }, "baseScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/scoreType" }, "baseSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/severityType" }, "exploitCodeMaturity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/exploitCodeMaturityType" }, "remediationLevel": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/remediationLevelType" }, "reportConfidence": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/confidenceType" }, "temporalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/scoreType" }, "temporalSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/severityType" }, "confidentialityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaRequirementType" }, "integrityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaRequirementType" }, "availabilityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/ciaRequirementType" }, "modifiedAttackVector": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedAttackVectorType" }, "modifiedAttackComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedAttackComplexityType" }, "modifiedPrivilegesRequired": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedPrivilegesRequiredType" }, "modifiedUserInteraction": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedUserInteractionType" }, "modifiedScope": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedScopeType" }, "modifiedConfidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedCiaType" }, "modifiedIntegrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedCiaType" }, "modifiedAvailabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/modifiedCiaType" }, "environmentalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/scoreType" }, "environmentalSeverity": { "$ref": "#/definitions/metrics/items/properties/cvssV3_0/definitions/severityType" } }, "required": [ "version", "vectorString", "baseScore", "baseSeverity" ] }, "cvssV2_0": { "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "definitions": { "accessVectorType": { "type": "string" }, "accessComplexityType": { "type": "string" }, "authenticationType": { "type": "string" }, "ciaType": { "type": "string" }, "exploitabilityType": { "type": "string" }, "remediationLevelType": { "type": "string" }, "reportConfidenceType": { "type": "string" }, "collateralDamagePotentialType": { "type": "string" }, "targetDistributionType": { "type": "string" }, "ciaRequirementType": { "type": "string" }, "scoreType": { "type": "number" } }, "properties": { "version": { "type": "string" }, "vectorString": { "type": "string" }, "accessVector": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/accessVectorType" }, "accessComplexity": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/accessComplexityType" }, "authentication": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/authenticationType" }, "confidentialityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaType" }, "integrityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaType" }, "availabilityImpact": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaType" }, "baseScore": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/scoreType" }, "exploitability": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/exploitabilityType" }, "remediationLevel": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/remediationLevelType" }, "reportConfidence": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/reportConfidenceType" }, "temporalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/scoreType" }, "collateralDamagePotential": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/collateralDamagePotentialType" }, "targetDistribution": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/targetDistributionType" }, "confidentialityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaRequirementType" }, "integrityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaRequirementType" }, "availabilityRequirement": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/ciaRequirementType" }, "environmentalScore": { "$ref": "#/definitions/metrics/items/properties/cvssV2_0/definitions/scoreType" } }, "required": [ "version", "vectorString", "baseScore" ] }, "other": { "type": "object", "required": [ "type", "content" ], "properties": { "type": { "type": "string" }, "content": { "type": "object" } } } } } }, "configurations": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/description" } }, "workarounds": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/description" } }, "solutions": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/description" } }, "exploits": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "$ref": "#/definitions/description" } }, "timeline": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "required": [ "time", "lang", "value" ], "properties": { "time": { "$ref": "#/definitions/timestamp" }, "lang": { "$ref": "#/definitions/language" }, "value": { "type": "string" } } } }, "credits": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "properties": { "lang": { "$ref": "#/definitions/language" }, "value": { "type": "string" }, "user": { "$ref": "#/definitions/uuidType" }, "type": { "type": "string" } }, "required": [ "lang", "value" ] } }, "source": { "type": "object", "minProperties": 1 }, "language": { "type": "string" }, "englishLanguage": { "type": "string" }, "taxonomyMappings": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "required": [ "taxonomyName", "taxonomyRelations" ], "properties": { "taxonomyName": { "type": "string", "minLength": 1, "maxLength": 128 }, "taxonomyVersion": { "type": "string", "minLength": 1, "maxLength": 128 }, "taxonomyRelations": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "object", "required": [ "taxonomyId", "relationshipName", "relationshipValue" ], "properties": { "taxonomyId": { "type": "string", "minLength": 1, "maxLength": 2048 }, "relationshipName": { "type": "string", "minLength": 1, "maxLength": 128 }, "relationshipValue": { "type": "string", "minLength": 1, "maxLength": 2048 } } } } } } }, "tagExtension": { "type": "string" }, "cnaTags": { "type": "array", "uniqueItems": true, "minItems": 1, "items": { "oneOf": [ { "$ref": "#/definitions/tagExtension" }, { "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://cve.mitre.org/cve/v5_00/tags/cna/", "type": "string" } ] } }, "adpTags": { "type": "array", "uniqueItems": true, "minItems": 1, "items": { "oneOf": [ { "$ref": "#/definitions/tagExtension" }, { "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://cve.mitre.org/cve/v5_00/tags/adp/", "type": "string" } ] } }, "adpContainer": { "type": "object", "properties": { "providerMetadata": { "$ref": "#/definitions/providerMetadata" }, "datePublic": { "$ref": "#/definitions/timestamp" }, "title": { "type": "string" }, "descriptions": { "$ref": "#/definitions/descriptions" }, "affected": { "$ref": "#/definitions/affected" }, "problemTypes": { "$ref": "#/definitions/problemTypes" }, "references": { "$ref": "#/definitions/references" }, "impacts": { "$ref": "#/definitions/impacts" }, "metrics": { "$ref": "#/definitions/metrics" }, "configurations": { "$ref": "#/definitions/configurations" }, "workarounds": { "$ref": "#/definitions/workarounds" }, "solutions": { "$ref": "#/definitions/solutions" }, "exploits": { "$ref": "#/definitions/exploits" }, "timeline": { "$ref": "#/definitions/timeline" }, "credits": { "$ref": "#/definitions/credits" }, "source": { "$ref": "#/definitions/source" }, "tags": { "$ref": "#/definitions/adpTags" }, "taxonomyMappings": { "$ref": "#/definitions/taxonomyMappings" } }, "required": [ "providerMetadata" ], "minProperties": 2, "patternProperties": { "^x_[^.]*$": {} }, "additionalProperties": false } }, "required": [ "adpContainer" ], "properties": { "adpContainer": { "$ref": "#/definitions/adpContainer" } } }, "CreateCveRecordModel": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "message": { "type": "string" }, "updated": { "type": "object", "properties": { "containers": { "type": "object", "properties": { "cna": { "type": "object", "properties": { "affected": { "type": "object", "properties": { "vendor": { "type": "string" }, "product": { "type": "string" }, "versions": { "type": "array", "items": { "type": "object", "properties": { "version": { "type": "string" }, "status": { "type": "string" } } } } } }, "descriptions": { "type": "array", "required": [ "lang", "value" ], "items": { "type": "object", "properties": { "lang": { "type": "string" }, "value": { "type": "string" } } } }, "problemTypes": { "type": "array", "items": { "type": "object", "properties": { "descriptions": { "type": "array", "items": { "type": "object", "properties": { "description": { "type": "string" }, "lang": { "type": "string" }, "type": { "type": "string" } } } } } } }, "providerMetadata": { "type": "object", "properties": { "orgId": { "type": "string" } } }, "references": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "url": { "type": "string" } } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } }, "cveMetadata": { "type": "object", "properties": { "assignerOrgId": { "type": "string" }, "cveId": { "type": "string" }, "state": { "type": "string" }, "assignerShortName": { "type": "string" }, "requesterUserId": { "type": "string" }, "dateReserved": { "type": "string" }, "datePublished": { "type": "string" } } }, "dataType": { "type": "string" }, "dataVersion": { "type": "string" } } } } } }, "responses": { "ParseError": { "description": "When a mask can't be parsed" }, "MaskError": { "description": "When any error occurs on mask" } } }