---
title: "UpdatePackageLicenseOverride"
method: PATCH
path: "/v1/namespaces/{object.tenant_meta.namespace}/package-license-overrides"
tags: ["PackageLicenseOverrideService"]
---

# UpdatePackageLicenseOverride

`PATCH /v1/namespaces/{object.tenant_meta.namespace}/package-license-overrides`

Updates a specified package license override.

## Path parameters

- `object.tenant_meta.namespace` string, required

## Request body

- PackageLicenseOverrideServiceUpdatePackageLicenseOverrideBody — Request to update a package license override.
  - `object` object — PackageLicenseOverride represents user edits and selections for licenses, copyrights, and notices at the package version level. Edits made at this level apply across all projects in the namespace that use the same package version. The package version UUID is stored in spec.package_version_uuid.
    - `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 whether this override should be visible in child namespaces. When querying from a descendant namespace, handlers should include parent overrides only when this flag is set to true (same inheritance pattern as policies).
    - `spec` V1PackageLicenseOverrideSpec
      - `copyright_overrides` object — Map of copyright key to CopyrightOverride. Contains copyrights that have been edited or newly added by the user. Original copyrights from PackageLicense are NOT stored here - they are fetched from PackageLicense when needed. Key format: - For edited copyrights from PackageLicense: use the key from PackageLicense.spec.copyrights map. (this is the file path where the copyright was found). - For new copyrights added by user: use generated UUID prefixed with "new-".
      - `deselected_copyrights` object — Map of copyright key to selection state. Only deselected copyrights are stored here (value = false). If a copyright key is not present in this map, it defaults to selected (true).
      - `deselected_licenses` object — Map of license identifier to selection state. Only deselected licenses are stored here (value = false). If a license identifier is not present in this map, it defaults to selected (true).
      - `deselected_notices` object — Map of notice identifier to selection state. Only deselected notices are stored here (value = false). If a notice identifier is not present in this map, it defaults to selected (true).
      - `license_overrides` object — Map of license identifier to LicenseOverride. Contains licenses that have been edited or newly added by the user. Original licenses from PackageLicense are NOT stored here - they are fetched from PackageLicense when needed. Key format: hash calculated from normalized license text (same calculation as PackageLicenseInfo.hash). - For edited licenses from PackageLicense: use hash from PackageLicenseInfo.hash. (this hash maps to the key in PackageLicense.spec.license_text map). - For new licenses added by user: calculate hash from the license_text provided in LicenseOverride. The hash is calculated using the same method: SHA256(MakeLicenseKey(normalized_license_text)). The hash is calculated from the normalized license text and is available for all license types (code_licenses, package_manager_licenses, declared_code_licenses).
      - `notice_overrides` object
      - `package_version_uuid` string, required — The UUID of the package version this override is for.
    - `tenant_meta` object — Tenant metadata.
    - `uuid` string — The UUID of the package license override.
  - `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.

- V1PackageLicenseOverride — PackageLicenseOverride represents user edits and selections for licenses, copyrights, and notices at the package version level. Edits made at this level apply across all projects in the namespace that use the same package version. The package version UUID is stored in spec.package_version_uuid.
  - `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 whether this override should be visible in child namespaces. When querying from a descendant namespace, handlers should include parent overrides only when this flag is set to true (same inheritance pattern as policies).
  - `spec` V1PackageLicenseOverrideSpec, required
    - `copyright_overrides` object — Map of copyright key to CopyrightOverride. Contains copyrights that have been edited or newly added by the user. Original copyrights from PackageLicense are NOT stored here - they are fetched from PackageLicense when needed. Key format: - For edited copyrights from PackageLicense: use the key from PackageLicense.spec.copyrights map. (this is the file path where the copyright was found). - For new copyrights added by user: use generated UUID prefixed with "new-".
    - `deselected_copyrights` object — Map of copyright key to selection state. Only deselected copyrights are stored here (value = false). If a copyright key is not present in this map, it defaults to selected (true).
    - `deselected_licenses` object — Map of license identifier to selection state. Only deselected licenses are stored here (value = false). If a license identifier is not present in this map, it defaults to selected (true).
    - `deselected_notices` object — Map of notice identifier to selection state. Only deselected notices are stored here (value = false). If a notice identifier is not present in this map, it defaults to selected (true).
    - `license_overrides` object — Map of license identifier to LicenseOverride. Contains licenses that have been edited or newly added by the user. Original licenses from PackageLicense are NOT stored here - they are fetched from PackageLicense when needed. Key format: hash calculated from normalized license text (same calculation as PackageLicenseInfo.hash). - For edited licenses from PackageLicense: use hash from PackageLicenseInfo.hash. (this hash maps to the key in PackageLicense.spec.license_text map). - For new licenses added by user: calculate hash from the license_text provided in LicenseOverride. The hash is calculated using the same method: SHA256(MakeLicenseKey(normalized_license_text)). The hash is calculated from the normalized license text and is available for all license types (code_licenses, package_manager_licenses, declared_code_licenses).
    - `notice_overrides` object
    - `package_version_uuid` string, required — The UUID of the package version this override is for.
  - `tenant_meta` V1TenantMeta, required — 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 package license override.

## 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)
