// tslint:disable /** * Vulnerability Engine Manager * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 2.70.8 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as globalImportUrl from 'url'; import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** * * @export * @interface AffectedSystemsIdsOut */ export interface AffectedSystemsIdsOut { /** * * @type {string | Array} * @memberof AffectedSystemsIdsOut */ data: string | Array; /** * * @type {Links} * @memberof AffectedSystemsIdsOut */ links: Links; /** * * @type {MetaAffectedSystems} * @memberof AffectedSystemsIdsOut */ meta: MetaAffectedSystems; } /** * * @export * @interface AffectedSystemsOut */ export interface AffectedSystemsOut { /** * * @type {string | Array} * @memberof AffectedSystemsOut */ data: string | Array; /** * * @type {Links} * @memberof AffectedSystemsOut */ links: Links; /** * * @type {MetaAffectedSystems} * @memberof AffectedSystemsOut */ meta: MetaAffectedSystems; } /** * * @export * @interface AnnouncementOut */ export interface AnnouncementOut { /** * Announcement message. * @type {string} * @memberof AnnouncementOut */ message: string; /** * Datetime string. * @type {string} * @memberof AnnouncementOut */ last_updated: string; } /** * * @export * @interface BulkChangeOut */ export interface BulkChangeOut { /** * List of updated objects/updated object IDs. * @type {Array} * @memberof BulkChangeOut */ updated: Array; /** * * @type {MetaPermissions} * @memberof BulkChangeOut */ meta?: MetaPermissions; } /** * * @export * @interface BusinessRiskListOut */ export interface BusinessRiskListOut { /** * List of available business risk/business_risk_id pairs. * @type {Array} * @memberof BusinessRiskListOut */ data: Array; /** * * @type {BusinessRiskListOutMeta} * @memberof BusinessRiskListOut */ meta: BusinessRiskListOutMeta; } /** * * @export * @interface BusinessRiskListOutData */ export interface BusinessRiskListOutData { /** * Internal business_risk_id. * @type {number} * @memberof BusinessRiskListOutData */ id: number; /** * Represenation of internal business_risk_id. * @type {string} * @memberof BusinessRiskListOutData */ name: string; } /** * * @export * @interface BusinessRiskListOutMeta */ export interface BusinessRiskListOutMeta { /** * Total number of available business risk/business_risk_id pairs. * @type {number} * @memberof BusinessRiskListOutMeta */ total_items: number; } /** * * @export * @interface CveDetailOut */ export interface CveDetailOut { /** * * @type {CveDetailOutData} * @memberof CveDetailOut */ data?: CveDetailOutData; /** * * @type {MetaPermissions} * @memberof CveDetailOut */ meta?: MetaPermissions; } /** * * @export * @interface CveDetailOutData */ export interface CveDetailOutData { /** * CVE id. * @type {string} * @memberof CveDetailOutData */ id: string; /** * Type of the record. * @type {string} * @memberof CveDetailOutData */ type: string; /** * * @type {CveDetailOutDataAttributes} * @memberof CveDetailOutData */ attributes: CveDetailOutDataAttributes; } /** * * @export * @interface CveDetailOutDataAttributes */ export interface CveDetailOutDataAttributes { /** * Business risk of the vulnerability. * @type {string} * @memberof CveDetailOutDataAttributes */ business_risk: string; /** * Internal ID of the vulnerability business risk. * @type {number} * @memberof CveDetailOutDataAttributes */ business_risk_id: number; /** * Complementary text to the business risk. * @type {string} * @memberof CveDetailOutDataAttributes */ business_risk_text: string | null; /** * \"Celebrity\" name of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ celebrity_name: string | null; /** * cvss2 metrics of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ cvss2_metrics: string | null; /** * String representation of cvss2 score of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ cvss2_score: string | null; /** * cvss3 metrics of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ cvss3_metrics: string | null; /** * String representation of cvss3 score of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ cvss3_score: string | null; /** * Description of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ description: string; /** * String representation of ISO-8601 formatted date of last modification of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ modified_date: string | null; /** * Red Hat security impact of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ impact: string; /** * String representation of ISO-8601 formatted date of first public disclosure of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ public_date: string | null; /** * Additional resource about the CVE, provided by Red Hat. * @type {string} * @memberof CveDetailOutDataAttributes */ redhat_url: string | null; /** * * @type {Array} * @memberof CveDetailOutDataAttributes */ rules: Array; /** * Additional resources about the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ secondary_url: string | null; /** * Status of the vulnerability. * @type {string} * @memberof CveDetailOutDataAttributes */ status: string; /** * Internal ID of the vulnerability status. * @type {number} * @memberof CveDetailOutDataAttributes */ status_id: number; /** * Complementary text to the status. * @type {string} * @memberof CveDetailOutDataAttributes */ status_text: string | null; /** * Synopsis of the CVE. * @type {string} * @memberof CveDetailOutDataAttributes */ synopsis: string; /** * Counts of systems with given status type. * @type {object} * @memberof CveDetailOutDataAttributes */ systems_status_detail: object; /** * How many systems-CVE pairs have different status than CVE-level. * @type {number} * @memberof CveDetailOutDataAttributes */ systems_status_divergent: number; /** * List of advisory names or detailed advisory information * @type {Array} * @memberof CveDetailOutDataAttributes */ advisories_list: Array | null; /** * Shows whether a CVE has known exploits or not * @type {boolean} * @memberof CveDetailOutDataAttributes */ known_exploit: boolean; /** * Number of systems that are affected by given CVE but are not vulnerable. * @type {number} * @memberof CveDetailOutDataAttributes */ affected_but_not_vulnerable: number | null; /** * Number of systems that are overall affected by given CVE * @type {number} * @memberof CveDetailOutDataAttributes */ affected_systems?: number | null; } /** * @type CveOrList * @export */ export type CveOrList = Array | string; /** * * @export * @interface CveRiskIn */ export interface CveRiskIn { /** * * @type {CveOrList} * @memberof CveRiskIn */ cve: CveOrList; /** * Business risk ID to be set, obtained by GET method. * @type {number} * @memberof CveRiskIn */ business_risk_id?: number; /** * Complementary text to the business risk. * @type {string} * @memberof CveRiskIn */ business_risk_text?: string | null; } /** * * @export * @interface CveStatusIn */ export interface CveStatusIn { /** * * @type {CveOrList} * @memberof CveStatusIn */ cve: CveOrList; /** * Status ID to be set, obtained by GET method. * @type {number} * @memberof CveStatusIn */ status_id?: number; /** * Complementary text to the status. * @type {string} * @memberof CveStatusIn */ status_text?: string | null; } /** * * @export * @interface CvesWithoutErrataIn */ export interface CvesWithoutErrataIn { /** * Enable or disable CVEs without Errata feature. * @type {boolean} * @memberof CvesWithoutErrataIn */ enable: boolean; } /** * * @export * @interface CvesWithoutErrataOut */ export interface CvesWithoutErrataOut { /** * * @type {CvesWithoutErrataOutUpdated} * @memberof CvesWithoutErrataOut */ updated: CvesWithoutErrataOutUpdated; /** * * @type {MetaPermissions} * @memberof CvesWithoutErrataOut */ meta: MetaPermissions; } /** * * @export * @interface CvesWithoutErrataOutUpdated */ export interface CvesWithoutErrataOutUpdated { /** * * @type {string} * @memberof CvesWithoutErrataOutUpdated */ org_id?: string; /** * * @type {CvesWithoutErrataOutUpdatedCvesWithoutErrata} * @memberof CvesWithoutErrataOutUpdated */ cves_without_errata?: CvesWithoutErrataOutUpdatedCvesWithoutErrata; } /** * * @export * @interface CvesWithoutErrataOutUpdatedCvesWithoutErrata */ export interface CvesWithoutErrataOutUpdatedCvesWithoutErrata { /** * * @type {boolean} * @memberof CvesWithoutErrataOutUpdatedCvesWithoutErrata */ enabled?: boolean; } /** * * @export * @interface DashbarOut */ export interface DashbarOut { /** * * @type {number} * @memberof DashbarOut */ exploitable_cves?: number; /** * * @type {number} * @memberof DashbarOut */ cves_with_rule?: number; /** * * @type {number} * @memberof DashbarOut */ critical_cves?: number; /** * * @type {number} * @memberof DashbarOut */ important_cves?: number; } /** * * @export * @interface Dashboard */ export interface Dashboard { /** * Number of unique CVEs discovered on the managed systems. * @type {number} * @memberof Dashboard */ cves_total: number; /** * * @type {DashboardCvesBySeverity} * @memberof Dashboard */ cves_by_severity: DashboardCvesBySeverity; /** * * @type {ExecutiveReportRecentCves} * @memberof Dashboard */ recent_cves: ExecutiveReportRecentCves; /** * List of recently (14 days) released security rules. * @type {Array} * @memberof Dashboard */ recent_rules: Array; /** * Total number of CVEs with associated security rules affecting given account. * @type {number} * @memberof Dashboard */ rules_cves_total: number; /** * Total systems registered to Vulnerability service (with applied filtering). * @type {number} * @memberof Dashboard */ system_count: number; /** * unique number of CVEs having known exploit affecting at least one system * @type {number} * @memberof Dashboard */ exploited_cves_count: number; } /** * Number of CVEs discovered on the managed systems, divided into buckets based on their CVSSv3 score (CVSSv2 is used when CVSSv3 is not available). * @export * @interface DashboardCvesBySeverity */ export interface DashboardCvesBySeverity { /** * * @type {DashboardCvesBySeverity0to39} * @memberof DashboardCvesBySeverity */ _0to3_9: DashboardCvesBySeverity0to39; /** * * @type {DashboardCvesBySeverity4to79} * @memberof DashboardCvesBySeverity */ _4to7_9: DashboardCvesBySeverity4to79; /** * * @type {DashboardCvesBySeverity8to10} * @memberof DashboardCvesBySeverity */ _8to10: DashboardCvesBySeverity8to10; } /** * * @export * @interface DashboardCvesBySeverity0to39 */ export interface DashboardCvesBySeverity0to39 { /** * Number of CVEs with CVSS score lower than 4. * @type {number} * @memberof DashboardCvesBySeverity0to39 */ count: number; /** * Percentage of CVEs with CVSS score lower than 4. * @type {number} * @memberof DashboardCvesBySeverity0to39 */ percentage: number; /** * Number of CVEs in given bracket with a known exploit. * @type {number} * @memberof DashboardCvesBySeverity0to39 */ known_exploits?: number; } /** * * @export * @interface DashboardCvesBySeverity4to79 */ export interface DashboardCvesBySeverity4to79 { /** * Number of CVEs with CVSS score higher or equal to 4 and lower then 8. * @type {number} * @memberof DashboardCvesBySeverity4to79 */ count: number; /** * Percentage of CVEs with CVSS score higher or equal to 4 and lower then 8. * @type {number} * @memberof DashboardCvesBySeverity4to79 */ percentage: number; /** * Number of CVEs in given bracket with a known exploit. * @type {number} * @memberof DashboardCvesBySeverity4to79 */ known_exploits?: number; } /** * * @export * @interface DashboardCvesBySeverity8to10 */ export interface DashboardCvesBySeverity8to10 { /** * Number of CVEs with CVSS score higher or equal to 8. * @type {number} * @memberof DashboardCvesBySeverity8to10 */ count: number; /** * Percentage of CVEs with CVSS score higher or equal to 8. * @type {number} * @memberof DashboardCvesBySeverity8to10 */ percentage: number; /** * Number of CVEs in given bracket with a known exploit. * @type {number} * @memberof DashboardCvesBySeverity8to10 */ known_exploits?: number; } /** * Security rule. * @export * @interface DashboardRecentRules */ export interface DashboardRecentRules { /** * List of CVEs associated with the security rule. * @type {Array} * @memberof DashboardRecentRules */ associated_cves?: Array; /** * Description of the issue related with the security rule. * @type {string} * @memberof DashboardRecentRules */ description?: string; /** * ID of the security rule. * @type {string} * @memberof DashboardRecentRules */ id?: string; /** * Name of the security rule. * @type {string} * @memberof DashboardRecentRules */ name?: string; /** * Node id of access.redhat.com/node/_* article. * @type {number} * @memberof DashboardRecentRules */ node_id?: number | null; /** * String representation of ISO-8601 formatted date of release of the security rule. * @type {string} * @memberof DashboardRecentRules */ public_date?: string | null; /** * Number representation of the security rule severity. * @type {number} * @memberof DashboardRecentRules */ severity?: number; /** * Number of systems triggering the security rule. * @type {number} * @memberof DashboardRecentRules */ systems_affected?: number; } /** * * @export * @interface Errors */ export interface Errors { /** * * @type {Array} * @memberof Errors */ errors: Array; } /** * * @export * @interface ErrorsErrors */ export interface ErrorsErrors { /** * * @type {string | object} * @memberof ErrorsErrors */ detail: string | object; /** * String representation of HTTP status code. * @type {string} * @memberof ErrorsErrors */ status: string; } /** * * @export * @interface ExecutiveReport */ export interface ExecutiveReport { /** * * @type {MetaVulnerabilitiesOutAllOfSystemCountPerType} * @memberof ExecutiveReport */ system_count_per_type?: MetaVulnerabilitiesOutAllOfSystemCountPerType; /** * Total number of systems managed by vulnerability application. * @type {number} * @memberof ExecutiveReport */ system_count: number; /** * Number of unique CVEs discovered on the managed systems. * @type {number} * @memberof ExecutiveReport */ cves_total: number; /** * * @type {ExecutiveReportCvesBySeverity} * @memberof ExecutiveReport */ cves_by_severity: ExecutiveReportCvesBySeverity; /** * * @type {ExecutiveReportRecentCves} * @memberof ExecutiveReport */ recent_cves: ExecutiveReportRecentCves; /** * * @type {ExecutiveReportRulesBySeverity} * @memberof ExecutiveReport */ rules_by_severity: ExecutiveReportRulesBySeverity; /** * Number of unique CVEs discovered on the managed systems. * @type {number} * @memberof ExecutiveReport */ rules_total: number; /** * * @type {Array} * @memberof ExecutiveReport */ top_cves?: Array; /** * * @type {Array} * @memberof ExecutiveReport */ top_rules?: Array; /** * * @type {MetaPermissions} * @memberof ExecutiveReport */ meta?: MetaPermissions; } /** * Number of CVEs discovered on the managed systems, divided into buckets based on their CVSSv3 score (CVSSv2 is used when CVSSv3 is not available). * @export * @interface ExecutiveReportCvesBySeverity */ export interface ExecutiveReportCvesBySeverity { /** * * @type {ExecutiveReportCvesBySeverity0to39} * @memberof ExecutiveReportCvesBySeverity */ _0to3_9: ExecutiveReportCvesBySeverity0to39; /** * * @type {ExecutiveReportCvesBySeverity4to79} * @memberof ExecutiveReportCvesBySeverity */ _4to7_9: ExecutiveReportCvesBySeverity4to79; /** * * @type {ExecutiveReportCvesBySeverity8to10} * @memberof ExecutiveReportCvesBySeverity */ _8to10: ExecutiveReportCvesBySeverity8to10; } /** * * @export * @interface ExecutiveReportCvesBySeverity0to39 */ export interface ExecutiveReportCvesBySeverity0to39 { /** * Number of CVEs with CVSS score lower than 4. * @type {number} * @memberof ExecutiveReportCvesBySeverity0to39 */ count: number; /** * Percentage of CVEs with CVSS score lower than 4. * @type {number} * @memberof ExecutiveReportCvesBySeverity0to39 */ percentage: number; } /** * * @export * @interface ExecutiveReportCvesBySeverity4to79 */ export interface ExecutiveReportCvesBySeverity4to79 { /** * Number of CVEs with CVSS score higher or equal to 4 and lower then 8. * @type {number} * @memberof ExecutiveReportCvesBySeverity4to79 */ count: number; /** * Percentage of CVEs with CVSS score higher or equal to 4 and lower then 8. * @type {number} * @memberof ExecutiveReportCvesBySeverity4to79 */ percentage: number; } /** * * @export * @interface ExecutiveReportCvesBySeverity8to10 */ export interface ExecutiveReportCvesBySeverity8to10 { /** * Number of CVEs with CVSS score higher or equal to 8. * @type {number} * @memberof ExecutiveReportCvesBySeverity8to10 */ count: number; /** * Percentage of CVEs with CVSS score higher or equal to 8. * @type {number} * @memberof ExecutiveReportCvesBySeverity8to10 */ percentage: number; } /** * Number of recently published CVEs identified on managed systems * @export * @interface ExecutiveReportRecentCves */ export interface ExecutiveReportRecentCves { /** * Number of CVEs identified on managed systems published in last 7 days. * @type {number} * @memberof ExecutiveReportRecentCves */ last7days: number; /** * Number of CVEs identified on managed systems published in last 30 days. * @type {number} * @memberof ExecutiveReportRecentCves */ last30days: number; /** * Number of CVEs identified on managed systems published in last 90 days. * @type {number} * @memberof ExecutiveReportRecentCves */ last90days: number; } /** * Information about how much systems are affected by a security rule, broken down by rule severity. * @export * @interface ExecutiveReportRulesBySeverity */ export interface ExecutiveReportRulesBySeverity { /** * * @type {ExecutiveReportRulesBySeverity1} * @memberof ExecutiveReportRulesBySeverity */ _1: ExecutiveReportRulesBySeverity1; /** * * @type {ExecutiveReportRulesBySeverity1} * @memberof ExecutiveReportRulesBySeverity */ _2: ExecutiveReportRulesBySeverity1; /** * * @type {ExecutiveReportRulesBySeverity1} * @memberof ExecutiveReportRulesBySeverity */ _3: ExecutiveReportRulesBySeverity1; /** * * @type {ExecutiveReportRulesBySeverity1} * @memberof ExecutiveReportRulesBySeverity */ _4: ExecutiveReportRulesBySeverity1; } /** * * @export * @interface ExecutiveReportRulesBySeverity1 */ export interface ExecutiveReportRulesBySeverity1 { /** * How many unique rules with at least system affected are present. * @type {number} * @memberof ExecutiveReportRulesBySeverity1 */ rule_count: number; /** * How many unique systems are affected by at least one rules with given severity * @type {number} * @memberof ExecutiveReportRulesBySeverity1 */ systems_affected: number; } /** * * @export * @interface ExecutiveReportTopCves */ export interface ExecutiveReportTopCves { /** * CVE synopsis * @type {string} * @memberof ExecutiveReportTopCves */ synopsis: string; /** * String representation of cvss2 score of the CVE. * @type {string} * @memberof ExecutiveReportTopCves */ cvss2_score: string | null; /** * String representation of cvss3 score of the CVE. * @type {string} * @memberof ExecutiveReportTopCves */ cvss3_score: string | null; /** * Description of the CVE. * @type {string} * @memberof ExecutiveReportTopCves */ description: string; /** * Indicator of security rule presence * @type {boolean} * @memberof ExecutiveReportTopCves */ security_rule?: boolean; /** * Indicator of security rule presence * @type {boolean} * @memberof ExecutiveReportTopCves */ rule_presence?: boolean; /** * Systems affected by the CVE. * @type {number} * @memberof ExecutiveReportTopCves */ systems_affected: number; /** * Shows whether a CVE has known exploits or not * @type {boolean} * @memberof ExecutiveReportTopCves */ known_exploit: boolean; } /** * * @export * @interface ExecutiveReportTopRules */ export interface ExecutiveReportTopRules { /** * All CVEs associated with the rule * @type {Array} * @memberof ExecutiveReportTopRules */ associated_cves: Array; /** * Brief description of the issue. * @type {string} * @memberof ExecutiveReportTopRules */ description: string; /** * ID of associated security rule. * @type {string} * @memberof ExecutiveReportTopRules */ rule_id: string; /** * Name of the security rule. * @type {string} * @memberof ExecutiveReportTopRules */ name: string; /** * Severity of the security rule. * @type {number} * @memberof ExecutiveReportTopRules */ severity: number; /** * Number of systems affected by the rule. * @type {number} * @memberof ExecutiveReportTopRules */ systems_affected: number; } /** * * @export * @interface InsightsRule */ export interface InsightsRule { /** * ID(s) of associated security rule(s). * @type {string} * @memberof InsightsRule */ rule_id: string; /** * Description of the rule. * @type {string} * @memberof InsightsRule */ description: string | null; /** * Summary of the rule. * @type {string} * @memberof InsightsRule */ summary: string | null; /** * Indicator whter reboot is required to mitigate vulnerability. * @type {boolean} * @memberof InsightsRule */ reboot_required: boolean | null; /** * Number of available Ansible playbooks for remediation/mitigation. * @type {number} * @memberof InsightsRule */ playbook_count: number | null; /** * Indicates how likely remediation can change environment on the remediatied system. * @type {number} * @memberof InsightsRule */ change_risk: number | null; /** * ID of associated Red Hat knowledgebase article. * @type {number} * @memberof InsightsRule */ kbase_node_id: number | null; /** * List of CVEs associated with the rule. * @type {Array} * @memberof InsightsRule */ associated_cves: Array; /** * Shows rules impact number from 1 to 4 * @type {number} * @memberof InsightsRule */ rule_impact: number | null; /** * Number of systems affected by the rule. * @type {number} * @memberof InsightsRule */ systems_affected?: number; /** * Date when the rule was published. * @type {string} * @memberof InsightsRule */ publish_date: string | null; } /** * @type InventoryIdOrList * @export */ export type InventoryIdOrList = Array | string; /** * * @export * @interface Links */ export interface Links { /** * Link to first page. * @type {string} * @memberof Links */ first: string; /** * Link to last page. * @type {string} * @memberof Links */ last: string; /** * Link to next page. * @type {string} * @memberof Links */ next: string | null; /** * Link to next page. * @type {string} * @memberof Links */ previous: string | null; } /** * * @export * @interface Meta */ export interface Meta { /** * Full text filter * @type {string} * @memberof Meta */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof Meta */ limit: number; /** * First record of paginated response. * @type {number} * @memberof Meta */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof Meta */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof Meta */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof Meta */ pages: number; /** * Sorting filter. * @type {string} * @memberof Meta */ sort: string | null; /** * Total number of records. * @type {number} * @memberof Meta */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof Meta */ data_format: string; } /** * * @export * @interface MetaAffectedSystems */ export interface MetaAffectedSystems { /** * Full text filter * @type {string} * @memberof MetaAffectedSystems */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof MetaAffectedSystems */ limit: number; /** * First record of paginated response. * @type {number} * @memberof MetaAffectedSystems */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof MetaAffectedSystems */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof MetaAffectedSystems */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof MetaAffectedSystems */ pages: number; /** * Sorting filter. * @type {string} * @memberof MetaAffectedSystems */ sort: string | null; /** * Total number of records. * @type {number} * @memberof MetaAffectedSystems */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof MetaAffectedSystems */ data_format: string; /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaAffectedSystems */ permissions: Array; /** * Filer based on CVE status ID. * @type {string} * @memberof MetaAffectedSystems */ status_id: string | null; /** * Filters security rules by its error key. * @type {string} * @memberof MetaAffectedSystems */ rule_key: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaAffectedSystems */ rule_presence: string | null; /** * If show_advisories=true shows access to patch service else null * @type {boolean} * @memberof MetaAffectedSystems */ patch_access: boolean | null; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaAffectedSystems */ rhel_version: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaAffectedSystems */ first_reported_from: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaAffectedSystems */ first_reported_to: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaAffectedSystems */ cves_without_errata: boolean | null; /** * Name of the inventory group. * @type {string} * @memberof MetaAffectedSystems */ group_names: string | null; /** * ID of the inventory group. * @type {string} * @memberof MetaAffectedSystems */ group_ids: string | null; } /** * * @export * @interface MetaAffectedSystemsAllOf */ export interface MetaAffectedSystemsAllOf { /** * Filer based on CVE status ID. * @type {string} * @memberof MetaAffectedSystemsAllOf */ status_id: string | null; /** * Filters security rules by its error key. * @type {string} * @memberof MetaAffectedSystemsAllOf */ rule_key: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaAffectedSystemsAllOf */ rule_presence: string | null; /** * If show_advisories=true shows access to patch service else null * @type {boolean} * @memberof MetaAffectedSystemsAllOf */ patch_access: boolean | null; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaAffectedSystemsAllOf */ rhel_version: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaAffectedSystemsAllOf */ first_reported_from: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaAffectedSystemsAllOf */ first_reported_to: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaAffectedSystemsAllOf */ cves_without_errata: boolean | null; /** * Name of the inventory group. * @type {string} * @memberof MetaAffectedSystemsAllOf */ group_names: string | null; /** * ID of the inventory group. * @type {string} * @memberof MetaAffectedSystemsAllOf */ group_ids: string | null; } /** * * @export * @interface MetaCves */ export interface MetaCves { /** * Full text filter * @type {string} * @memberof MetaCves */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof MetaCves */ limit: number; /** * First record of paginated response. * @type {number} * @memberof MetaCves */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof MetaCves */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof MetaCves */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof MetaCves */ pages: number; /** * Sorting filter. * @type {string} * @memberof MetaCves */ sort: string | null; /** * Total number of records. * @type {number} * @memberof MetaCves */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof MetaCves */ data_format: string; /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaCves */ permissions: Array; /** * Filter based on business risk IDs. * @type {string} * @memberof MetaCves */ business_risk_id: string | null; /** * Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @type {number} * @memberof MetaCves */ cvss_from: number | null; /** * Filter based on cvss score, up to the value. * @type {number} * @memberof MetaCves */ cvss_to: number | null; /** * Filter CVEs based on their published date, starting from the date. * @type {string} * @memberof MetaCves */ public_from: string | null; /** * Filter CVEs based on their published date, up to the date. * @type {string} * @memberof MetaCves */ public_to: string | null; /** * Filter based on impact IDs. * @type {string} * @memberof MetaCves */ impact: string | null; /** * Filer based on CVE status ID. * @type {string} * @memberof MetaCves */ status_id: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaCves */ rule_presence: string | null; /** * If show_advisories=true shows access to patch service else null * @type {boolean} * @memberof MetaCves */ patch_access: boolean | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCves */ first_reported_from: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCves */ first_reported_to: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaCves */ cves_without_errata: boolean | null; } /** * * @export * @interface MetaCvesAllOf */ export interface MetaCvesAllOf { /** * Filter based on business risk IDs. * @type {string} * @memberof MetaCvesAllOf */ business_risk_id: string | null; /** * Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @type {number} * @memberof MetaCvesAllOf */ cvss_from: number | null; /** * Filter based on cvss score, up to the value. * @type {number} * @memberof MetaCvesAllOf */ cvss_to: number | null; /** * Filter CVEs based on their published date, starting from the date. * @type {string} * @memberof MetaCvesAllOf */ public_from: string | null; /** * Filter CVEs based on their published date, up to the date. * @type {string} * @memberof MetaCvesAllOf */ public_to: string | null; /** * Filter based on impact IDs. * @type {string} * @memberof MetaCvesAllOf */ impact: string | null; /** * Filer based on CVE status ID. * @type {string} * @memberof MetaCvesAllOf */ status_id: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaCvesAllOf */ rule_presence: string | null; /** * If show_advisories=true shows access to patch service else null * @type {boolean} * @memberof MetaCvesAllOf */ patch_access: boolean | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCvesAllOf */ first_reported_from: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCvesAllOf */ first_reported_to: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaCvesAllOf */ cves_without_errata: boolean | null; } /** * * @export * @interface MetaCvesSystems */ export interface MetaCvesSystems { /** * Full text filter * @type {string} * @memberof MetaCvesSystems */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof MetaCvesSystems */ limit: number; /** * First record of paginated response. * @type {number} * @memberof MetaCvesSystems */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof MetaCvesSystems */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof MetaCvesSystems */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof MetaCvesSystems */ pages: number; /** * Sorting filter. * @type {string} * @memberof MetaCvesSystems */ sort: string | null; /** * Total number of records. * @type {number} * @memberof MetaCvesSystems */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof MetaCvesSystems */ data_format: string; /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaCvesSystems */ permissions: Array; /** * Filter based on business risk IDs. * @type {string} * @memberof MetaCvesSystems */ business_risk_id: string | null; /** * Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @type {number} * @memberof MetaCvesSystems */ cvss_from: number | null; /** * Filter based on cvss score, up to the value. * @type {number} * @memberof MetaCvesSystems */ cvss_to: number | null; /** * Filter CVEs based on their published date, starting from the date. * @type {string} * @memberof MetaCvesSystems */ public_from: string | null; /** * Filter CVEs based on their published date, up to the date. * @type {string} * @memberof MetaCvesSystems */ public_to: string | null; /** * Filter based on impact IDs. * @type {string} * @memberof MetaCvesSystems */ impact: string | null; /** * Filer based on CVE status ID. * @type {string} * @memberof MetaCvesSystems */ status_id: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaCvesSystems */ rule_presence: string | null; /** * If show_advisories=true shows access to patch service else null * @type {boolean} * @memberof MetaCvesSystems */ patch_access: boolean | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCvesSystems */ first_reported_from: string | null; /** * Filter system-cve pairs based on first time of detection of CVE. * @type {string} * @memberof MetaCvesSystems */ first_reported_to: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaCvesSystems */ cves_without_errata: boolean | null; /** * If given system was opted out. * @type {boolean} * @memberof MetaCvesSystems */ opt_out: boolean; } /** * * @export * @interface MetaCvesSystemsAllOf */ export interface MetaCvesSystemsAllOf { /** * If given system was opted out. * @type {boolean} * @memberof MetaCvesSystemsAllOf */ opt_out: boolean; } /** * * @export * @interface MetaPermissions */ export interface MetaPermissions { /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaPermissions */ permissions: Array; } /** * * @export * @interface MetaSystems */ export interface MetaSystems { /** * Full text filter * @type {string} * @memberof MetaSystems */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof MetaSystems */ limit: number; /** * First record of paginated response. * @type {number} * @memberof MetaSystems */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof MetaSystems */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof MetaSystems */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof MetaSystems */ pages: number; /** * Sorting filter. * @type {string} * @memberof MetaSystems */ sort: string | null; /** * Total number of records. * @type {number} * @memberof MetaSystems */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof MetaSystems */ data_format: string; /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaSystems */ permissions: Array; /** * Display setting of opted out systems. * @type {string} * @memberof MetaSystems */ excluded: string | null; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaSystems */ rhel_version: string | null; } /** * * @export * @interface MetaSystemsAllOf */ export interface MetaSystemsAllOf { /** * Display setting of opted out systems. * @type {string} * @memberof MetaSystemsAllOf */ excluded: string | null; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaSystemsAllOf */ rhel_version: string | null; } /** * * @export * @interface MetaVulnerabilitiesOut */ export interface MetaVulnerabilitiesOut { /** * Full text filter * @type {string} * @memberof MetaVulnerabilitiesOut */ filter: string | null; /** * Maximum number of paginated results. * @type {number} * @memberof MetaVulnerabilitiesOut */ limit: number; /** * First record of paginated response. * @type {number} * @memberof MetaVulnerabilitiesOut */ offset: number; /** * Page number of paginated response. * @type {number} * @memberof MetaVulnerabilitiesOut */ page: number; /** * Number of records per page of paginated response. * @type {number} * @memberof MetaVulnerabilitiesOut */ page_size: number; /** * Total number of pages of paginated response. * @type {number} * @memberof MetaVulnerabilitiesOut */ pages: number; /** * Sorting filter. * @type {string} * @memberof MetaVulnerabilitiesOut */ sort: string | null; /** * Total number of records. * @type {number} * @memberof MetaVulnerabilitiesOut */ total_items: number; /** * Format of the output data, either JSON (default) or CSV. * @type {string} * @memberof MetaVulnerabilitiesOut */ data_format: string; /** * Fetched permissions from RBAC for given user * @type {Array} * @memberof MetaVulnerabilitiesOut */ permissions: Array; /** * Description of CVE showing preferences * @type {string} * @memberof MetaVulnerabilitiesOut */ affecting: string | null; /** * Filter based on business risk IDs. * @type {string} * @memberof MetaVulnerabilitiesOut */ business_risk_id: string | null; /** * Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @type {number} * @memberof MetaVulnerabilitiesOut */ cvss_from: number | null; /** * Filter based on cvss score, up to the value. * @type {number} * @memberof MetaVulnerabilitiesOut */ cvss_to: number | null; /** * Filter CVEs based on their published date, starting from the date. * @type {string} * @memberof MetaVulnerabilitiesOut */ public_from: string | null; /** * Filter CVEs based on their published date, up to the date. * @type {string} * @memberof MetaVulnerabilitiesOut */ public_to: string | null; /** * Filter based on impact IDs. * @type {string} * @memberof MetaVulnerabilitiesOut */ impact: string | null; /** * * @type {MetaVulnerabilitiesOutAllOfSystemCountPerType} * @memberof MetaVulnerabilitiesOut */ system_count_per_type?: MetaVulnerabilitiesOutAllOfSystemCountPerType; /** * Total number of systems managed by vulnerability application. * @type {number} * @memberof MetaVulnerabilitiesOut */ system_count?: number; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaVulnerabilitiesOut */ rhel_version: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaVulnerabilitiesOut */ rule_presence: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaVulnerabilitiesOut */ cves_without_errata: boolean | null; /** * Shows whether a CVE has available advisory or not * @type {string} * @memberof MetaVulnerabilitiesOut */ advisory_available: string | null; /** * Flag if cached data was used to produce the response. * @type {boolean} * @memberof MetaVulnerabilitiesOut */ cache_used: boolean; } /** * * @export * @interface MetaVulnerabilitiesOutAllOf */ export interface MetaVulnerabilitiesOutAllOf { /** * Description of CVE showing preferences * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ affecting: string | null; /** * Filter based on business risk IDs. * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ business_risk_id: string | null; /** * Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @type {number} * @memberof MetaVulnerabilitiesOutAllOf */ cvss_from: number | null; /** * Filter based on cvss score, up to the value. * @type {number} * @memberof MetaVulnerabilitiesOutAllOf */ cvss_to: number | null; /** * Filter CVEs based on their published date, starting from the date. * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ public_from: string | null; /** * Filter CVEs based on their published date, up to the date. * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ public_to: string | null; /** * Filter based on impact IDs. * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ impact: string | null; /** * * @type {MetaVulnerabilitiesOutAllOfSystemCountPerType} * @memberof MetaVulnerabilitiesOutAllOf */ system_count_per_type?: MetaVulnerabilitiesOutAllOfSystemCountPerType; /** * Total number of systems managed by vulnerability application. * @type {number} * @memberof MetaVulnerabilitiesOutAllOf */ system_count?: number; /** * Filter base on system RHEL version. * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ rhel_version: string | null; /** * Filter based on presence of security rule * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ rule_presence: string | null; /** * CVEs without Errata feature flag * @type {boolean} * @memberof MetaVulnerabilitiesOutAllOf */ cves_without_errata: boolean | null; /** * Shows whether a CVE has available advisory or not * @type {string} * @memberof MetaVulnerabilitiesOutAllOf */ advisory_available: string | null; /** * Flag if cached data was used to produce the response. * @type {boolean} * @memberof MetaVulnerabilitiesOutAllOf */ cache_used: boolean; } /** * Number of systems managed by vulnerability application, grouped by host type. * @export * @interface MetaVulnerabilitiesOutAllOfSystemCountPerType */ export interface MetaVulnerabilitiesOutAllOfSystemCountPerType { /** * Number of conventional systems. * @type {number} * @memberof MetaVulnerabilitiesOutAllOfSystemCountPerType */ rpmdnf?: number; /** * Number of image-mode systems. * @type {number} * @memberof MetaVulnerabilitiesOutAllOfSystemCountPerType */ image?: number | null; /** * Number of image-mode systems. (Deprecated) * @type {number} * @memberof MetaVulnerabilitiesOutAllOfSystemCountPerType */ edge?: number | null; } /** * * @export * @interface NotificationsOut */ export interface NotificationsOut { /** * Number of deleted notifications for CVEs * @type {number} * @memberof NotificationsOut */ deleted: number; } /** * * @export * @interface OSExposureReport */ export interface OSExposureReport { /** * * @type {string | Array} * @memberof OSExposureReport */ data: string | Array; } /** * * @export * @interface OptOutIn */ export interface OptOutIn { /** * * @type {InventoryIdOrList} * @memberof OptOutIn */ inventory_id: InventoryIdOrList; /** * Opt out setting to be set. * @type {boolean} * @memberof OptOutIn */ opt_out: boolean; } /** * * @export * @interface PlaybookTemplate */ export interface PlaybookTemplate { /** * * @type {Array} * @memberof PlaybookTemplate */ data?: Array; } /** * * @export * @interface PlaybookTemplateData */ export interface PlaybookTemplateData { /** * Playbook template description. * @type {string} * @memberof PlaybookTemplateData */ description: string; /** * Actual playbook template. * @type {string} * @memberof PlaybookTemplateData */ play: string; /** * Revision of the playbook template. * @type {string} * @memberof PlaybookTemplateData */ version: string; /** * Indicator whter reboot is required to mitigate vulnerability. * @type {boolean} * @memberof PlaybookTemplateData */ reboot_required?: boolean | null; /** * Type of the resolution provided by playbook. * @type {string} * @memberof PlaybookTemplateData */ resolution_type: string; } /** * * @export * @interface StatusIn */ export interface StatusIn { /** * * @type {InventoryIdOrList} * @memberof StatusIn */ inventory_id?: InventoryIdOrList; /** * * @type {CveOrList} * @memberof StatusIn */ cve: CveOrList; /** * Status ID to be set, obtained by GET method. If not specified, global CVE status is set. * @type {number} * @memberof StatusIn */ status_id?: number; /** * Complementary text to the status. * @type {string} * @memberof StatusIn */ status_text?: string | null; } /** * * @export * @interface StatusListOut */ export interface StatusListOut { /** * List of available status/status_id pairs. * @type {Array} * @memberof StatusListOut */ data: Array; /** * * @type {StatusListOutMeta} * @memberof StatusListOut */ meta: StatusListOutMeta; } /** * * @export * @interface StatusListOutData */ export interface StatusListOutData { /** * Internal status_id. * @type {number} * @memberof StatusListOutData */ id: number; /** * Represenation of internal status_id. * @type {string} * @memberof StatusListOutData */ name: string; } /** * * @export * @interface StatusListOutMeta */ export interface StatusListOutMeta { /** * Total number of available status/status_id pairs. * @type {number} * @memberof StatusListOutMeta */ total_items: number; } /** * * @export * @interface StatusOut */ export interface StatusOut { /** * List of updated objects/updated object IDs. * @type {Array} * @memberof StatusOut */ updated: Array; /** * * @type {MetaPermissions} * @memberof StatusOut */ meta?: MetaPermissions; } /** * * @export * @interface StatusOutUpdated */ export interface StatusOutUpdated { /** * * @type {string} * @memberof StatusOutUpdated */ inventory_id: string; /** * * @type {string} * @memberof StatusOutUpdated */ cve: string; } /** * * @export * @interface SystemCvesIdsOut */ export interface SystemCvesIdsOut { /** * * @type {string | Array} * @memberof SystemCvesIdsOut */ data: string | Array; /** * * @type {Links} * @memberof SystemCvesIdsOut */ links: Links; /** * * @type {MetaCves} * @memberof SystemCvesIdsOut */ meta: MetaCves; } /** * * @export * @interface SystemCvesOut */ export interface SystemCvesOut { /** * * @type {string | Array} * @memberof SystemCvesOut */ data: string | Array; /** * * @type {Links} * @memberof SystemCvesOut */ links: Links; /** * * @type {MetaCves} * @memberof SystemCvesOut */ meta: MetaCves; } /** * * @export * @interface SystemDetailsOut */ export interface SystemDetailsOut { /** * * @type {SystemDetailsOutData} * @memberof SystemDetailsOut */ data: SystemDetailsOutData; /** * * @type {MetaPermissions} * @memberof SystemDetailsOut */ meta: MetaPermissions; } /** * * @export * @interface SystemDetailsOutData */ export interface SystemDetailsOutData { /** * Date of last evaluation. * @type {string} * @memberof SystemDetailsOutData */ last_evaluation: string | null; /** * Date of last security rules evaluation. * @type {string} * @memberof SystemDetailsOutData */ rules_evaluation: string | null; /** * System opt out status. * @type {boolean} * @memberof SystemDetailsOutData */ opt_out: boolean; /** * Date of the latest upload of archive. * @type {string} * @memberof SystemDetailsOutData */ last_upload: string | null; /** * System stale status. * @type {boolean} * @memberof SystemDetailsOutData */ stale?: boolean; /** * Date of the lastest upload of archive taken from Inventory syndicated data. * @type {string} * @memberof SystemDetailsOutData */ updated?: string | null; /** * Operating system. * @type {string} * @memberof SystemDetailsOutData */ os: string; /** * System is locked to following RHSM version. * @type {string} * @memberof SystemDetailsOutData */ rhsm_lock: string | null; /** * * @type {Array} * @memberof SystemDetailsOutData */ tags: Array; /** * Type of the host * @type {string} * @memberof SystemDetailsOutData */ host_type: SystemDetailsOutDataHostTypeEnum; } /** * @export * @enum {string} */ export enum SystemDetailsOutDataHostTypeEnum { Rpmdnf = 'rpmdnf', Image = 'image' } /** * * @export * @interface SystemDetailsOutDataTags */ export interface SystemDetailsOutDataTags { /** * Namespace of single tag. * @type {string} * @memberof SystemDetailsOutDataTags */ namespace: string | null; /** * Key of the single tag. * @type {string} * @memberof SystemDetailsOutDataTags */ key: string; /** * Value of the single tag. * @type {string} * @memberof SystemDetailsOutDataTags */ value: string | null; } /** * * @export * @interface SystemIdsOut */ export interface SystemIdsOut { /** * * @type {string | Array} * @memberof SystemIdsOut */ data: string | Array; /** * * @type {Links} * @memberof SystemIdsOut */ links: Links; /** * * @type {MetaSystems} * @memberof SystemIdsOut */ meta: MetaSystems; } /** * * @export * @interface SystemListOut */ export interface SystemListOut { /** * * @type {string | Array} * @memberof SystemListOut */ data: string | Array; /** * * @type {Links} * @memberof SystemListOut */ links: Links; /** * * @type {MetaSystems} * @memberof SystemListOut */ meta: MetaSystems; } /** * * @export * @interface VersionOut */ export interface VersionOut { /** * Version of application. * @type {string} * @memberof VersionOut */ application_version: string; /** * Version of database schema. * @type {string | number} * @memberof VersionOut */ database_version: string | number; } /** * * @export * @interface VulnerabilitiesIdsOut */ export interface VulnerabilitiesIdsOut { /** * * @type {string | Array} * @memberof VulnerabilitiesIdsOut */ data: string | Array; /** * * @type {Links} * @memberof VulnerabilitiesIdsOut */ links: Links; /** * * @type {MetaVulnerabilitiesOut} * @memberof VulnerabilitiesIdsOut */ meta: MetaVulnerabilitiesOut; } /** * * @export * @interface VulnerabilitiesOut */ export interface VulnerabilitiesOut { /** * * @type {string | Array} * @memberof VulnerabilitiesOut */ data: string | Array; /** * * @type {Links} * @memberof VulnerabilitiesOut */ links: Links; /** * * @type {MetaVulnerabilitiesOut} * @memberof VulnerabilitiesOut */ meta: MetaVulnerabilitiesOut; } /** * * @export * @interface VulnerabilitiesPostIn */ export interface VulnerabilitiesPostIn { /** * Array of CVEs to provide info about * @type {Array} * @memberof VulnerabilitiesPostIn */ cve_list: Array; } /** * * @export * @interface VulnerabilitiesPostOut */ export interface VulnerabilitiesPostOut { /** * * @type {Array} * @memberof VulnerabilitiesPostOut */ data: Array; /** * * @type {Links} * @memberof VulnerabilitiesPostOut */ links: Links; /** * * @type {Meta & MetaPermissions} * @memberof VulnerabilitiesPostOut */ meta: Meta & MetaPermissions; } /** * * @export * @interface VulnerabilitiesPostOutAttributes */ export interface VulnerabilitiesPostOutAttributes { /** * String representation of cvss3 or cvvs2 (if v3 is not present) score of the CVE. * @type {string} * @memberof VulnerabilitiesPostOutAttributes */ cvss_score: string | null; /** * Red Hat security impact of the CVE. * @type {string} * @memberof VulnerabilitiesPostOutAttributes */ impact: string; /** * Synopsis of the CVE. * @type {string} * @memberof VulnerabilitiesPostOutAttributes */ synopsis: string; } /** * * @export * @interface VulnerabilitiesPostOutData */ export interface VulnerabilitiesPostOutData { /** * CVE id. * @type {string} * @memberof VulnerabilitiesPostOutData */ id: string; /** * Type of the record. * @type {string} * @memberof VulnerabilitiesPostOutData */ type: string; /** * * @type {VulnerabilitiesPostOutAttributes} * @memberof VulnerabilitiesPostOutData */ attributes: VulnerabilitiesPostOutAttributes; } /** * DefaultApi - axios parameter creator * @export */ export const DefaultApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * Use this endpoint for restarting your already obtained notifications for CVEs. * @summary Delete already sent notifications for CVEs * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteNotifications: async (options: any = {}): Promise => { const localVarPath = `/notifications`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This is a report of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected servers along with last check-in, system name and more. * @summary Determine affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAffectedSystemsByCve: async (cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options: any = {}): Promise => { // verify required parameter 'cveId' is not null or undefined if (cveId === null || cveId === undefined) { throw new RequiredError('cveId','Required parameter cveId was null or undefined when calling getAffectedSystemsByCve.'); } const localVarPath = `/cves/{cve_id}/affected_systems` .replace(`{${"cve_id"}}`, encodeURIComponent(String(cveId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (uuid !== undefined) { localVarQueryParameter['uuid'] = uuid; } if (ruleKey) { localVarQueryParameter['rule_key'] = ruleKey; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (rule) { localVarQueryParameter['rule'] = rule; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (showAdvisories !== undefined) { localVarQueryParameter['show_advisories'] = showAdvisories; } if (advisory !== undefined) { localVarQueryParameter['advisory'] = advisory; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (firstReportedFrom !== undefined) { localVarQueryParameter['first_reported_from'] = firstReportedFrom; } if (firstReportedTo !== undefined) { localVarQueryParameter['first_reported_to'] = firstReportedTo; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } if (remediation !== undefined) { localVarQueryParameter['remediation'] = remediation; } if (report !== undefined) { localVarQueryParameter['report'] = report; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (groupNames) { localVarQueryParameter['group_names'] = groupNames; } if (groupIds) { localVarQueryParameter['group_ids'] = groupIds; } if (hostType) { localVarQueryParameter['host_type'] = hostType; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This is a report of identification numbers of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected systems. * @summary Get identification numbers of affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAffectedSystemsIdsByCve: async (cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options: any = {}): Promise => { // verify required parameter 'cveId' is not null or undefined if (cveId === null || cveId === undefined) { throw new RequiredError('cveId','Required parameter cveId was null or undefined when calling getAffectedSystemsIdsByCve.'); } const localVarPath = `/cves/{cve_id}/affected_systems/ids` .replace(`{${"cve_id"}}`, encodeURIComponent(String(cveId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (uuid !== undefined) { localVarQueryParameter['uuid'] = uuid; } if (ruleKey) { localVarQueryParameter['rule_key'] = ruleKey; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (rule) { localVarQueryParameter['rule'] = rule; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (showAdvisories !== undefined) { localVarQueryParameter['show_advisories'] = showAdvisories; } if (advisory !== undefined) { localVarQueryParameter['advisory'] = advisory; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (firstReportedFrom !== undefined) { localVarQueryParameter['first_reported_from'] = firstReportedFrom; } if (firstReportedTo !== undefined) { localVarQueryParameter['first_reported_to'] = firstReportedTo; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } if (remediation !== undefined) { localVarQueryParameter['remediation'] = remediation; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (groupNames) { localVarQueryParameter['group_names'] = groupNames; } if (groupIds) { localVarQueryParameter['group_ids'] = groupIds; } if (hostType) { localVarQueryParameter['host_type'] = hostType; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint provides vulnerability service announcements. Remain informed about important alerts for the vulnerability service. Announcements are issued by Insights Product Managers and other subject matter experts. * @summary Announce important updates * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAnnouncement: async (options: any = {}): Promise => { const localVarPath = `/announcement`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Checks database availability and API response threshold time. * @summary Determine the health of the application * @param {*} [options] Override http request option. * @throws {RequiredError} */ getApiStatus: async (options: any = {}): Promise => { const localVarPath = `/apistatus`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint helps you determine the numeric business risk for a given CVE. A business risk is a label you can set for a given CVE. Choose one of five business risk options ranging from 0-4, where 0 is not defined and 4 indicates a critical risk. You must call this endpoint to choose a numerical value before calling the *PATCH/cves/business_risk* endpoint. * @summary Access business risk values * @param {*} [options] Override http request option. * @throws {RequiredError} */ getBusinessRiskList: async (options: any = {}): Promise => { const localVarPath = `/business_risk`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint returns the CVE identification number, description, scores and other metadata. The metadata includes the description, CVSS 2/3 Score, CVSS 2/3 attack vector, severity, public date, modified date, business risk, status, a URL to Red Hat web pages, a list of advisories remediating the CVE, and information regarding known exploits for the CVE. * @summary Get CVE details * @param {string} cveId CVE id. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveDetails: async (cveId: string, advisoryAvailable?: Array, options: any = {}): Promise => { // verify required parameter 'cveId' is not null or undefined if (cveId === null || cveId === undefined) { throw new RequiredError('cveId','Required parameter cveId was null or undefined when calling getCveDetails.'); } const localVarPath = `/cves/{cve_id}` .replace(`{${"cve_id"}}`, encodeURIComponent(String(cveId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint displays identification numbers of all CVEs for which a system is exposed. Use this endpoint to learn which CVEs are affecting a given system. * @summary Get a CVE identification number report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveIdsBySystem: async (inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, tags?: Array, options: any = {}): Promise => { // verify required parameter 'inventoryId' is not null or undefined if (inventoryId === null || inventoryId === undefined) { throw new RequiredError('inventoryId','Required parameter inventoryId was null or undefined when calling getCveIdsBySystem.'); } const localVarPath = `/systems/{inventory_id}/cves/ids` .replace(`{${"inventory_id"}}`, encodeURIComponent(String(inventoryId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (cvssFrom !== undefined) { localVarQueryParameter['cvss_from'] = cvssFrom; } if (cvssTo !== undefined) { localVarQueryParameter['cvss_to'] = cvssTo; } if (publicFrom !== undefined) { localVarQueryParameter['public_from'] = publicFrom; } if (publicTo !== undefined) { localVarQueryParameter['public_to'] = publicTo; } if (impact !== undefined) { localVarQueryParameter['impact'] = impact; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (businessRiskId !== undefined) { localVarQueryParameter['business_risk_id'] = businessRiskId; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (showAdvisories !== undefined) { localVarQueryParameter['show_advisories'] = showAdvisories; } if (advisory !== undefined) { localVarQueryParameter['advisory'] = advisory; } if (ruleKey) { localVarQueryParameter['rule_key'] = ruleKey; } if (knownExploit) { localVarQueryParameter['known_exploit'] = knownExploit; } if (firstReportedFrom !== undefined) { localVarQueryParameter['first_reported_from'] = firstReportedFrom; } if (firstReportedTo !== undefined) { localVarQueryParameter['first_reported_to'] = firstReportedTo; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } if (remediation !== undefined) { localVarQueryParameter['remediation'] = remediation; } if (tags) { localVarQueryParameter['tags'] = tags; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This is an overview of vulnerabilities identification numbers across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account. * @summary Get an overview of Vulnerabilities\' identification numbers * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveIdsList: async (filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, options: any = {}): Promise => { const localVarPath = `/vulnerabilities/cves/ids`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (cvssFrom !== undefined) { localVarQueryParameter['cvss_from'] = cvssFrom; } if (cvssTo !== undefined) { localVarQueryParameter['cvss_to'] = cvssTo; } if (publicFrom !== undefined) { localVarQueryParameter['public_from'] = publicFrom; } if (publicTo !== undefined) { localVarQueryParameter['public_to'] = publicTo; } if (impact !== undefined) { localVarQueryParameter['impact'] = impact; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (businessRiskId !== undefined) { localVarQueryParameter['business_risk_id'] = businessRiskId; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (knownExploit) { localVarQueryParameter['known_exploit'] = knownExploit; } if (affecting) { localVarQueryParameter['affecting'] = affecting; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This provides an overview of vulnerabilities across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account, including some CVE metadata, how many systems are affected by each CVE, and more. * @summary Get a vulnerabilities overview * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [advancedReport] Needs to be used when endpoint data is used for Report by CVEs feature, checks RBAC permission for advanced report. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge' | 'none'>} [affectingHostType] Controls, whenever CVE has 1 or more affecting systems. Value \"image\" returns CVEs with one or more vulnerable image-mode systems, value \"rpmdnf\" returns CVEs with one or more vulnerable conventional systems. Value \"none\" returns CVEs not affecting systems of any kind. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveList: async (filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, report?: boolean, advancedReport?: boolean, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, groupNames?: Array, groupIds?: Array, affectingHostType?: Array<'rpmdnf' | 'image' | 'edge' | 'none'>, options: any = {}): Promise => { const localVarPath = `/vulnerabilities/cves`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (cvssFrom !== undefined) { localVarQueryParameter['cvss_from'] = cvssFrom; } if (cvssTo !== undefined) { localVarQueryParameter['cvss_to'] = cvssTo; } if (publicFrom !== undefined) { localVarQueryParameter['public_from'] = publicFrom; } if (publicTo !== undefined) { localVarQueryParameter['public_to'] = publicTo; } if (impact !== undefined) { localVarQueryParameter['impact'] = impact; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (businessRiskId !== undefined) { localVarQueryParameter['business_risk_id'] = businessRiskId; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (knownExploit) { localVarQueryParameter['known_exploit'] = knownExploit; } if (affecting) { localVarQueryParameter['affecting'] = affecting; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (report !== undefined) { localVarQueryParameter['report'] = report; } if (advancedReport !== undefined) { localVarQueryParameter['advanced_report'] = advancedReport; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } if (groupNames) { localVarQueryParameter['group_names'] = groupNames; } if (groupIds) { localVarQueryParameter['group_ids'] = groupIds; } if (affectingHostType) { localVarQueryParameter['affecting_host_type'] = affectingHostType; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint displays detailed information about all CVEs for which a system is exposed. Use this endpoint to discover which CVEs are affecting a given system. CVE metadata is included. * @summary Get a CVE report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveListBySystem: async (inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, tags?: Array, options: any = {}): Promise => { // verify required parameter 'inventoryId' is not null or undefined if (inventoryId === null || inventoryId === undefined) { throw new RequiredError('inventoryId','Required parameter inventoryId was null or undefined when calling getCveListBySystem.'); } const localVarPath = `/systems/{inventory_id}/cves` .replace(`{${"inventory_id"}}`, encodeURIComponent(String(inventoryId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (cvssFrom !== undefined) { localVarQueryParameter['cvss_from'] = cvssFrom; } if (cvssTo !== undefined) { localVarQueryParameter['cvss_to'] = cvssTo; } if (publicFrom !== undefined) { localVarQueryParameter['public_from'] = publicFrom; } if (publicTo !== undefined) { localVarQueryParameter['public_to'] = publicTo; } if (impact !== undefined) { localVarQueryParameter['impact'] = impact; } if (statusId !== undefined) { localVarQueryParameter['status_id'] = statusId; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (businessRiskId !== undefined) { localVarQueryParameter['business_risk_id'] = businessRiskId; } if (rulePresence) { localVarQueryParameter['rule_presence'] = rulePresence; } if (showAdvisories !== undefined) { localVarQueryParameter['show_advisories'] = showAdvisories; } if (advisory !== undefined) { localVarQueryParameter['advisory'] = advisory; } if (ruleKey) { localVarQueryParameter['rule_key'] = ruleKey; } if (knownExploit) { localVarQueryParameter['known_exploit'] = knownExploit; } if (firstReportedFrom !== undefined) { localVarQueryParameter['first_reported_from'] = firstReportedFrom; } if (firstReportedTo !== undefined) { localVarQueryParameter['first_reported_to'] = firstReportedTo; } if (advisoryAvailable) { localVarQueryParameter['advisory_available'] = advisoryAvailable; } if (remediation !== undefined) { localVarQueryParameter['remediation'] = remediation; } if (report !== undefined) { localVarQueryParameter['report'] = report; } if (tags) { localVarQueryParameter['tags'] = tags; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This is an overview of vulnerabilities for specific CVEs provided in the body. Use this endpoint to get a CVSS score, and learn the severity for a list of CVEs provided in the request. * @summary Send a vulnerabilities overview * @param {VulnerabilitiesPostIn} vulnerabilitiesPostIn List of CVEs to provide info about. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveList_1: async (vulnerabilitiesPostIn: VulnerabilitiesPostIn, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, options: any = {}): Promise => { // verify required parameter 'vulnerabilitiesPostIn' is not null or undefined if (vulnerabilitiesPostIn === null || vulnerabilitiesPostIn === undefined) { throw new RequiredError('vulnerabilitiesPostIn','Required parameter vulnerabilitiesPostIn was null or undefined when calling getCveList_1.'); } const localVarPath = `/vulnerabilities/cves`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof vulnerabilitiesPostIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(vulnerabilitiesPostIn !== undefined ? vulnerabilitiesPostIn : {}) : (vulnerabilitiesPostIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence, severity and other details. * @summary Get aggregations for the dashbar * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDashbar: async (tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options: any = {}): Promise => { const localVarPath = `/dashbar`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity, and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence and severity. * @summary Get a macro level overview of aggregated vulnerabilities * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDashboard: async (tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options: any = {}): Promise => { const localVarPath = `/dashboard`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This returns an overview of vulnerabilities affecting a given account. Use this request when you need to download a high-level, executive report summarizing the security exposure of your infrastructure. These reports are designed for an executive audience and include data such as the number of RHEL systems analyzed, the number of security rules in your infrastructure, percentage of CVEs with a certain severity and more. * @summary Generate an executive report * @param {*} [options] Override http request option. * @throws {RequiredError} */ getExecutiveReport: async (options: any = {}): Promise => { const localVarPath = `/report/executive`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * List RHEL versions and number of CVEs exposing each of these versions. Each RHEL version represents system with base and core group packages installed. * @summary Generate CVE exposure report by RHEL version * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getOSExposure: async (dataFormat?: string, options: any = {}): Promise => { const localVarPath = `/report/os`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This returns an Ansible playbook template for a given rule identification number. Use this endpoint to return an Ansible playbook template for a given rule error key. The template is used to remediate issues on your system. * @summary Get an Ansible Playbook template for CVEs with security rules * @param {string} ruleId Insights security rule ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getPlaybookTemplate: async (ruleId: string, options: any = {}): Promise => { // verify required parameter 'ruleId' is not null or undefined if (ruleId === null || ruleId === undefined) { throw new RequiredError('ruleId','Required parameter ruleId was null or undefined when calling getPlaybookTemplate.'); } const localVarPath = `/playbooks/templates/{rule_id}` .replace(`{${"rule_id"}}`, encodeURIComponent(String(ruleId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint returns a list of possible values for setting status for a CVE or system-CVE pair. Call this api when you want to know which values are available for setting a status. A list of numbers will be returned. You must call this endpoint before calling the *PATCH/cves/status* endpoint. * @summary Access available status values * @param {*} [options] Override http request option. * @throws {RequiredError} */ getStatusList: async (options: any = {}): Promise => { const localVarPath = `/status`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This allows you to get information about systems related to an inventory identification number. This includes details such as operating system, inventory tags, last update, opt-out status, and more. * @summary Get system details * @param {string} inventoryId Inventory ID. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemDetails: async (inventoryId: string, tags?: Array, options: any = {}): Promise => { // verify required parameter 'inventoryId' is not null or undefined if (inventoryId === null || inventoryId === undefined) { throw new RequiredError('inventoryId','Required parameter inventoryId was null or undefined when calling getSystemDetails.'); } const localVarPath = `/systems/{inventory_id}` .replace(`{${"inventory_id"}}`, encodeURIComponent(String(inventoryId))); const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (tags) { localVarQueryParameter['tags'] = tags; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This lists systems including those that have opted out of the current query. Use this when you do not want to see a registered system or systems in your reports. * @summary List systems identification numbers along with opt out state * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemsIds: async (filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options: any = {}): Promise => { const localVarPath = `/systems/ids`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (stale !== undefined) { localVarQueryParameter['stale'] = stale; } if (uuid !== undefined) { localVarQueryParameter['uuid'] = uuid; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (excluded) { localVarQueryParameter['excluded'] = excluded; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (groupNames) { localVarQueryParameter['group_names'] = groupNames; } if (groupIds) { localVarQueryParameter['group_ids'] = groupIds; } if (hostType) { localVarQueryParameter['host_type'] = hostType; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * List systems that are accessible when you are logged into your account. Use this endpoint to view basic system attributes such as display name and system type. * @summary List systems * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemsList: async (filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options: any = {}): Promise => { const localVarPath = `/systems`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } if (filter !== undefined) { localVarQueryParameter['filter'] = filter; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (page !== undefined) { localVarQueryParameter['page'] = page; } if (pageSize !== undefined) { localVarQueryParameter['page_size'] = pageSize; } if (sort !== undefined) { localVarQueryParameter['sort'] = sort; } if (dataFormat !== undefined) { localVarQueryParameter['data_format'] = dataFormat; } if (stale !== undefined) { localVarQueryParameter['stale'] = stale; } if (uuid !== undefined) { localVarQueryParameter['uuid'] = uuid; } if (tags) { localVarQueryParameter['tags'] = tags; } if (sapSids) { localVarQueryParameter['sap_sids'] = sapSids; } if (sapSystem !== undefined) { localVarQueryParameter['sap_system'] = sapSystem; } if (excluded) { localVarQueryParameter['excluded'] = excluded; } if (rhelVersion !== undefined) { localVarQueryParameter['rhel_version'] = rhelVersion; } if (report !== undefined) { localVarQueryParameter['report'] = report; } if (ansible !== undefined) { localVarQueryParameter['ansible'] = ansible; } if (mssql !== undefined) { localVarQueryParameter['mssql'] = mssql; } if (groupNames) { localVarQueryParameter['group_names'] = groupNames; } if (groupIds) { localVarQueryParameter['group_ids'] = groupIds; } if (hostType) { localVarQueryParameter['host_type'] = hostType; } localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint will provide you with the application version. Use this endpoint to track application changes. * @summary Get application version * @param {*} [options] Override http request option. * @throws {RequiredError} */ getVersion: async (options: any = {}): Promise => { const localVarPath = `/version`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This sets a business risk for a specific CVE. Set a value of low, medium, high or critical for a given CVE. These values are obtained by the business risk path *GET/business_risk*. To set a business risk, you must call the GET/business_risk endpoint first, followed by the *PATCH/cves/business_risk* path. * @summary Set business risk for a CVE * @param {CveRiskIn} cveRiskIn Values to be set. At least one of the \"business_risk_id\" or \"business_risk_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCveBusinessRisk: async (cveRiskIn: CveRiskIn, options: any = {}): Promise => { // verify required parameter 'cveRiskIn' is not null or undefined if (cveRiskIn === null || cveRiskIn === undefined) { throw new RequiredError('cveRiskIn','Required parameter cveRiskIn was null or undefined when calling setCveBusinessRisk.'); } const localVarPath = `/cves/business_risk`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof cveRiskIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(cveRiskIn !== undefined ? cveRiskIn : {}) : (cveRiskIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This sets the status for a specific CVE. Set a status value for a given CVE (e.g. in-review, on-hold, scheduled for a patch, or resolved). These values are obtained by sending a *GET/status* request. To set a status, you must call the *GET/business_risk* first, followed by the *PATCH/cves/status* path. * @summary Set status for a CVE * @param {CveStatusIn} cveStatusIn Values to be set. At least one of the \"status_id\" or \"status_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCveStatus: async (cveStatusIn: CveStatusIn, options: any = {}): Promise => { // verify required parameter 'cveStatusIn' is not null or undefined if (cveStatusIn === null || cveStatusIn === undefined) { throw new RequiredError('cveStatusIn','Required parameter cveStatusIn was null or undefined when calling setCveStatus.'); } const localVarPath = `/cves/status`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof cveStatusIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(cveStatusIn !== undefined ? cveStatusIn : {}) : (cveStatusIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Use this endpoint to enable/disable reporting CVEs that do not have advisories (errata) for your customer account. If the feature is disabled, CVEs without advisories will be hidden in outputs of all endpoints. * @summary Set a feature flag for CVEs without errata * @param {CvesWithoutErrataIn} cvesWithoutErrataIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCvesWithoutErrata: async (cvesWithoutErrataIn: CvesWithoutErrataIn, options: any = {}): Promise => { // verify required parameter 'cvesWithoutErrataIn' is not null or undefined if (cvesWithoutErrataIn === null || cvesWithoutErrataIn === undefined) { throw new RequiredError('cvesWithoutErrataIn','Required parameter cvesWithoutErrataIn was null or undefined when calling setCvesWithoutErrata.'); } const localVarPath = `/feature/cves_without_errata`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof cvesWithoutErrataIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(cvesWithoutErrataIn !== undefined ? cvesWithoutErrataIn : {}) : (cvesWithoutErrataIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * This endpoint sets status for given systems and CVEs. Use this endpoint when you need to set a status value for system-CVE pairs. * @summary Set status for system vulnerabilities * @param {StatusIn} statusIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setStatus: async (statusIn: StatusIn, options: any = {}): Promise => { // verify required parameter 'statusIn' is not null or undefined if (statusIn === null || statusIn === undefined) { throw new RequiredError('statusIn','Required parameter statusIn was null or undefined when calling setStatus.'); } const localVarPath = `/status`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof statusIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(statusIn !== undefined ? statusIn : {}) : (statusIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Opt a specific system in or out of vulnerability analysis. Use this when you want to use other Insights services but do not want to see specific systems in vulnerability reports. This allows you to hide select systems. * @summary Opt a system in or out of the vulnerability service * @param {OptOutIn} optOutIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setSystemsOptOut: async (optOutIn: OptOutIn, options: any = {}): Promise => { // verify required parameter 'optOutIn' is not null or undefined if (optOutIn === null || optOutIn === undefined) { throw new RequiredError('optOutIn','Required parameter optOutIn was null or undefined when calling setSystemsOptOut.'); } const localVarPath = `/systems/opt_out`; const localVarUrlObj = globalImportUrl.parse(localVarPath, true); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication ApiKeyAuth required if (configuration && configuration.apiKey) { const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey("x-rh-identity") : await configuration.apiKey; localVarHeaderParameter["x-rh-identity"] = localVarApiKeyValue; } // authentication BasicAuth required // http basic authentication required if (configuration && (configuration.username || configuration.password)) { localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; } localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; localVarUrlObj.query = {...localVarUrlObj.query, ...localVarQueryParameter, ...options.query}; // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943 delete localVarUrlObj.search; let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; const needsSerialization = (typeof optOutIn !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(optOutIn !== undefined ? optOutIn : {}) : (optOutIn || ""); return { url: globalImportUrl.format(localVarUrlObj), options: localVarRequestOptions, }; }, } }; /** * DefaultApi - functional programming interface * @export */ export const DefaultApiFp = function(configuration?: Configuration) { return { /** * Use this endpoint for restarting your already obtained notifications for CVEs. * @summary Delete already sent notifications for CVEs * @param {*} [options] Override http request option. * @throws {RequiredError} */ async deleteNotifications(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).deleteNotifications(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This is a report of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected servers along with last check-in, system name and more. * @summary Determine affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getAffectedSystemsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getAffectedSystemsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, ansible, mssql, groupNames, groupIds, hostType, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This is a report of identification numbers of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected systems. * @summary Get identification numbers of affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getAffectedSystemsIdsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getAffectedSystemsIdsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, ansible, mssql, groupNames, groupIds, hostType, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint provides vulnerability service announcements. Remain informed about important alerts for the vulnerability service. Announcements are issued by Insights Product Managers and other subject matter experts. * @summary Announce important updates * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getAnnouncement(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getAnnouncement(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * Checks database availability and API response threshold time. * @summary Determine the health of the application * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getApiStatus(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getApiStatus(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint helps you determine the numeric business risk for a given CVE. A business risk is a label you can set for a given CVE. Choose one of five business risk options ranging from 0-4, where 0 is not defined and 4 indicates a critical risk. You must call this endpoint to choose a numerical value before calling the *PATCH/cves/business_risk* endpoint. * @summary Access business risk values * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getBusinessRiskList(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getBusinessRiskList(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint returns the CVE identification number, description, scores and other metadata. The metadata includes the description, CVSS 2/3 Score, CVSS 2/3 attack vector, severity, public date, modified date, business risk, status, a URL to Red Hat web pages, a list of advisories remediating the CVE, and information regarding known exploits for the CVE. * @summary Get CVE details * @param {string} cveId CVE id. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveDetails(cveId: string, advisoryAvailable?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveDetails(cveId, advisoryAvailable, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint displays identification numbers of all CVEs for which a system is exposed. Use this endpoint to learn which CVEs are affecting a given system. * @summary Get a CVE identification number report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveIdsBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, tags?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveIdsBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, tags, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This is an overview of vulnerabilities identification numbers across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account. * @summary Get an overview of Vulnerabilities\' identification numbers * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveIdsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveIdsList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, ansible, mssql, advisoryAvailable, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This provides an overview of vulnerabilities across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account, including some CVE metadata, how many systems are affected by each CVE, and more. * @summary Get a vulnerabilities overview * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [advancedReport] Needs to be used when endpoint data is used for Report by CVEs feature, checks RBAC permission for advanced report. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge' | 'none'>} [affectingHostType] Controls, whenever CVE has 1 or more affecting systems. Value \"image\" returns CVEs with one or more vulnerable image-mode systems, value \"rpmdnf\" returns CVEs with one or more vulnerable conventional systems. Value \"none\" returns CVEs not affecting systems of any kind. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, report?: boolean, advancedReport?: boolean, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, groupNames?: Array, groupIds?: Array, affectingHostType?: Array<'rpmdnf' | 'image' | 'edge' | 'none'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, report, advancedReport, ansible, mssql, advisoryAvailable, groupNames, groupIds, affectingHostType, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint displays detailed information about all CVEs for which a system is exposed. Use this endpoint to discover which CVEs are affecting a given system. CVE metadata is included. * @summary Get a CVE report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveListBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, tags?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveListBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, tags, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This is an overview of vulnerabilities for specific CVEs provided in the body. Use this endpoint to get a CVSS score, and learn the severity for a list of CVEs provided in the request. * @summary Send a vulnerabilities overview * @param {VulnerabilitiesPostIn} vulnerabilitiesPostIn List of CVEs to provide info about. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getCveList_1(vulnerabilitiesPostIn: VulnerabilitiesPostIn, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getCveList_1(vulnerabilitiesPostIn, filter, limit, offset, page, pageSize, sort, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence, severity and other details. * @summary Get aggregations for the dashbar * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getDashbar(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getDashbar(tags, sapSids, sapSystem, ansible, mssql, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity, and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence and severity. * @summary Get a macro level overview of aggregated vulnerabilities * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getDashboard(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getDashboard(tags, sapSids, sapSystem, ansible, mssql, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This returns an overview of vulnerabilities affecting a given account. Use this request when you need to download a high-level, executive report summarizing the security exposure of your infrastructure. These reports are designed for an executive audience and include data such as the number of RHEL systems analyzed, the number of security rules in your infrastructure, percentage of CVEs with a certain severity and more. * @summary Generate an executive report * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getExecutiveReport(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getExecutiveReport(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * List RHEL versions and number of CVEs exposing each of these versions. Each RHEL version represents system with base and core group packages installed. * @summary Generate CVE exposure report by RHEL version * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getOSExposure(dataFormat?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getOSExposure(dataFormat, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This returns an Ansible playbook template for a given rule identification number. Use this endpoint to return an Ansible playbook template for a given rule error key. The template is used to remediate issues on your system. * @summary Get an Ansible Playbook template for CVEs with security rules * @param {string} ruleId Insights security rule ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getPlaybookTemplate(ruleId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getPlaybookTemplate(ruleId, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint returns a list of possible values for setting status for a CVE or system-CVE pair. Call this api when you want to know which values are available for setting a status. A list of numbers will be returned. You must call this endpoint before calling the *PATCH/cves/status* endpoint. * @summary Access available status values * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getStatusList(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getStatusList(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This allows you to get information about systems related to an inventory identification number. This includes details such as operating system, inventory tags, last update, opt-out status, and more. * @summary Get system details * @param {string} inventoryId Inventory ID. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getSystemDetails(inventoryId: string, tags?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getSystemDetails(inventoryId, tags, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This lists systems including those that have opted out of the current query. Use this when you do not want to see a registered system or systems in your reports. * @summary List systems identification numbers along with opt out state * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getSystemsIds(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getSystemsIds(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, ansible, mssql, groupNames, groupIds, hostType, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * List systems that are accessible when you are logged into your account. Use this endpoint to view basic system attributes such as display name and system type. * @summary List systems * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getSystemsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getSystemsList(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, report, ansible, mssql, groupNames, groupIds, hostType, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint will provide you with the application version. Use this endpoint to track application changes. * @summary Get application version * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getVersion(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).getVersion(options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This sets a business risk for a specific CVE. Set a value of low, medium, high or critical for a given CVE. These values are obtained by the business risk path *GET/business_risk*. To set a business risk, you must call the GET/business_risk endpoint first, followed by the *PATCH/cves/business_risk* path. * @summary Set business risk for a CVE * @param {CveRiskIn} cveRiskIn Values to be set. At least one of the \"business_risk_id\" or \"business_risk_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async setCveBusinessRisk(cveRiskIn: CveRiskIn, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).setCveBusinessRisk(cveRiskIn, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This sets the status for a specific CVE. Set a status value for a given CVE (e.g. in-review, on-hold, scheduled for a patch, or resolved). These values are obtained by sending a *GET/status* request. To set a status, you must call the *GET/business_risk* first, followed by the *PATCH/cves/status* path. * @summary Set status for a CVE * @param {CveStatusIn} cveStatusIn Values to be set. At least one of the \"status_id\" or \"status_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async setCveStatus(cveStatusIn: CveStatusIn, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).setCveStatus(cveStatusIn, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * Use this endpoint to enable/disable reporting CVEs that do not have advisories (errata) for your customer account. If the feature is disabled, CVEs without advisories will be hidden in outputs of all endpoints. * @summary Set a feature flag for CVEs without errata * @param {CvesWithoutErrataIn} cvesWithoutErrataIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async setCvesWithoutErrata(cvesWithoutErrataIn: CvesWithoutErrataIn, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).setCvesWithoutErrata(cvesWithoutErrataIn, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * This endpoint sets status for given systems and CVEs. Use this endpoint when you need to set a status value for system-CVE pairs. * @summary Set status for system vulnerabilities * @param {StatusIn} statusIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async setStatus(statusIn: StatusIn, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).setStatus(statusIn, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, /** * Opt a specific system in or out of vulnerability analysis. Use this when you want to use other Insights services but do not want to see specific systems in vulnerability reports. This allows you to hide select systems. * @summary Opt a system in or out of the vulnerability service * @param {OptOutIn} optOutIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async setSystemsOptOut(optOutIn: OptOutIn, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).setSystemsOptOut(optOutIn, options); return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; return axios.request(axiosRequestArgs); }; }, } }; /** * DefaultApi - factory interface * @export */ export const DefaultApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { return { /** * Use this endpoint for restarting your already obtained notifications for CVEs. * @summary Delete already sent notifications for CVEs * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteNotifications(options?: any): AxiosPromise { return DefaultApiFp(configuration).deleteNotifications(options).then((request) => request(axios, basePath)); }, /** * This is a report of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected servers along with last check-in, system name and more. * @summary Determine affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAffectedSystemsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): AxiosPromise { return DefaultApiFp(configuration).getAffectedSystemsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(axios, basePath)); }, /** * This is a report of identification numbers of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected systems. * @summary Get identification numbers of affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAffectedSystemsIdsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): AxiosPromise { return DefaultApiFp(configuration).getAffectedSystemsIdsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(axios, basePath)); }, /** * This endpoint provides vulnerability service announcements. Remain informed about important alerts for the vulnerability service. Announcements are issued by Insights Product Managers and other subject matter experts. * @summary Announce important updates * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAnnouncement(options?: any): AxiosPromise { return DefaultApiFp(configuration).getAnnouncement(options).then((request) => request(axios, basePath)); }, /** * Checks database availability and API response threshold time. * @summary Determine the health of the application * @param {*} [options] Override http request option. * @throws {RequiredError} */ getApiStatus(options?: any): AxiosPromise { return DefaultApiFp(configuration).getApiStatus(options).then((request) => request(axios, basePath)); }, /** * This endpoint helps you determine the numeric business risk for a given CVE. A business risk is a label you can set for a given CVE. Choose one of five business risk options ranging from 0-4, where 0 is not defined and 4 indicates a critical risk. You must call this endpoint to choose a numerical value before calling the *PATCH/cves/business_risk* endpoint. * @summary Access business risk values * @param {*} [options] Override http request option. * @throws {RequiredError} */ getBusinessRiskList(options?: any): AxiosPromise { return DefaultApiFp(configuration).getBusinessRiskList(options).then((request) => request(axios, basePath)); }, /** * This endpoint returns the CVE identification number, description, scores and other metadata. The metadata includes the description, CVSS 2/3 Score, CVSS 2/3 attack vector, severity, public date, modified date, business risk, status, a URL to Red Hat web pages, a list of advisories remediating the CVE, and information regarding known exploits for the CVE. * @summary Get CVE details * @param {string} cveId CVE id. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveDetails(cveId: string, advisoryAvailable?: Array, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveDetails(cveId, advisoryAvailable, options).then((request) => request(axios, basePath)); }, /** * This endpoint displays identification numbers of all CVEs for which a system is exposed. Use this endpoint to learn which CVEs are affecting a given system. * @summary Get a CVE identification number report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveIdsBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, tags?: Array, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveIdsBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, tags, options).then((request) => request(axios, basePath)); }, /** * This is an overview of vulnerabilities identification numbers across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account. * @summary Get an overview of Vulnerabilities\' identification numbers * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveIdsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveIdsList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, ansible, mssql, advisoryAvailable, options).then((request) => request(axios, basePath)); }, /** * This provides an overview of vulnerabilities across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account, including some CVE metadata, how many systems are affected by each CVE, and more. * @summary Get a vulnerabilities overview * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [advancedReport] Needs to be used when endpoint data is used for Report by CVEs feature, checks RBAC permission for advanced report. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge' | 'none'>} [affectingHostType] Controls, whenever CVE has 1 or more affecting systems. Value \"image\" returns CVEs with one or more vulnerable image-mode systems, value \"rpmdnf\" returns CVEs with one or more vulnerable conventional systems. Value \"none\" returns CVEs not affecting systems of any kind. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, report?: boolean, advancedReport?: boolean, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, groupNames?: Array, groupIds?: Array, affectingHostType?: Array<'rpmdnf' | 'image' | 'edge' | 'none'>, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, report, advancedReport, ansible, mssql, advisoryAvailable, groupNames, groupIds, affectingHostType, options).then((request) => request(axios, basePath)); }, /** * This endpoint displays detailed information about all CVEs for which a system is exposed. Use this endpoint to discover which CVEs are affecting a given system. CVE metadata is included. * @summary Get a CVE report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveListBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, tags?: Array, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveListBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, tags, options).then((request) => request(axios, basePath)); }, /** * This is an overview of vulnerabilities for specific CVEs provided in the body. Use this endpoint to get a CVSS score, and learn the severity for a list of CVEs provided in the request. * @summary Send a vulnerabilities overview * @param {VulnerabilitiesPostIn} vulnerabilitiesPostIn List of CVEs to provide info about. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getCveList_1(vulnerabilitiesPostIn: VulnerabilitiesPostIn, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, options?: any): AxiosPromise { return DefaultApiFp(configuration).getCveList_1(vulnerabilitiesPostIn, filter, limit, offset, page, pageSize, sort, options).then((request) => request(axios, basePath)); }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence, severity and other details. * @summary Get aggregations for the dashbar * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDashbar(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any): AxiosPromise { return DefaultApiFp(configuration).getDashbar(tags, sapSids, sapSystem, ansible, mssql, options).then((request) => request(axios, basePath)); }, /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity, and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence and severity. * @summary Get a macro level overview of aggregated vulnerabilities * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getDashboard(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any): AxiosPromise { return DefaultApiFp(configuration).getDashboard(tags, sapSids, sapSystem, ansible, mssql, options).then((request) => request(axios, basePath)); }, /** * This returns an overview of vulnerabilities affecting a given account. Use this request when you need to download a high-level, executive report summarizing the security exposure of your infrastructure. These reports are designed for an executive audience and include data such as the number of RHEL systems analyzed, the number of security rules in your infrastructure, percentage of CVEs with a certain severity and more. * @summary Generate an executive report * @param {*} [options] Override http request option. * @throws {RequiredError} */ getExecutiveReport(options?: any): AxiosPromise { return DefaultApiFp(configuration).getExecutiveReport(options).then((request) => request(axios, basePath)); }, /** * List RHEL versions and number of CVEs exposing each of these versions. Each RHEL version represents system with base and core group packages installed. * @summary Generate CVE exposure report by RHEL version * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getOSExposure(dataFormat?: string, options?: any): AxiosPromise { return DefaultApiFp(configuration).getOSExposure(dataFormat, options).then((request) => request(axios, basePath)); }, /** * This returns an Ansible playbook template for a given rule identification number. Use this endpoint to return an Ansible playbook template for a given rule error key. The template is used to remediate issues on your system. * @summary Get an Ansible Playbook template for CVEs with security rules * @param {string} ruleId Insights security rule ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getPlaybookTemplate(ruleId: string, options?: any): AxiosPromise { return DefaultApiFp(configuration).getPlaybookTemplate(ruleId, options).then((request) => request(axios, basePath)); }, /** * This endpoint returns a list of possible values for setting status for a CVE or system-CVE pair. Call this api when you want to know which values are available for setting a status. A list of numbers will be returned. You must call this endpoint before calling the *PATCH/cves/status* endpoint. * @summary Access available status values * @param {*} [options] Override http request option. * @throws {RequiredError} */ getStatusList(options?: any): AxiosPromise { return DefaultApiFp(configuration).getStatusList(options).then((request) => request(axios, basePath)); }, /** * This allows you to get information about systems related to an inventory identification number. This includes details such as operating system, inventory tags, last update, opt-out status, and more. * @summary Get system details * @param {string} inventoryId Inventory ID. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemDetails(inventoryId: string, tags?: Array, options?: any): AxiosPromise { return DefaultApiFp(configuration).getSystemDetails(inventoryId, tags, options).then((request) => request(axios, basePath)); }, /** * This lists systems including those that have opted out of the current query. Use this when you do not want to see a registered system or systems in your reports. * @summary List systems identification numbers along with opt out state * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemsIds(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): AxiosPromise { return DefaultApiFp(configuration).getSystemsIds(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(axios, basePath)); }, /** * List systems that are accessible when you are logged into your account. Use this endpoint to view basic system attributes such as display name and system type. * @summary List systems * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getSystemsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any): AxiosPromise { return DefaultApiFp(configuration).getSystemsList(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, report, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(axios, basePath)); }, /** * This endpoint will provide you with the application version. Use this endpoint to track application changes. * @summary Get application version * @param {*} [options] Override http request option. * @throws {RequiredError} */ getVersion(options?: any): AxiosPromise { return DefaultApiFp(configuration).getVersion(options).then((request) => request(axios, basePath)); }, /** * This sets a business risk for a specific CVE. Set a value of low, medium, high or critical for a given CVE. These values are obtained by the business risk path *GET/business_risk*. To set a business risk, you must call the GET/business_risk endpoint first, followed by the *PATCH/cves/business_risk* path. * @summary Set business risk for a CVE * @param {CveRiskIn} cveRiskIn Values to be set. At least one of the \"business_risk_id\" or \"business_risk_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCveBusinessRisk(cveRiskIn: CveRiskIn, options?: any): AxiosPromise { return DefaultApiFp(configuration).setCveBusinessRisk(cveRiskIn, options).then((request) => request(axios, basePath)); }, /** * This sets the status for a specific CVE. Set a status value for a given CVE (e.g. in-review, on-hold, scheduled for a patch, or resolved). These values are obtained by sending a *GET/status* request. To set a status, you must call the *GET/business_risk* first, followed by the *PATCH/cves/status* path. * @summary Set status for a CVE * @param {CveStatusIn} cveStatusIn Values to be set. At least one of the \"status_id\" or \"status_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCveStatus(cveStatusIn: CveStatusIn, options?: any): AxiosPromise { return DefaultApiFp(configuration).setCveStatus(cveStatusIn, options).then((request) => request(axios, basePath)); }, /** * Use this endpoint to enable/disable reporting CVEs that do not have advisories (errata) for your customer account. If the feature is disabled, CVEs without advisories will be hidden in outputs of all endpoints. * @summary Set a feature flag for CVEs without errata * @param {CvesWithoutErrataIn} cvesWithoutErrataIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setCvesWithoutErrata(cvesWithoutErrataIn: CvesWithoutErrataIn, options?: any): AxiosPromise { return DefaultApiFp(configuration).setCvesWithoutErrata(cvesWithoutErrataIn, options).then((request) => request(axios, basePath)); }, /** * This endpoint sets status for given systems and CVEs. Use this endpoint when you need to set a status value for system-CVE pairs. * @summary Set status for system vulnerabilities * @param {StatusIn} statusIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setStatus(statusIn: StatusIn, options?: any): AxiosPromise { return DefaultApiFp(configuration).setStatus(statusIn, options).then((request) => request(axios, basePath)); }, /** * Opt a specific system in or out of vulnerability analysis. Use this when you want to use other Insights services but do not want to see specific systems in vulnerability reports. This allows you to hide select systems. * @summary Opt a system in or out of the vulnerability service * @param {OptOutIn} optOutIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setSystemsOptOut(optOutIn: OptOutIn, options?: any): AxiosPromise { return DefaultApiFp(configuration).setSystemsOptOut(optOutIn, options).then((request) => request(axios, basePath)); }, }; }; /** * DefaultApi - object-oriented interface * @export * @class DefaultApi * @extends {BaseAPI} */ export class DefaultApi extends BaseAPI { /** * Use this endpoint for restarting your already obtained notifications for CVEs. * @summary Delete already sent notifications for CVEs * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public deleteNotifications(options?: any) { return DefaultApiFp(this.configuration).deleteNotifications(options).then((request) => request(this.axios, this.basePath)); } /** * This is a report of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected servers along with last check-in, system name and more. * @summary Determine affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getAffectedSystemsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any) { return DefaultApiFp(this.configuration).getAffectedSystemsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(this.axios, this.basePath)); } /** * This is a report of identification numbers of affected systems for a given CVE. Use this request to obtain server identification numbers of all affected systems. * @summary Get identification numbers of affected systems for a given CVE * @param {string} cveId CVE id. * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [rule] Filters CVEs or systems by security rule, has two functionalities. If value is false, shows results without security rules, every other value is taken as rule error key. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getAffectedSystemsIdsByCve(cveId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, statusId?: string, dataFormat?: string, uuid?: string, ruleKey?: Array, rulePresence?: Array, rule?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, showAdvisories?: boolean, advisory?: string, rhelVersion?: string, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any) { return DefaultApiFp(this.configuration).getAffectedSystemsIdsByCve(cveId, filter, limit, offset, page, pageSize, sort, statusId, dataFormat, uuid, ruleKey, rulePresence, rule, tags, sapSids, sapSystem, showAdvisories, advisory, rhelVersion, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint provides vulnerability service announcements. Remain informed about important alerts for the vulnerability service. Announcements are issued by Insights Product Managers and other subject matter experts. * @summary Announce important updates * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getAnnouncement(options?: any) { return DefaultApiFp(this.configuration).getAnnouncement(options).then((request) => request(this.axios, this.basePath)); } /** * Checks database availability and API response threshold time. * @summary Determine the health of the application * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getApiStatus(options?: any) { return DefaultApiFp(this.configuration).getApiStatus(options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint helps you determine the numeric business risk for a given CVE. A business risk is a label you can set for a given CVE. Choose one of five business risk options ranging from 0-4, where 0 is not defined and 4 indicates a critical risk. You must call this endpoint to choose a numerical value before calling the *PATCH/cves/business_risk* endpoint. * @summary Access business risk values * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getBusinessRiskList(options?: any) { return DefaultApiFp(this.configuration).getBusinessRiskList(options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint returns the CVE identification number, description, scores and other metadata. The metadata includes the description, CVSS 2/3 Score, CVSS 2/3 attack vector, severity, public date, modified date, business risk, status, a URL to Red Hat web pages, a list of advisories remediating the CVE, and information regarding known exploits for the CVE. * @summary Get CVE details * @param {string} cveId CVE id. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveDetails(cveId: string, advisoryAvailable?: Array, options?: any) { return DefaultApiFp(this.configuration).getCveDetails(cveId, advisoryAvailable, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint displays identification numbers of all CVEs for which a system is exposed. Use this endpoint to learn which CVEs are affecting a given system. * @summary Get a CVE identification number report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveIdsBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, tags?: Array, options?: any) { return DefaultApiFp(this.configuration).getCveIdsBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, tags, options).then((request) => request(this.axios, this.basePath)); } /** * This is an overview of vulnerabilities identification numbers across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account. * @summary Get an overview of Vulnerabilities\' identification numbers * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveIdsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, options?: any) { return DefaultApiFp(this.configuration).getCveIdsList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, ansible, mssql, advisoryAvailable, options).then((request) => request(this.axios, this.basePath)); } /** * This provides an overview of vulnerabilities across your entire system inventory. Use this endpoint to get an overview of which CVEs are affecting your account, including some CVE metadata, how many systems are affected by each CVE, and more. * @summary Get a vulnerabilities overview * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {Array} [affecting] Comma seprated string with bools (array of bools). True value controls displaying CVEs with at least one system affected. False value toggles CVEs with no systems affected. Defaults to showing only CVEs with at least one system affected. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [advancedReport] Needs to be used when endpoint data is used for Report by CVEs feature, checks RBAC permission for advanced report. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge' | 'none'>} [affectingHostType] Controls, whenever CVE has 1 or more affecting systems. Value \"image\" returns CVEs with one or more vulnerable image-mode systems, value \"rpmdnf\" returns CVEs with one or more vulnerable conventional systems. Value \"none\" returns CVEs not affecting systems of any kind. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, dataFormat?: string, businessRiskId?: string, statusId?: string, rulePresence?: Array, tags?: Array, sapSids?: Array, sapSystem?: boolean, knownExploit?: Array, affecting?: Array, rhelVersion?: string, report?: boolean, advancedReport?: boolean, ansible?: boolean, mssql?: boolean, advisoryAvailable?: Array, groupNames?: Array, groupIds?: Array, affectingHostType?: Array<'rpmdnf' | 'image' | 'edge' | 'none'>, options?: any) { return DefaultApiFp(this.configuration).getCveList(filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, dataFormat, businessRiskId, statusId, rulePresence, tags, sapSids, sapSystem, knownExploit, affecting, rhelVersion, report, advancedReport, ansible, mssql, advisoryAvailable, groupNames, groupIds, affectingHostType, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint displays detailed information about all CVEs for which a system is exposed. Use this endpoint to discover which CVEs are affecting a given system. CVE metadata is included. * @summary Get a CVE report for a system * @param {string} inventoryId Inventory ID. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {number} [cvssFrom] Filter based on cvss score, starting from the value. Use -1 to include also CVEs with N/A cvss score. * @param {number} [cvssTo] Filter based on cvss score, up to the value. * @param {string} [publicFrom] Filter CVEs based on their published date, starting from the date. * @param {string} [publicTo] Filter CVEs based on their published date, up to the date. * @param {string} [impact] Filter based on impact IDs. * @param {string} [statusId] Filer based on CVE status ID. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {string} [businessRiskId] Filter based on business risk IDs. * @param {Array} [rulePresence] Comma seprated string with bools. If true shows only CVEs with security rule associated, if false shows CVEs without rules. true, false shows all. * @param {boolean} [showAdvisories] If true shows advisories list * @param {string} [advisory] Filter by advisory name, works only with show_advisories=true * @param {Array} [ruleKey] Filters security rules by its error key. * @param {Array} [knownExploit] String of booleans (array of booleans), where true shows CVEs with known exploits, false shows CVEs without known exploits. * @param {string} [firstReportedFrom] Filter for CVEs/Systems where the vulnerability appeared after given date. * @param {string} [firstReportedTo] Filter for CVEs/Systems where the vulnerability appeared before given date. * @param {Array} [advisoryAvailable] String of booleans (array of booleans), where true shows CVE-system pairs with available advisory, false shows CVE-system pairs without available advisory. * @param {string} [remediation] Filer based on available remediation type id. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveListBySystem(inventoryId: string, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, cvssFrom?: number, cvssTo?: number, publicFrom?: string, publicTo?: string, impact?: string, statusId?: string, dataFormat?: string, businessRiskId?: string, rulePresence?: Array, showAdvisories?: boolean, advisory?: string, ruleKey?: Array, knownExploit?: Array, firstReportedFrom?: string, firstReportedTo?: string, advisoryAvailable?: Array, remediation?: string, report?: boolean, tags?: Array, options?: any) { return DefaultApiFp(this.configuration).getCveListBySystem(inventoryId, filter, limit, offset, page, pageSize, sort, cvssFrom, cvssTo, publicFrom, publicTo, impact, statusId, dataFormat, businessRiskId, rulePresence, showAdvisories, advisory, ruleKey, knownExploit, firstReportedFrom, firstReportedTo, advisoryAvailable, remediation, report, tags, options).then((request) => request(this.axios, this.basePath)); } /** * This is an overview of vulnerabilities for specific CVEs provided in the body. Use this endpoint to get a CVSS score, and learn the severity for a list of CVEs provided in the request. * @summary Send a vulnerabilities overview * @param {VulnerabilitiesPostIn} vulnerabilitiesPostIn List of CVEs to provide info about. * @param {string} [filter] Full text filter for CVE and it\'s description text. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getCveList_1(vulnerabilitiesPostIn: VulnerabilitiesPostIn, filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, options?: any) { return DefaultApiFp(this.configuration).getCveList_1(vulnerabilitiesPostIn, filter, limit, offset, page, pageSize, sort, options).then((request) => request(this.axios, this.basePath)); } /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence, severity and other details. * @summary Get aggregations for the dashbar * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getDashbar(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any) { return DefaultApiFp(this.configuration).getDashbar(tags, sapSids, sapSystem, ansible, mssql, options).then((request) => request(this.axios, this.basePath)); } /** * These are aggregations summarizing your account such as number of unique CVEs, list of security rules, CVEs by severity, and more. Use this endpoint to obtain a snapshot of all the CVES and details about their prevalence and severity. * @summary Get a macro level overview of aggregated vulnerabilities * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getDashboard(tags?: Array, sapSids?: Array, sapSystem?: boolean, ansible?: boolean, mssql?: boolean, options?: any) { return DefaultApiFp(this.configuration).getDashboard(tags, sapSids, sapSystem, ansible, mssql, options).then((request) => request(this.axios, this.basePath)); } /** * This returns an overview of vulnerabilities affecting a given account. Use this request when you need to download a high-level, executive report summarizing the security exposure of your infrastructure. These reports are designed for an executive audience and include data such as the number of RHEL systems analyzed, the number of security rules in your infrastructure, percentage of CVEs with a certain severity and more. * @summary Generate an executive report * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getExecutiveReport(options?: any) { return DefaultApiFp(this.configuration).getExecutiveReport(options).then((request) => request(this.axios, this.basePath)); } /** * List RHEL versions and number of CVEs exposing each of these versions. Each RHEL version represents system with base and core group packages installed. * @summary Generate CVE exposure report by RHEL version * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getOSExposure(dataFormat?: string, options?: any) { return DefaultApiFp(this.configuration).getOSExposure(dataFormat, options).then((request) => request(this.axios, this.basePath)); } /** * This returns an Ansible playbook template for a given rule identification number. Use this endpoint to return an Ansible playbook template for a given rule error key. The template is used to remediate issues on your system. * @summary Get an Ansible Playbook template for CVEs with security rules * @param {string} ruleId Insights security rule ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getPlaybookTemplate(ruleId: string, options?: any) { return DefaultApiFp(this.configuration).getPlaybookTemplate(ruleId, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint returns a list of possible values for setting status for a CVE or system-CVE pair. Call this api when you want to know which values are available for setting a status. A list of numbers will be returned. You must call this endpoint before calling the *PATCH/cves/status* endpoint. * @summary Access available status values * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getStatusList(options?: any) { return DefaultApiFp(this.configuration).getStatusList(options).then((request) => request(this.axios, this.basePath)); } /** * This allows you to get information about systems related to an inventory identification number. This includes details such as operating system, inventory tags, last update, opt-out status, and more. * @summary Get system details * @param {string} inventoryId Inventory ID. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getSystemDetails(inventoryId: string, tags?: Array, options?: any) { return DefaultApiFp(this.configuration).getSystemDetails(inventoryId, tags, options).then((request) => request(this.axios, this.basePath)); } /** * This lists systems including those that have opted out of the current query. Use this when you do not want to see a registered system or systems in your reports. * @summary List systems identification numbers along with opt out state * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getSystemsIds(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any) { return DefaultApiFp(this.configuration).getSystemsIds(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(this.axios, this.basePath)); } /** * List systems that are accessible when you are logged into your account. Use this endpoint to view basic system attributes such as display name and system type. * @summary List systems * @param {string} [filter] Full text filter for the display name of system. * @param {number} [limit] Maximum number of records per page. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [offset] Offset of first record of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [page] Page number of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {number} [pageSize] Page size of paginated response. Limit/Offset pagination wins over page/page_size pagination. * @param {string} [sort] Sorting used for response. * @param {string} [dataFormat] Format of the output data, either JSON (default) or CSV. * @param {boolean} [stale] If set to true, shows stale systems. If not set defaults to false. * @param {string} [uuid] Filter based on UUID of inventory. * @param {Array} [tags] Filter based on hosts tags. Tags needs to be in query format, that means <namespace>/<key>=<value> or <namespace>/<key> if value is null. Characters \'/\', \'=\' in tag values needs to be escaped by url encoding. * @param {Array} [sapSids] List of SAP IDs to filter with * @param {boolean} [sapSystem] Boolean value which shows systems managed by SAP. * @param {Array} [excluded] Comma seprated string with bools (array of bools). True boolean value displays systems which are excluded. False value displays systems excluded from vulnerability analysis. Defaults to showing only those systems which are not excluded. * @param {string} [rhelVersion] Filters results by RHEL OS version. Automatically flters out systems which are not RHEL or have uknown OS. * @param {boolean} [report] Needs to be used when endpoint data is used for report generation, checks RBAC permission for report and export feature. * @param {boolean} [ansible] Boolean value which shows systems managed by Ansible Automation Platform. * @param {boolean} [mssql] Boolean value which shows systems managed by MSSQL. * @param {Array} [groupNames] Names of the inventory groups. * @param {Array} [groupIds] IDs of the inventory groups. * @param {Array<'rpmdnf' | 'image' | 'edge'>} [hostType] For filtering out the systems based on their type. Value \"rpmdnf\" for RPMDNF systems, \"image\" for image-mode systems. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getSystemsList(filter?: string, limit?: number, offset?: number, page?: number, pageSize?: number, sort?: string, dataFormat?: string, stale?: boolean, uuid?: string, tags?: Array, sapSids?: Array, sapSystem?: boolean, excluded?: Array, rhelVersion?: string, report?: boolean, ansible?: boolean, mssql?: boolean, groupNames?: Array, groupIds?: Array, hostType?: Array<'rpmdnf' | 'image' | 'edge'>, options?: any) { return DefaultApiFp(this.configuration).getSystemsList(filter, limit, offset, page, pageSize, sort, dataFormat, stale, uuid, tags, sapSids, sapSystem, excluded, rhelVersion, report, ansible, mssql, groupNames, groupIds, hostType, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint will provide you with the application version. Use this endpoint to track application changes. * @summary Get application version * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public getVersion(options?: any) { return DefaultApiFp(this.configuration).getVersion(options).then((request) => request(this.axios, this.basePath)); } /** * This sets a business risk for a specific CVE. Set a value of low, medium, high or critical for a given CVE. These values are obtained by the business risk path *GET/business_risk*. To set a business risk, you must call the GET/business_risk endpoint first, followed by the *PATCH/cves/business_risk* path. * @summary Set business risk for a CVE * @param {CveRiskIn} cveRiskIn Values to be set. At least one of the \"business_risk_id\" or \"business_risk_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public setCveBusinessRisk(cveRiskIn: CveRiskIn, options?: any) { return DefaultApiFp(this.configuration).setCveBusinessRisk(cveRiskIn, options).then((request) => request(this.axios, this.basePath)); } /** * This sets the status for a specific CVE. Set a status value for a given CVE (e.g. in-review, on-hold, scheduled for a patch, or resolved). These values are obtained by sending a *GET/status* request. To set a status, you must call the *GET/business_risk* first, followed by the *PATCH/cves/status* path. * @summary Set status for a CVE * @param {CveStatusIn} cveStatusIn Values to be set. At least one of the \"status_id\" or \"status_text\" parameters is required. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public setCveStatus(cveStatusIn: CveStatusIn, options?: any) { return DefaultApiFp(this.configuration).setCveStatus(cveStatusIn, options).then((request) => request(this.axios, this.basePath)); } /** * Use this endpoint to enable/disable reporting CVEs that do not have advisories (errata) for your customer account. If the feature is disabled, CVEs without advisories will be hidden in outputs of all endpoints. * @summary Set a feature flag for CVEs without errata * @param {CvesWithoutErrataIn} cvesWithoutErrataIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public setCvesWithoutErrata(cvesWithoutErrataIn: CvesWithoutErrataIn, options?: any) { return DefaultApiFp(this.configuration).setCvesWithoutErrata(cvesWithoutErrataIn, options).then((request) => request(this.axios, this.basePath)); } /** * This endpoint sets status for given systems and CVEs. Use this endpoint when you need to set a status value for system-CVE pairs. * @summary Set status for system vulnerabilities * @param {StatusIn} statusIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public setStatus(statusIn: StatusIn, options?: any) { return DefaultApiFp(this.configuration).setStatus(statusIn, options).then((request) => request(this.axios, this.basePath)); } /** * Opt a specific system in or out of vulnerability analysis. Use this when you want to use other Insights services but do not want to see specific systems in vulnerability reports. This allows you to hide select systems. * @summary Opt a system in or out of the vulnerability service * @param {OptOutIn} optOutIn Values to be set. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof DefaultApi */ public setSystemsOptOut(optOutIn: OptOutIn, options?: any) { return DefaultApiFp(this.configuration).setSystemsOptOut(optOutIn, options).then((request) => request(this.axios, this.basePath)); } }