Harness · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Harness Registry V2 API

16 actions 16 updates phrasing extends openapi/harness-registry-v2-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Harness's API. It is a proposal applied on top of the contract, not a document Harness publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 16

$.info
$.paths['/har/api/v2/artifacts'].get
$.paths['/har/api/v2/copy'].post
$.paths['/har/api/v2/files/{file_name}'].get
$.paths['/har/api/v2/files/bulk-download'].post
$.paths['/har/api/v2/files/bulk-download/{download_id}'].get
$.paths['/har/api/v2/files/search'].get
$.paths['/har/api/v2/metadata'].get
$.paths['/har/api/v2/metadata'].put
$.paths['/har/api/v2/metadata'].post
$.paths['/har/api/v2/metadata'].delete
$.paths['/har/api/v2/metadata/keys'].get
$.paths['/har/api/v2/metadata/values'].get
$.paths['/har/api/v2/oci/tags'].post
$.paths['/har/api/v2/packages'].get
$.paths['/har/api/v2/registries'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Harness Registry V2 API
  version: 1.0.0
extends: openapi/harness-registry-v2-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 15
- target: $.paths['/har/api/v2/artifacts'].get
  update:
    x-apievangelist-phrasing:
      intent: List artifact versions in the registry
      effect: read
      questions:
      - Which versions of a package are stored in my artifact registry?
      - Can I filter artifact versions by package type or include deleted ones?
      instructions:
      - text: List all versions of package {package} in registry {registry_identifier}.
        slots:
          package: query.package
          registry_identifier: query.registry_identifier
      - text: Show artifact versions in account {account_identifier} matching {search_term}.
        slots:
          account_identifier: query.account_identifier
          search_term: query.search_term
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/copy'].post
  update:
    x-apievangelist-phrasing:
      intent: Copy an artifact between registries
      effect: write
      questions:
      - How do I promote an artifact from one registry to another?
      - Can I copy a single version of an artifact into a registry in a different project?
      instructions:
      - text: Copy artifact {src_artifact} version {src_version} from registry {src_registry_identifier} to {target_registry_identifier}.
        slots:
          src_artifact: query.src_artifact
          src_version: query.src_version
          src_registry_identifier: query.src_registry_identifier
          target_registry_identifier: query.target_registry_identifier
      - text: Promote everything in registry {src_registry_identifier} into registry {target_registry_identifier} in project {target_project_identifier}.
        slots:
          src_registry_identifier: query.src_registry_identifier
          target_registry_identifier: query.target_registry_identifier
          target_project_identifier: query.target_project_identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/files/{file_name}'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a registry file by its path
      effect: read
      questions:
      - How do I download a single file from my artifact registry by its path?
      - Can I fetch a named file out of a registry without pulling the whole package?
      instructions:
      - text: Download file {file_name} at path {path} from registry {registry_identifier}.
        slots:
          file_name: path.file_name
          path: query.path
          registry_identifier: query.registry_identifier
      - text: Fetch {file_name} from registry {registry_identifier} using path {path}.
        slots:
          file_name: path.file_name
          registry_identifier: query.registry_identifier
          path: query.path
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/files/bulk-download'].post
  update:
    x-apievangelist-phrasing:
      intent: Start a bulk download of registry packages
      effect: write
      questions:
      - Can I download several packages or versions from a registry in one archive?
      - What's the way to request a bulk download with a custom output file name?
      instructions:
      - text: Create a bulk download request for registry {registryId}.
        slots:
          registryId: requestBody.registryId
      - text: Start a bulk download of packages {packages} from registry {registryId} into file {outputFileName}.
        slots:
          packages: requestBody.packages
          registryId: requestBody.registryId
          outputFileName: requestBody.outputFileName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/files/bulk-download/{download_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check the status of a bulk download request
      effect: read
      questions:
      - Is my registry bulk download finished yet?
      - How can I track the progress of a bulk download I already requested?
      instructions:
      - text: Check the status of bulk download {download_id}.
        slots:
          download_id: path.download_id
      - text: Tell me whether bulk download request {download_id} is ready.
        slots:
          download_id: path.download_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/files/search'].get
  update:
    x-apievangelist-phrasing:
      intent: Search files in a registry
      effect: read
      questions:
      - How do I find files in a registry by a search query?
      - Can I page through file search results inside one registry?
      instructions:
      - text: Search registry {registry_identifier} for files matching {query}.
        slots:
          registry_identifier: query.registry_identifier
          query: query.query
      - text: Find files named like {query} in registry {registry_identifier}, {size} per page.
        slots:
          query: query.query
          registry_identifier: query.registry_identifier
          size: query.size
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata'].get
  update:
    x-apievangelist-phrasing:
      intent: Get metadata for a package, version or registry
      effect: read
      questions:
      - What metadata key-value pairs are attached to a package version in my registry?
      - Can I read registry-level metadata as well as package metadata?
      instructions:
      - text: Get the metadata for package {package} version {version} in registry {registry_identifier}.
        slots:
          package: query.package
          version: query.version
          registry_identifier: query.registry_identifier
      - text: Show registry-level metadata for {registry_identifier}.
        slots:
          registry_identifier: query.registry_identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace all metadata on a registry entity
      effect: write
      questions:
      - How do I overwrite a package's metadata so only the new key-value pairs remain?
      - Can I wipe existing registry metadata and save a fresh set in one call?
      instructions:
      - text: Replace all metadata on package {package} in registry {registryIdentifier} with {metadata}.
        slots:
          package: requestBody.package
          registryIdentifier: requestBody.registryIdentifier
          metadata: requestBody.metadata
      - text: Save {metadata} as the only metadata for version {version} of {package} in {registryIdentifier}, removing the old keys.
        slots:
          metadata: requestBody.metadata
          version: requestBody.version
          package: requestBody.package
          registryIdentifier: requestBody.registryIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata'].post
  update:
    x-apievangelist-phrasing:
      intent: Add or overwrite metadata keys on a registry entity
      effect: write
      questions:
      - Can I add a metadata tag to a package without losing its other metadata?
      - What's the way to upsert just a few metadata keys on an artifact version?
      instructions:
      - text: Add metadata {metadata} to package {package} in registry {registryIdentifier}, keeping existing keys.
        slots:
          metadata: requestBody.metadata
          package: requestBody.package
          registryIdentifier: requestBody.registryIdentifier
      - text: Upsert metadata {metadata} on version {version} of {package} in {registryIdentifier}.
        slots:
          metadata: requestBody.metadata
          version: requestBody.version
          package: requestBody.package
          registryIdentifier: requestBody.registryIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete metadata keys from a registry entity
      effect: destructive
      questions:
      - How do I remove specific metadata keys from a package in my registry?
      - Can I delete metadata from an artifact version rather than the whole package?
      instructions:
      - text: Delete metadata {metadata} from package {package} in registry {registryIdentifier}.
        slots:
          metadata: requestBody.metadata
          package: requestBody.package
          registryIdentifier: requestBody.registryIdentifier
      - text: Strip the metadata keys {metadata} off version {version} in {registryIdentifier}.
        slots:
          metadata: requestBody.metadata
          version: requestBody.version
          registryIdentifier: requestBody.registryIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata/keys'].get
  update:
    x-apievangelist-phrasing:
      intent: List available metadata keys
      effect: read
      questions:
      - Which metadata keys are in use across my artifact registries?
      - Can I search the list of metadata key names?
      instructions:
      - text: List all metadata keys for account {account_identifier}.
        slots:
          account_identifier: query.account_identifier
      - text: Find metadata key names containing {search_term} in project {project_identifier}.
        slots:
          search_term: query.search_term
          project_identifier: query.project_identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/metadata/values'].get
  update:
    x-apievangelist-phrasing:
      intent: List possible values for a metadata key
      effect: read
      questions:
      - What values have been used for a given metadata key?
      - Can I search the values recorded under one metadata key?
      instructions:
      - text: List the values of metadata key {key}.
        slots:
          key: query.key
      - text: Show values of key {key} that match {search_term}.
        slots:
          key: query.key
          search_term: query.search_term
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/oci/tags'].post
  update:
    x-apievangelist-phrasing:
      intent: Add tags to an OCI artifact
      effect: write
      questions:
      - How do I add extra tags to a container image version in my registry?
      - Can I tag an existing OCI artifact version with several new tags at once?
      instructions:
      - text: Add tags {tags} to {package} version {version} in registry {registry_identifier}.
        slots:
          tags: requestBody.tags
          package: requestBody.package
          version: requestBody.version
          registry_identifier: query.registry_identifier
      - text: Tag OCI image {package} at {version} as {tags}.
        slots:
          package: requestBody.package
          version: requestBody.version
          tags: requestBody.tags
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/packages'].get
  update:
    x-apievangelist-phrasing:
      intent: List images and packages in the registry
      effect: read
      questions:
      - What images and packages are stored in my artifact registries?
      - Can I list packages of one package type, including deleted ones?
      instructions:
      - text: List packages in registry {registry_identifier}.
        slots:
          registry_identifier: query.registry_identifier
      - text: Show images of package type {package_type} matching {search_term}.
        slots:
          package_type: query.package_type
          search_term: query.search_term
      method: generated
      generated: '2026-09-26'
- target: $.paths['/har/api/v2/registries'].get
  update:
    x-apievangelist-phrasing:
      intent: List artifact registries
      effect: read
      questions:
      - Which artifact registries exist in my account or project?
      - Can I include registries from parent or child spaces when listing, or filter by registry type?
      instructions:
      - text: List the registries in project {project_identifier}.
        slots:
          project_identifier: query.project_identifier
      - text: Show registries of type {type} holding {package_type} packages.
        slots:
          type: query.type
          package_type: query.package_type
      method: generated
      generated: '2026-09-26'