Harness Artifacts API

APIs to get, list artifacts

Operations 16

GET /har/api/v1/registry/{registry_identifier}/artifact/{artifact}/redirect Redirect to Harness Artifact Page #
DELETE /har/api/v1/registry/{registry_ref}/artifact/{artifact} Delete Artifact #
PUT /har/api/v1/registry/{registry_ref}/artifact/{artifact}/labels Update Artifact Labels #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/stats Get Artifact Stats #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/summary Get Artifact Summary #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/tags List OCI Artifact tags #
DELETE /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version} Delete an Artifact Version #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/bulk-download Create a bulk download request #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/deploymentdetails Describe Artifact Deployments #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/details Describe Artifact Details #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/file/{file_name} Get Artifact file #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/files Describe Artifact files #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/summary Get Artifact Version Summary #
GET /har/api/v1/registry/{registry_ref}/artifact/{artifact}/versions List Artifact Versions #
GET /har/api/v1/registry/{registry_ref}/artifact/labels List Artifact Labels #
GET /har/api/v1/registry/{registry_ref}/artifact/stats Get Artifact Stats #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/harness-artifacts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

harness-artifacts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Harness Artifacts API
  version: '1.0'
  description: The Harness Software Delivery Platform uses OpenAPI Specification v3.0.
  contact:
    name: API Support
    email: contact@harness.io
    url: https://harness.io/
  x-logo:
    url: https://mma.prnewswire.com/media/779232/Harnes_logo_horizontal.jpg?p=facebook
    altText: Harness
  termsOfService: https://harness.io/terms-of-use/
servers:
- url: https://app.harness.io
  description: Harness host URL
- url: https://{vanity}
  description: Vanity URL
  variables:
    vanity:
      default: app.harness.io
security:
- x-api-key: []
tags:
- description: APIs to get, list artifacts
  name: Artifacts
paths:
  /har/api/v1/registry/{registry_identifier}/artifact/{artifact}/redirect:
    get:
      operationId: RedirectHarnessArtifact
      parameters:
      - $ref: '#/components/parameters/RegistryIdentifierPathParam'
      - $ref: '#/components/parameters/AccountIdentifierParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/versionParam'
      responses:
        '302':
          $ref: '#/components/responses/Redirect'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Redirect to Harness Artifact Page
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}:
    delete:
      description: Delete Artifact.
      operationId: DeleteArtifact
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Delete Artifact
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/labels:
    put:
      description: Update Artifact Labels.
      operationId: UpdateArtifactLabels
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      requestBody:
        $ref: '#/components/requestBodies/ArtifactLabelRequest'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactLabelResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Update Artifact Labels
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/stats:
    get:
      description: Get Artifact Stats.
      operationId: GetArtifactStats
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/fromDateParam'
      - $ref: '#/components/parameters/toDateParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactStatsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Get Artifact Stats
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/summary:
    get:
      description: Get Artifact Summary.
      operationId: GetArtifactSummary
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSummaryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Get Artifact Summary
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/tags:
    get:
      description: Lists OCI Artifact Tags.
      operationId: GetOciArtifactTags
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/RegistrypageNumber'
      - $ref: '#/components/parameters/RegistrypageSize'
      - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ListOciArtifactTagsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: List OCI Artifact tags
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}:
    delete:
      description: Delete Artifact Version.
      operationId: DeleteArtifactVersion
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/filtersParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Delete an Artifact Version
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/bulk-download:
    get:
      operationId: CreateBulkDownloadRequestV1
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/versionPathParam'
      responses:
        '200':
          $ref: '#/components/responses/CreateBulkDownloadRequestResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Create a bulk download request
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/deploymentdetails:
    get:
      description: Get Artifact Deployments
      operationId: GetArtifactDeployments
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/envType'
      - $ref: '#/components/parameters/RegistrypageNumber'
      - $ref: '#/components/parameters/RegistrypageSize'
      - $ref: '#/components/parameters/RegistrysortOrder'
      - $ref: '#/components/parameters/sortField'
      - $ref: '#/components/parameters/searchTerm'
      - $ref: '#/components/parameters/versionTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDeploymentsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Describe Artifact Deployments
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/details:
    get:
      description: Get Artifact Details
      operationId: GetArtifactDetails
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/childVersionParam'
      - $ref: '#/components/parameters/filtersParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Describe Artifact Details
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/file/{file_name}:
    get:
      description: just validate existence of Artifact file
      operationId: GetArtifactFile
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/fileNamePathParam'
      - $ref: '#/components/parameters/filtersParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactFileResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Get Artifact file
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/files:
    get:
      description: Get Artifact files
      operationId: GetArtifactFiles
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/RegistrypageNumber'
      - $ref: '#/components/parameters/RegistrypageSize'
      - $ref: '#/components/parameters/RegistrysortOrder'
      - $ref: '#/components/parameters/sortField'
      - $ref: '#/components/parameters/searchTerm'
      - $ref: '#/components/parameters/filtersParam'
      responses:
        '200':
          $ref: '#/components/responses/FileDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Describe Artifact files
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/summary:
    get:
      description: Get Artifact Version Summary.
      operationId: GetArtifactVersionSummary
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/versionPathParam'
      - $ref: '#/components/parameters/digestOptParam'
      - $ref: '#/components/parameters/filtersParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactVersionSummaryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Get Artifact Version Summary
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/versions:
    get:
      description: Lists all the Artifact Versions.
      operationId: GetAllArtifactVersions
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/artifactPathParam'
      - $ref: '#/components/parameters/artifactTypeParam'
      - $ref: '#/components/parameters/RegistrypageNumber'
      - $ref: '#/components/parameters/RegistrypageSize'
      - $ref: '#/components/parameters/RegistrysortOrder'
      - $ref: '#/components/parameters/sortField'
      - $ref: '#/components/parameters/searchTerm'
      - $ref: '#/components/parameters/deleteFilterParam'
      responses:
        '200':
          $ref: '#/components/responses/ListArtifactVersionResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: List Artifact Versions
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/labels:
    get:
      description: List Artifact Labels.
      operationId: ListArtifactLabels
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/RegistrypageNumber'
      - $ref: '#/components/parameters/RegistrypageSize'
      - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ListArtifactLabelResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: List Artifact Labels
      tags:
      - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/stats:
    get:
      description: Get Artifact Stats.
      operationId: GetArtifactStatsForRegistry
      parameters:
      - $ref: '#/components/parameters/registryRefPathParam'
      - $ref: '#/components/parameters/fromDateParam'
      - $ref: '#/components/parameters/toDateParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactStatsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/RegistryUnauthenticated'
        '403':
          $ref: '#/components/responses/RegistryUnauthorized'
        '404':
          $ref: '#/components/responses/RegistryNotFound'
        '500':
          $ref: '#/components/responses/RegistryInternalServerError'
      summary: Get Artifact Stats
      tags:
      - Artifacts
components:
  responses:
    RegistryUnauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Access denied due to insufficient permissions
    CreateBulkDownloadRequestResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/CreateBulkDownloadRequestResponseOutput'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: Response containing status of bulk download operation
    RegistryUnauthenticated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Authentication failed or missing credentials
    FileDetailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListFileDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get artifact files
    ListOciArtifactTagsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListOciArtifactTags'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response for list tags info of an OCI artifact
    ArtifactFileResponse:
      content:
        application/json:
          schema:
            properties:
              downloadUrl:
                description: download url of artifact
                type: string
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - downloadUrl
            type: object
      description: response to head artifact file
    ListArtifactLabelResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListArtifactLabel'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response for list artifact labels
    ArtifactDetailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get artifact details
    ListArtifactVersionResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListArtifactVersion'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response for list versions of artifact
    RegistryInternalServerError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: An unexpected server error occurred
    Redirect:
      description: Temporary Redirect
      headers:
        Location:
          description: The URL of the redirected resource
          schema:
            format: uri
            type: string
    ArtifactStatsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactStats'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get artifact stats response
    RegistryBadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: The request was invalid or malformed
    RegistryNotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: The requested resource was not found
    ArtifactVersionSummaryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactVersionSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get docker artifact version summary
    ArtifactSummaryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get artifact summary
    Success:
      content:
        application/json:
          schema:
            properties:
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            type: object
      description: Generic success response
    ArtifactLabelResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get artifact label response
    ArtifactDeploymentsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactDeploymentsDetails'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
            - status
            - data
            type: object
      description: response to get docker artifact deployments details
  parameters:
    artifactPathParam:
      description: "Name of the artifact.\n\nThe value depends on whether the name contains a slash (`/`):\n\n- If the artifact name **contains `/`**, append a trailing `/+` at the end.\n  - Example: `mygroup/myartifact/+`\n- If the artifact name **does not contain `/`**, use the plain name.\n  - Example: `myartifact`\n\nThis is used internally to distinguish between namespaced and flat artifact names.\n"
      examples:
        flat:
          summary: Flat artifact name
          value: myartifact
        namespaced:
          summary: Namespaced artifact
          value: mygroup/myartifact/+
      in: path
      name: artifact
      required: true
      schema:
        type: string
    AccountIdentifierParam:
      description: Account Identifier
      in: query
      name: accountIdentifier
      schema:
        type: string
    searchTerm:
      description: search Term.
      in: query
      name: search_term
      schema:
        type: string
    digestOptParam:
      description: Digest.
      in: query
      name: digest
      schema:
        type: string
    sortField:
      description: sortField
      in: query
      name: sort_field
      schema:
        type: string
    versionPathParam:
      description: Name of Artifact Version.
      in: path
      name: version
      required: true
      schema:
        type: string
    versionParam:
      description: Version
      in: query
      name: version
      schema:
        type: string
    RegistrypageSize:
      description: Number of items per page
      in: query
      name: size
      schema:
        default: 20
        format: int64
        type: integer
    filtersParam:
      description: 'Key-value filters for artifact version. Repeat the parameter once per filter.

        Format per entry: key:value

        Example: ?filters=architecture:amd64&filters=distribution:ubuntu

        '
      explode: true
      in: query
      name: filters
      schema:
        items:
          example: architecture:amd64
          type: string
        type: array
      style: form
    fileNamePathParam:
      description: Name of Artifact File.
      in: path
      name: file_name
      required: true
      schema:
        type: string
    versionTypeParam:
      description: Version Type.
      in: query
      name: version_type
      schema:
        enum:
        - DIGEST
        - TAG
        type: string
    childVersionParam:
      description: Child version incase of Docker artifacts.
      in: query
      name: childVersion
      schema:
        type: string
    fromDateParam:
      description: Date. Format - MM/DD/YYYY
      in: query
      name: from
      schema:
        type: string
    RegistrysortOrder:
      description: sortOrder
      in: query
      name: sort_order
      schema:
        type: string
    toDateParam:
      description: Date. Format - MM/DD/YYYY
      in: query
      name: to
      schema:
        type: string
    envType:
      description: env type
      in: query
      name: env_type
      schema:
        description: Environment Type
        enum:
        - PreProduction
        - Production
        type: string
    deleteFilterParam:
      description: Filter for soft-deleted entities
      in: query
      name: deleted
      schema:
        default: exclude
        enum:
        - exclude
        - include
        - only
        type: string
    RegistryIdentifierPathParam:
      description: Unique registry Identifier in a account.
      in: path
      name: registry_identifier
      required: true
      schema:
        type: string
    artifactTypeParam:
      description: artifact type.
      in: query
      name: artifact_type
      schema:
        enum:
        - model
        - dataset
        - module
        - provider
        type: string
    RegistrypageNumber:
      description: Current page number
      in: query
      name: page
      schema:
        default: 1
        format: int64
        type: integer
    registryRefPathParam:
      description: 'Reference to the scope in which the registry exists.


        Format depends on the scope:


        - **Account-level**: `account_id/registry_name/+`

        - **Organization-level**: `account_id/org_id/registry_name/+`

        - **Project-level**: `account_id/org_id/project_id/registry_name/+`


        The `/+` suffix is used internally to route scoped requests.

        It must be included **exactly as shown** in the URL.

        '
      examples:
        accountLevel:
          description: Only account ID, scoped at account level
          summary: Account-level registry
          value: acc123/registry123/+
        orgLevel:
          description: Account and org ID, scoped at org level
          summary: Organization-level registry
          value: acc123/org456/registry123/+
        projectLevel:
          description: Account, org, and project ID, scoped at project level
          summary: Project-level registry
          value: acc123/org456/proj789/registry123/+
      in: path
      name: registry_ref
      required: true
      schema:
        type: string
  schemas:
    ArtifactLabelRequest:
      properties:
        labels:
          items:
            type: string
          type: array
      required:
      - labels
      type: object
    CreateBulkDownloadRequestResponseOutput:
      properties:
        downloadId:
          description: Unique identifier for the download request
          example: 12345678-1234-1234-1234-123456789012
          type: string
      required:
      - downloadId
      type: object
    GenericArtifactDetailConfig:
      description: Config for generic artifact details
      properties:
        description:
          type: string
      type: object
    PackageType:
      description: refers to package
      enum:
      - DOCKER
      - MAVEN
      - PYTHON
      - GENERIC
      - HELM
      - NUGET
      - NPM
      - RPM
      - CARGO
      - COMPOSER
      - GO
      - HUGGINGFACE
      - CONDA
      - DART
      - SWIFT
      - PUPPET
      - RUBY
      - CRAN
      - RAW
      - HELM_HTTP
      - DEBIAN
      - CONAN
      - TERRAFORM
      type: string
    ArtifactDetail:
      description: Artifact Detail
      discriminator:
        mapping:
          CARGO: '#/components/schemas/CargoArtifactDetailConfig'
          COMPOSER: '#/components/schemas/ComposerArtifactDetailConfig'
          CONAN: '#/components/schemas/ConanArtifactDetailConfig'
          CONDA: '#/components/schemas/CondaArtifactDetailConfig'
          CRAN: '#/components/schemas/CRANArtifactDetailConfig'
          DART: '#/components/schemas/DartArtifactDetailConfig'
          DEBIAN: '#/components/schemas/DebianArtifactDetailConfig'
          DOCKER: '#/components/schemas/DockerArtifactDetailConfig'
          GENERIC: '#/components/schemas/GenericArtifactDetailConfig'
          GO: '#/components/schemas/GoArtifactDetailConfig'
          HELM: '#/components/schemas/HelmArtifactDetailConfig'
          HELM_HTTP: '#/components/schemas/HelmHttpArtifactDetailConfig'
          HUGGINGFACE: '#/components/schemas/HuggingFaceArtifactDetailConfig'
          MAVEN: '#/components/schemas/MavenArtifactDetailConfig'
          NPM: '#/components/schemas/NpmArtifactDetailConfig'
          NUGET: '#/components/schemas/NugetArtifactDetailConfig'
          PUPPET: '#/components/schemas/PuppetArtifactDetailConfig'
          PYTHON: '#/components/schemas/PythonArtifactDetailConfig'
          RPM: '#/components/schemas/RpmArtifactDetailConfig'
          RUBY: '#/components/schemas/RubyArtifactDetailConfig'
          SWIFT: '#/components/schemas/SwiftArtifactDetailConfig'
          TERRAFORM: '#/components/schemas/TerraformArtifactDetailConfig'
        propertyName: packageType
      oneOf:
      - $ref: '#/components/schemas/DockerArtifactDetailConfig'
      - $ref: '#/components/schemas/HelmArtifactDetailConfig'
      - $ref: '#/components/schemas/GenericArtifactDetailConfig'
      - $ref: '#/components/schemas/MavenArtifactDetailConfig'
      - $ref: '#/components/schemas/PythonArtifactDetailConfig'
      - $ref: '#/components/schemas/NpmArtifactDetailConfig'
      - $ref: '#/components/schemas/RpmArtifactDetailConfig'
      - $ref: '#/components/schemas/NugetArtifactDetailConfig'
      - $ref: '#/components/schemas/CargoArtifactDetailConfig'
      - $ref: '#/components/schemas/GoArtifactDetailConfig'
      - $ref: '#/components/schemas/HuggingFaceArtifactDetailConfig'
      - $ref: '#/components/schemas/CondaArtifactDetailConfig'
      - $ref: '#/components/schemas/DartArtifactDetailConfig'
      - $ref: '#/components/schemas/ComposerArtifactDetailConfig'
      - $ref: '#/components/schemas/SwiftArtifactDetailConfig'
      - $ref: '

# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/harness/refs/heads/main/openapi/harness-artifacts-api-openapi.yml