---
title: "UpdateSystemConfig"
method: PATCH
path: "/v1/namespaces/{object.tenant_meta.namespace}/system-config"
tags: ["SystemConfigService"]
---

# UpdateSystemConfig

`PATCH /v1/namespaces/{object.tenant_meta.namespace}/system-config`

Updates the system configuration.

## Path parameters

- `object.tenant_meta.namespace` string, required

## Request body

- SystemConfigServiceUpdateSystemConfigBody — Request to update a system configuration.
  - `object` object — SystemConfig represents the system configuration for a tenant.
    - `meta` V1Meta — Common fields for all Endor Labs resources.
      - `annotations` object — Annotations can be used to attach metadata to a resource message. Annotation values can be small or large, structured or unstructured, and may include characters not permitted by labels. The keys may contain alphanumerics, underscores (_), dots (.) and dashes (-). The values of an annotation must be 16384 bytes or smaller.
      - `create_time` string, date-time — Time the resource was created. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
      - `created_by` string — Name and authentication source of the user who created the object, for example, ewok@endor.ai@google@api-key.
      - `description` string — Resource description. Must be less than 1024 bytes.
      - `index_data` V1IndexData — IndexData is used to index the resource for search. It's an internal object.
        - `data` string[]
        - `search_score` number, float — search_score is the score of the resource for search. Internal use only.
        - `tenant` string
        - `will_be_deleted_at` string, date-time — Time that the resource will be deleted.
      - `kind` string — Resource kind, for example, HelloResponse. Auto-generated using the protobuf message proto.MessageName().Name().
      - `name` string, required — Resource name. Must be 63 characters or less.
      - `parent_kind` string — Parent object resource kind, for example, Project.
      - `parent_uuid` string — Parent object UUID.
      - `references` object — Map of objects referenced in a query API.
      - `tags` string[] — List of tags attached to the resource. Tags can be used to select objects and to find collections of objects that satisfy certain conditions. A tag must be 255 characters or less.
      - `update_time` string, date-time — Time the resource was last updated. Note: Updated on all create/patch/delete operations. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
      - `updated_by` string — Name and authentication source of the last user who updated the object, for example, vulnerabilityingestor@endor.ai@x509.
      - `upsert_time` string, date-time — Time the resource was last upserted. Note: create_time is only set the first time the resource is created. upsert_time is set every time the resource is upseted. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
      - `version` string — Message version.
    - `propagate` boolean — Indicates that the object should be visible in child namespaces.
    - `spec` V1SystemConfigSpec
      - `ai` SystemConfigAiConfig — AI related system configuration.
        - `code_segment_processing` boolean — Set to true to enable code segment embeddings and LLM processing. Code segment embeddings and LLM processing are used to improve C/C++ and AI-model dependency detection accuracy. Endor Labs uses a private Azure OpenAI Service deployment that is isolated from the public internet and cannot be used for training. The code segments themselves are never stored anywhere, only the embeddings are saved in the database.
      - `analytics` SystemConfigAnalyticsConfig
        - `cvss_version` 'CVSS_VERSION_UNSPECIFIED' | 'CVSS_VERSION_V2' | 'CVSS_VERSION_V3' | 'CVSS_VERSION_V4' — The CVSS version.
        - `enable_finding_prioritization` boolean — Set to true to enable finding prioritization.
        - `enable_version_upgrade_prioritization` boolean — Set to true to enable version upgrade prioritization.
      - `artifactory` SystemConfigArtifactoryConfig — ArtifactoryConfig contains all artifactory related system configuration.
        - `enable_streaming` boolean — Enable streaming mode.
      - `cloud_deployment` SystemConfigCloudDeploymentConfig — CloudDeploymentConfig contains all cloud deployment related configurations. These parameteres can only be modified by the Endor team.
        - `nat_network_requests` boolean — nat_network_requests will force all requests to go through the NAT network.
      - `endor_ignore` SystemConfigEndorIgnoreConfig — EndorIgnoreConfig contains all ignore file related system configuration.
        - `custom_file_names` string[] — List of additional supported file names. By default, the following file names are supported: - .endorignore.yaml It is recommended to configure CODEOWNERS for all ignore files, including the default file names, to enforce an approval process for developer ignore requests.
        - `enable` boolean — Set to true to enable ignore file support. The ignore file must be either a raw list of vulnerability ids (one per line), or follow the ignore file YAML syntax. Use the endorctl ignore command to automatically generate and format the ignore file.
      - `finding_prioritization` V1PrioritizationConfig — Configuration of the factors that control the prioritization of artifacts.
        - `factors` object
      - `logging` SystemConfigLoggingConfig
        - `enable_remote_logging` boolean — Set to true to enable remote logging.
        - `remote_ep` string — Remote logging endpoint.
        - `remote_log_level` 'LOG_LEVEL_UNSPECIFIED' | 'LOG_LEVEL_EMERGENCY' | 'LOG_LEVEL_ALERT' | 'LOG_LEVEL_CRITICAL' | 'LOG_LEVEL_ERROR' | 'LOG_LEVEL_WARNING' | 'LOG_LEVEL_NOTICE' | 'LOG_LEVEL_INFO' | 'LOG_LEVEL_DEBUG' — - LOG_LEVEL_EMERGENCY: System is unusable, for example, a panic condition. - LOG_LEVEL_ALERT: Action must be taken immediately, for example, a corrupted system database. - LOG_LEVEL_CRITICAL: Critical conditions such as hard device errors. - LOG_LEVEL_ERROR: Error conditions. - LOG_LEVEL_WARNING: Warning conditions. - LOG_LEVEL_NOTICE: Normal but significant conditions that may require special handling. - LOG_LEVEL_INFO: Informational messages that confirmation that the program is working as expected. - LOG_LEVEL_DEBUG: Messages that contain information normally of use only for debugging.
      - `package_firewall` SystemConfigPackageFirewallConfig — PackageFirewallConfig contains package firewall configuration for exceptions, malware enforcement, restricted license enforcement, and minimum package age enforcement. Cached per namespace in endorfactory and enforced on versioned requests.
        - `cvss_severity_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
        - `cvss_severity_threshold` 'CVSS_SEVERITY_LEVEL_UNSPECIFIED' | 'CVSS_SEVERITY_LEVEL_NONE' | 'CVSS_SEVERITY_LEVEL_LOW' | 'CVSS_SEVERITY_LEVEL_MEDIUM' | 'CVSS_SEVERITY_LEVEL_HIGH' | 'CVSS_SEVERITY_LEVEL_CRITICAL' — Common severity level enum used across different CVSS versions.
        - `exceptions` PackageFirewallConfigException[] — Exception rules. If any exception matches the request, all checks are skipped.
          - `ecosystem` 'ECOSYSTEM_UNSPECIFIED' | 'ECOSYSTEM_GO' | 'ECOSYSTEM_MAVEN' | 'ECOSYSTEM_PYPI' | 'ECOSYSTEM_CARGO' | 'ECOSYSTEM_NPM' | 'ECOSYSTEM_GEM' | 'ECOSYSTEM_NUGET' | 'ECOSYSTEM_PACKAGIST' | 'ECOSYSTEM_SBOM' | 'ECOSYSTEM_RPM' | 'ECOSYSTEM_DEBIAN' | 'ECOSYSTEM_GITHUB_ACTION' | 'ECOSYSTEM_COCOAPOD' | 'ECOSYSTEM_APK' | 'ECOSYSTEM_CONTAINER' | 'ECOSYSTEM_HUGGING_FACE' | 'ECOSYSTEM_C' | 'ECOSYSTEM_GIT' | 'ECOSYSTEM_AI_MODEL' | 'ECOSYSTEM_SWIFT' | 'ECOSYSTEM_CONAN' | 'ECOSYSTEM_VSCODE', required — - ECOSYSTEM_GO: GoLang. - ECOSYSTEM_MAVEN: Maven. - ECOSYSTEM_PYPI: Python. - ECOSYSTEM_CARGO: Rust. - ECOSYSTEM_NPM: Javascript. - ECOSYSTEM_GEM: Ruby. - ECOSYSTEM_NUGET: Dotnet. - ECOSYSTEM_PACKAGIST: PHP. - ECOSYSTEM_SBOM: SBOMs. - ECOSYSTEM_RPM: RPM. - ECOSYSTEM_DEBIAN: Debian. - ECOSYSTEM_GITHUB_ACTION: GitHub Actions. - ECOSYSTEM_COCOAPOD: Cocoapods. - ECOSYSTEM_APK: APK (alpine et.al). - ECOSYSTEM_CONTAINER: Containers. - ECOSYSTEM_HUGGING_FACE: Hugging Face. - ECOSYSTEM_C: C/C++. - ECOSYSTEM_GIT: ecosystem GIT for GIT repository dependencies. This can be used for package name of the resolved dependencies when a given repository has dependencies to other GIT repositories. Currently we use this to represent vulnerabilities for the given GIT repository. ex: git submodules, C/C++ dependencies. - ECOSYSTEM_AI_MODEL: AI models. - ECOSYSTEM_SWIFT: Ecosystem Swift consists of native Swift packages, which are defined using the Package.swift manifest file and managed by the Swift Package Manager. There is a separate ecosystem for Cocoapod packages called ECOSYSTEM_COCOAPOD, which is an alternative package manager for Swift packages. - ECOSYSTEM_CONAN: Ecosystem Conan for C/C++ packages managed by the Conan 2.x package manager. - ECOSYSTEM_VSCODE: VS Code editor extensions, distributed via the Microsoft Visual Studio Marketplace.
          - `exact_versions` string[] — Optional list of exact version strings to except.
          - `package_name` string, required — Name of the excepted package (e.g. "lodash" for npm, "requests" for pypi). Does not include version or ecosystem prefix.
          - `version_ranges` PackageFirewallConfigVersionRange[] — Optional version ranges. A package version matches if it falls within any of these ranges. If both version_ranges and exact_versions are empty, all versions of the package are excepted.
            - `end` string — Exclusive upper bound (e.g. "2.0.0"). Omit to match to the end.
            - `start` string — Inclusive lower bound (e.g. "1.0.0"). Omit to match from the beginning.
        - `malware_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
        - `min_age_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
        - `min_age_hours` integer — Minimum age in hours for a package to be allowed (0 = disabled).
        - `notification_rules` PackageFirewallConfigFirewallNotificationRule[] — Notification rules evaluated when the firewall blocks or warns on a request. A rule matches when the event's reason is in reasons (or reasons is empty) and its action is in on_actions (or on_actions is empty). Each matching rule sends a Slack message to every referenced notification target. Only Slack targets are supported for now; other target types are skipped.
          - `name` string — Optional name for the notification rule.
          - `notification_target_uuids` string[] — UUIDs of the NotificationTarget(s) to send to.
          - `on_actions` V1PackageFirewallAction[] — Firewall actions that trigger this rule. Empty matches all actions.
          - `reasons` V1PackageFirewallReason[] — Firewall reasons that trigger this rule. Empty matches all reasons.
        - `restricted_license_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
        - `restricted_licenses` string[] — List of restricted SPDX license identifiers. Packages with these licenses are subject to restricted_license_action.
      - `policy` SystemConfigPolicyConfig — PolicyConfig contains all policy related system configuration.
        - `auto_enable` boolean — Automatically enable new system policies on release upgrade.
        - `auto_update` boolean — Automatically update policies if the corresponding policy template has changed between releases.
      - `sast` SystemConfigSastConfig — SastConfig contains all SAST related system configuration.
        - `enable_code_snippet_storage` boolean — Set to true to enable code snippet storage.
        - `enable_semgrep` boolean — Opt-in for the usage of semgrep.
      - `urgent_notification` SystemConfigUrgentNotificationConfig — Urgent Notification configuration for critical alerts via email or slack.
        - `email_addresses` string[] — List of email addresses to send urgent notifications to.
        - `enable_urgent_notification` boolean — Set to true to enable urgent notification.
        - `slack_webhook_url` string — Option slack channel webhook URL to send the notification to.
        - `urgent_notification_threshold` 'URGENT_NOTIFICATION_THRESHOLD_UNSPECIFIED' | 'URGENT_NOTIFICATION_THRESHOLD_DEFINITELY_AFFECTED' | 'URGENT_NOTIFICATION_THRESHOLD_POTENTIALLY_AFFECTED' — - URGENT_NOTIFICATION_THRESHOLD_UNSPECIFIED: Unspecified default value. - URGENT_NOTIFICATION_THRESHOLD_DEFINITELY_AFFECTED: Notification setting for specific package versions that are definitely affected. - URGENT_NOTIFICATION_THRESHOLD_POTENTIALLY_AFFECTED: Notification setting for specific package versions that are potentially affected. Example: npm:abc@1.0.2 is affected. If set, this will notify for npm:abc all versions.
    - `tenant_meta` object — SystemConfig is associated with a tenant and namespace.
    - `uuid` string — The UUID of the system configuration.
  - `request` V1UpdateRequest — Message used for all update requests.
    - `force` boolean — Force will force the update of the resource if any checks fail.
    - `update_mask` string — Fields to update. Defaults to all fields.

## Response `200`

A successful response.

- V1SystemConfig — SystemConfig represents the system configuration for a tenant.
  - `meta` V1Meta, required — Common fields for all Endor Labs resources.
    - `annotations` object — Annotations can be used to attach metadata to a resource message. Annotation values can be small or large, structured or unstructured, and may include characters not permitted by labels. The keys may contain alphanumerics, underscores (_), dots (.) and dashes (-). The values of an annotation must be 16384 bytes or smaller.
    - `create_time` string, date-time — Time the resource was created. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
    - `created_by` string — Name and authentication source of the user who created the object, for example, ewok@endor.ai@google@api-key.
    - `description` string — Resource description. Must be less than 1024 bytes.
    - `index_data` V1IndexData — IndexData is used to index the resource for search. It's an internal object.
      - `data` string[]
      - `search_score` number, float — search_score is the score of the resource for search. Internal use only.
      - `tenant` string
      - `will_be_deleted_at` string, date-time — Time that the resource will be deleted.
    - `kind` string — Resource kind, for example, HelloResponse. Auto-generated using the protobuf message proto.MessageName().Name().
    - `name` string, required — Resource name. Must be 63 characters or less.
    - `parent_kind` string — Parent object resource kind, for example, Project.
    - `parent_uuid` string — Parent object UUID.
    - `references` object — Map of objects referenced in a query API.
    - `tags` string[] — List of tags attached to the resource. Tags can be used to select objects and to find collections of objects that satisfy certain conditions. A tag must be 255 characters or less.
    - `update_time` string, date-time — Time the resource was last updated. Note: Updated on all create/patch/delete operations. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
    - `updated_by` string — Name and authentication source of the last user who updated the object, for example, vulnerabilityingestor@endor.ai@x509.
    - `upsert_time` string, date-time — Time the resource was last upserted. Note: create_time is only set the first time the resource is created. upsert_time is set every time the resource is upseted. Format: 2017-01-15T01:30:15.01Z RFC 3339: https://www.ietf.org/rfc/rfc3339.txt.
    - `version` string — Message version.
  - `propagate` boolean — Indicates that the object should be visible in child namespaces.
  - `spec` V1SystemConfigSpec, required
    - `ai` SystemConfigAiConfig — AI related system configuration.
      - `code_segment_processing` boolean — Set to true to enable code segment embeddings and LLM processing. Code segment embeddings and LLM processing are used to improve C/C++ and AI-model dependency detection accuracy. Endor Labs uses a private Azure OpenAI Service deployment that is isolated from the public internet and cannot be used for training. The code segments themselves are never stored anywhere, only the embeddings are saved in the database.
    - `analytics` SystemConfigAnalyticsConfig
      - `cvss_version` 'CVSS_VERSION_UNSPECIFIED' | 'CVSS_VERSION_V2' | 'CVSS_VERSION_V3' | 'CVSS_VERSION_V4' — The CVSS version.
      - `enable_finding_prioritization` boolean — Set to true to enable finding prioritization.
      - `enable_version_upgrade_prioritization` boolean — Set to true to enable version upgrade prioritization.
    - `artifactory` SystemConfigArtifactoryConfig — ArtifactoryConfig contains all artifactory related system configuration.
      - `enable_streaming` boolean — Enable streaming mode.
    - `cloud_deployment` SystemConfigCloudDeploymentConfig — CloudDeploymentConfig contains all cloud deployment related configurations. These parameteres can only be modified by the Endor team.
      - `nat_network_requests` boolean — nat_network_requests will force all requests to go through the NAT network.
    - `endor_ignore` SystemConfigEndorIgnoreConfig — EndorIgnoreConfig contains all ignore file related system configuration.
      - `custom_file_names` string[] — List of additional supported file names. By default, the following file names are supported: - .endorignore.yaml It is recommended to configure CODEOWNERS for all ignore files, including the default file names, to enforce an approval process for developer ignore requests.
      - `enable` boolean — Set to true to enable ignore file support. The ignore file must be either a raw list of vulnerability ids (one per line), or follow the ignore file YAML syntax. Use the endorctl ignore command to automatically generate and format the ignore file.
    - `finding_prioritization` V1PrioritizationConfig — Configuration of the factors that control the prioritization of artifacts.
      - `factors` object
    - `logging` SystemConfigLoggingConfig
      - `enable_remote_logging` boolean — Set to true to enable remote logging.
      - `remote_ep` string — Remote logging endpoint.
      - `remote_log_level` 'LOG_LEVEL_UNSPECIFIED' | 'LOG_LEVEL_EMERGENCY' | 'LOG_LEVEL_ALERT' | 'LOG_LEVEL_CRITICAL' | 'LOG_LEVEL_ERROR' | 'LOG_LEVEL_WARNING' | 'LOG_LEVEL_NOTICE' | 'LOG_LEVEL_INFO' | 'LOG_LEVEL_DEBUG' — - LOG_LEVEL_EMERGENCY: System is unusable, for example, a panic condition. - LOG_LEVEL_ALERT: Action must be taken immediately, for example, a corrupted system database. - LOG_LEVEL_CRITICAL: Critical conditions such as hard device errors. - LOG_LEVEL_ERROR: Error conditions. - LOG_LEVEL_WARNING: Warning conditions. - LOG_LEVEL_NOTICE: Normal but significant conditions that may require special handling. - LOG_LEVEL_INFO: Informational messages that confirmation that the program is working as expected. - LOG_LEVEL_DEBUG: Messages that contain information normally of use only for debugging.
    - `package_firewall` SystemConfigPackageFirewallConfig — PackageFirewallConfig contains package firewall configuration for exceptions, malware enforcement, restricted license enforcement, and minimum package age enforcement. Cached per namespace in endorfactory and enforced on versioned requests.
      - `cvss_severity_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
      - `cvss_severity_threshold` 'CVSS_SEVERITY_LEVEL_UNSPECIFIED' | 'CVSS_SEVERITY_LEVEL_NONE' | 'CVSS_SEVERITY_LEVEL_LOW' | 'CVSS_SEVERITY_LEVEL_MEDIUM' | 'CVSS_SEVERITY_LEVEL_HIGH' | 'CVSS_SEVERITY_LEVEL_CRITICAL' — Common severity level enum used across different CVSS versions.
      - `exceptions` PackageFirewallConfigException[] — Exception rules. If any exception matches the request, all checks are skipped.
        - `ecosystem` 'ECOSYSTEM_UNSPECIFIED' | 'ECOSYSTEM_GO' | 'ECOSYSTEM_MAVEN' | 'ECOSYSTEM_PYPI' | 'ECOSYSTEM_CARGO' | 'ECOSYSTEM_NPM' | 'ECOSYSTEM_GEM' | 'ECOSYSTEM_NUGET' | 'ECOSYSTEM_PACKAGIST' | 'ECOSYSTEM_SBOM' | 'ECOSYSTEM_RPM' | 'ECOSYSTEM_DEBIAN' | 'ECOSYSTEM_GITHUB_ACTION' | 'ECOSYSTEM_COCOAPOD' | 'ECOSYSTEM_APK' | 'ECOSYSTEM_CONTAINER' | 'ECOSYSTEM_HUGGING_FACE' | 'ECOSYSTEM_C' | 'ECOSYSTEM_GIT' | 'ECOSYSTEM_AI_MODEL' | 'ECOSYSTEM_SWIFT' | 'ECOSYSTEM_CONAN' | 'ECOSYSTEM_VSCODE', required — - ECOSYSTEM_GO: GoLang. - ECOSYSTEM_MAVEN: Maven. - ECOSYSTEM_PYPI: Python. - ECOSYSTEM_CARGO: Rust. - ECOSYSTEM_NPM: Javascript. - ECOSYSTEM_GEM: Ruby. - ECOSYSTEM_NUGET: Dotnet. - ECOSYSTEM_PACKAGIST: PHP. - ECOSYSTEM_SBOM: SBOMs. - ECOSYSTEM_RPM: RPM. - ECOSYSTEM_DEBIAN: Debian. - ECOSYSTEM_GITHUB_ACTION: GitHub Actions. - ECOSYSTEM_COCOAPOD: Cocoapods. - ECOSYSTEM_APK: APK (alpine et.al). - ECOSYSTEM_CONTAINER: Containers. - ECOSYSTEM_HUGGING_FACE: Hugging Face. - ECOSYSTEM_C: C/C++. - ECOSYSTEM_GIT: ecosystem GIT for GIT repository dependencies. This can be used for package name of the resolved dependencies when a given repository has dependencies to other GIT repositories. Currently we use this to represent vulnerabilities for the given GIT repository. ex: git submodules, C/C++ dependencies. - ECOSYSTEM_AI_MODEL: AI models. - ECOSYSTEM_SWIFT: Ecosystem Swift consists of native Swift packages, which are defined using the Package.swift manifest file and managed by the Swift Package Manager. There is a separate ecosystem for Cocoapod packages called ECOSYSTEM_COCOAPOD, which is an alternative package manager for Swift packages. - ECOSYSTEM_CONAN: Ecosystem Conan for C/C++ packages managed by the Conan 2.x package manager. - ECOSYSTEM_VSCODE: VS Code editor extensions, distributed via the Microsoft Visual Studio Marketplace.
        - `exact_versions` string[] — Optional list of exact version strings to except.
        - `package_name` string, required — Name of the excepted package (e.g. "lodash" for npm, "requests" for pypi). Does not include version or ecosystem prefix.
        - `version_ranges` PackageFirewallConfigVersionRange[] — Optional version ranges. A package version matches if it falls within any of these ranges. If both version_ranges and exact_versions are empty, all versions of the package are excepted.
          - `end` string — Exclusive upper bound (e.g. "2.0.0"). Omit to match to the end.
          - `start` string — Inclusive lower bound (e.g. "1.0.0"). Omit to match from the beginning.
      - `malware_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
      - `min_age_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
      - `min_age_hours` integer — Minimum age in hours for a package to be allowed (0 = disabled).
      - `notification_rules` PackageFirewallConfigFirewallNotificationRule[] — Notification rules evaluated when the firewall blocks or warns on a request. A rule matches when the event's reason is in reasons (or reasons is empty) and its action is in on_actions (or on_actions is empty). Each matching rule sends a Slack message to every referenced notification target. Only Slack targets are supported for now; other target types are skipped.
        - `name` string — Optional name for the notification rule.
        - `notification_target_uuids` string[] — UUIDs of the NotificationTarget(s) to send to.
        - `on_actions` V1PackageFirewallAction[] — Firewall actions that trigger this rule. Empty matches all actions.
        - `reasons` V1PackageFirewallReason[] — Firewall reasons that trigger this rule. Empty matches all reasons.
      - `restricted_license_action` 'PACKAGE_FIREWALL_ACTION_UNSPECIFIED' | 'PACKAGE_FIREWALL_ACTION_BLOCK' | 'PACKAGE_FIREWALL_ACTION_WARN' | 'PACKAGE_FIREWALL_ACTION_CURATED' — PackageFirewallAction defines how the package firewall responds when a check is triggered. Used in both configuration (what to do) and audit logs (what was done). - PACKAGE_FIREWALL_ACTION_BLOCK: Block the request and return HTTP 403. - PACKAGE_FIREWALL_ACTION_WARN: Log a warning audit event and allow the request to proceed. - PACKAGE_FIREWALL_ACTION_CURATED: One or more versions were removed from the package metadata response as part of package curation. The package manager resolves to the best remaining safe version without seeing the curated-out versions.
      - `restricted_licenses` string[] — List of restricted SPDX license identifiers. Packages with these licenses are subject to restricted_license_action.
    - `policy` SystemConfigPolicyConfig — PolicyConfig contains all policy related system configuration.
      - `auto_enable` boolean — Automatically enable new system policies on release upgrade.
      - `auto_update` boolean — Automatically update policies if the corresponding policy template has changed between releases.
    - `sast` SystemConfigSastConfig — SastConfig contains all SAST related system configuration.
      - `enable_code_snippet_storage` boolean — Set to true to enable code snippet storage.
      - `enable_semgrep` boolean — Opt-in for the usage of semgrep.
    - `urgent_notification` SystemConfigUrgentNotificationConfig — Urgent Notification configuration for critical alerts via email or slack.
      - `email_addresses` string[] — List of email addresses to send urgent notifications to.
      - `enable_urgent_notification` boolean — Set to true to enable urgent notification.
      - `slack_webhook_url` string — Option slack channel webhook URL to send the notification to.
      - `urgent_notification_threshold` 'URGENT_NOTIFICATION_THRESHOLD_UNSPECIFIED' | 'URGENT_NOTIFICATION_THRESHOLD_DEFINITELY_AFFECTED' | 'URGENT_NOTIFICATION_THRESHOLD_POTENTIALLY_AFFECTED' — - URGENT_NOTIFICATION_THRESHOLD_UNSPECIFIED: Unspecified default value. - URGENT_NOTIFICATION_THRESHOLD_DEFINITELY_AFFECTED: Notification setting for specific package versions that are definitely affected. - URGENT_NOTIFICATION_THRESHOLD_POTENTIALLY_AFFECTED: Notification setting for specific package versions that are potentially affected. Example: npm:abc@1.0.2 is affected. If set, this will notify for npm:abc all versions.
  - `tenant_meta` V1TenantMeta — Tenant related data for the tenant containing the resource.
    - `namespace` string, required — Namespaces are a way to organize organizational units into virtual groupings of resources. Namespaces must be a fully qualified name, for example, the child namespace of namespace "endor.prod" called "app" is called "endor.prod.app".
  - `uuid` string — The UUID of the system configuration.

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/endorlabs/apis/endor-labs-rest-api-reference.md) · [All operations](https://skmtc.net/endorlabs/apis/endor-labs-rest-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/endorlabs/endor-labs-rest-api-reference/revisions/2fe1f84213b3/schema)
