Registry V3 Versions
V3 versions endpoints
Lists versions of packages
Unique identifier for the Harness account.
Unique identifier for the organization within the account.
Example: default or engineering_org
Unique identifier for the project within the organization.
Example: my_project or frontend_services
Unique id for the registry. Note: This parameter should have one id if package query param is provided
["12345678-1234-1234-1234-123456789012","aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"]Unique id for the package.
["12345678-1234-1234-1234-123456789012","aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"]Registry Package Type
excludePossible values: Filter by metadata using key:value format
The page number for pagination (0-indexed).
Used to navigate through large result sets. Combined with size parameter
to control which subset of results to return.
Example: page=0 returns the first page, page=1 returns the second page
0The number of items to return per page.
Controls the page size for paginated results.
Example: size=50 returns up to 50 items per page
20The sort for the results.
Accepted pattern: sort_field:sort_order where sort_field is the field name
and sort_order is either asc or desc.
Examples: name:asc, modifiedAt:desc
Search term for filtering results.
Example: search_term=prod might match keys like "production", "prod-env", etc.
When true, include the meta object (e.g. active/deleted counts)
in the response.
falseFilter by uploaded by user ID.
Example: uploaded_by=123
123response for list versions
Pagination metadata.
pageselects which page of results to return (0 = first page).sizecontrols how many items are returned per page.hasMoreis true if more results exist after this page.
True if more results exist after this page.
trueThe current page (0-indexed)
0Number of items per page
20Error response.
GET /api/v3/versions?account_identifier=text HTTP/1.1
Accept: */*
{
"hasMore": true,
"page": 0,
"size": 20,
"items": [
{
"artifactKey": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"createdAt": 1736360000123,
"createdBy": {
"display_name": "text",
"email": "text",
"type": "text",
"uid": "text"
},
"deletedAt": 1736360000456,
"deletedBy": {
"display_name": "text",
"email": "text",
"type": "text",
"uid": "text"
},
"id": "123e4567-e89b-12d3-a456-426614174000",
"isQuarantined": true,
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"modifiedAt": 1736360000123,
"modifiedBy": {
"display_name": "text",
"email": "text",
"type": "text",
"uid": "text"
},
"name": "text",
"orgIdentifier": "text",
"packageId": "123e4567-e89b-12d3-a456-426614174000",
"packageKind": "model",
"packageName": "text",
"packageType": "DOCKER",
"projectIdentifier": "text",
"pullCommand": "text",
"pushedBy": {
"display_name": "text",
"email": "text",
"type": "text",
"uid": "text"
},
"quarantineReason": "text",
"registryId": "123e4567-e89b-12d3-a456-426614174000",
"registryName": "text",
"registryType": "VIRTUAL"
}
],
"meta": {
"activeCount": 95,
"deletedCount": 5
}
}List finalized Conan recipe revisions for a version.
Unique identifier for the Harness account.
The page number for pagination (0-indexed).
Used to navigate through large result sets. Combined with size parameter
to control which subset of results to return.
Example: page=0 returns the first page, page=1 returns the second page
0The number of items to return per page.
Controls the page size for paginated results.
Example: size=50 returns up to 50 items per page
20Response to list Conan recipe revisions for a version
Pagination metadata.
pageselects which page of results to return (0 = first page).sizecontrols how many items are returned per page.hasMoreis true if more results exist after this page.
True if more results exist after this page.
trueThe current page (0-indexed)
0Number of items per page
20Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions?account_identifier=text HTTP/1.1
Accept: */*
{
"hasMore": true,
"page": 0,
"size": 20,
"items": [
{
"downloadCount": 1,
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastDownloadedAt": 1,
"lastPushedAt": 1,
"packageCount": 1,
"recipeRevision": "text",
"size": "text"
}
]
}Get a Conan recipe revision (RREV) detail.
The stable UUID of the recipe revision (RREV) row.
Unique identifier for the Harness account.
Response to get a Conan recipe revision detail
Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions/{recipe_revision_id}/details?account_identifier=text HTTP/1.1
Accept: */*
{
"data": {
"downloadCount": 1,
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastDownloadedAt": 1,
"lastPushedAt": 1,
"packageCount": 1,
"recipeRevision": "text",
"size": "text"
}
}List the packages (PKGIDs) under a Conan recipe revision.
The stable UUID of the recipe revision (RREV) row.
Unique identifier for the Harness account.
The page number for pagination (0-indexed).
Used to navigate through large result sets. Combined with size parameter
to control which subset of results to return.
Example: page=0 returns the first page, page=1 returns the second page
0The number of items to return per page.
Controls the page size for paginated results.
Example: size=50 returns up to 50 items per page
20Response to list Conan packages of a recipe revision
Pagination metadata.
pageselects which page of results to return (0 = first page).sizecontrols how many items are returned per page.hasMoreis true if more results exist after this page.
True if more results exist after this page.
trueThe current page (0-indexed)
0Number of items per page
20Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions/{recipe_revision_id}/packages?account_identifier=text HTTP/1.1
Accept: */*
{
"hasMore": true,
"page": 0,
"size": 20,
"items": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"latestPackageRevision": "text",
"options": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"packageId": "text",
"settings": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"size": "text"
}
]
}Get a Conan package (PKGID) detail with its package revisions.
The stable UUID of the recipe revision (RREV) row.
The stable UUID of the package (PKGID) row.
Unique identifier for the Harness account.
Response to get a Conan package detail
Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions/{recipe_revision_id}/packages/{package_id}/details?account_identifier=text HTTP/1.1
Accept: */*
{
"data": {
"downloadCount": 1,
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastDownloadedAt": 1,
"options": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"packageId": "text",
"packageRevisionCount": 1,
"recipeRevision": "text",
"settings": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"size": "text"
}
}List the package revisions (PREVs) under a Conan package.
The stable UUID of the recipe revision (RREV) row.
The stable UUID of the package (PKGID) row.
Unique identifier for the Harness account.
The page number for pagination (0-indexed).
Used to navigate through large result sets. Combined with size parameter
to control which subset of results to return.
Example: page=0 returns the first page, page=1 returns the second page
0The number of items to return per page.
Controls the page size for paginated results.
Example: size=50 returns up to 50 items per page
20Response to list Conan package revisions of a package
Pagination metadata.
pageselects which page of results to return (0 = first page).sizecontrols how many items are returned per page.hasMoreis true if more results exist after this page.
True if more results exist after this page.
trueThe current page (0-indexed)
0Number of items per page
20Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions/{recipe_revision_id}/packages/{package_id}/package-revisions?account_identifier=text HTTP/1.1
Accept: */*
{
"hasMore": true,
"page": 0,
"size": 20,
"items": [
{
"createdAt": 1736360000123,
"downloadCount": 1,
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastDownloadedAt": 1,
"packageRevision": "text",
"size": "text"
}
]
}Get a Conan package revision (PREV) detail.
The stable UUID of the recipe revision (RREV) row.
The stable UUID of the package (PKGID) row.
The stable UUID of the package revision (PREV) row.
Unique identifier for the Harness account.
Response to get a Conan package revision detail
Error response.
GET /api/v3/versions/{id}/conan/recipe-revisions/{recipe_revision_id}/packages/{package_id}/package-revisions/{package_revision_id}/details?account_identifier=text HTTP/1.1
Accept: */*
{
"data": {
"createdAt": 1736360000123,
"downloadCount": 1,
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastDownloadedAt": 1,
"packageRevision": "text",
"size": "text"
}
}List Harness CD deployments for a specific version. Returns the environments and services that are actively running this version, together with aggregate prod/non-prod counts in meta. For OCI-based package types (DOCKER, HELM) the artifact is identified by image:tag — supply package_tag or an empty response is returned. For all other package types the artifact is identified by package_name/version_name.
Unique identifier for the Harness account.
Filter by environment type. Allowed values: PRODUCTION, PRE_PRODUCTION.
The page number for pagination (0-indexed).
Used to navigate through large result sets. Combined with size parameter
to control which subset of results to return.
Example: page=0 returns the first page, page=1 returns the second page
0The number of items to return per page.
Controls the page size for paginated results.
Example: size=50 returns up to 50 items per page
20The sort for the results.
Accepted pattern: sort_field:sort_order where sort_field is the field name
and sort_order is either asc or desc.
Examples: name:asc, modifiedAt:desc
Search term for filtering results.
Example: search_term=prod might match keys like "production", "prod-env", etc.
Tag to use when identifying the artifact in CD. Currently used for Docker images: provide the tag (e.g. latest) so the artifact is resolved as image:tag. For OCI-based package types (DOCKER, HELM), if this parameter is omitted no deployment data is returned.
Paginated list of Harness CD deployments for a version
Pagination metadata.
pageselects which page of results to return (0 = first page).sizecontrols how many items are returned per page.hasMoreis true if more results exist after this page.
True if more results exist after this page.
trueThe current page (0-indexed)
0Number of items per page
20Error response.
GET /api/v3/versions/{id}/deployments?account_identifier=text HTTP/1.1
Accept: */*
{
"hasMore": true,
"page": 0,
"size": 20,
"items": [
{
"envIdentifier": "text",
"envName": "text",
"envType": "PRODUCTION",
"infraIdentifier": "text",
"infraName": "text",
"instanceCount": 1,
"lastDeployedAt": 1,
"lastDeployedBy": {
"display_name": "text",
"email": "text",
"type": "text",
"uid": "text"
},
"orgIdentifier": "text",
"pipelineExecutionId": "text",
"pipelineExecutionName": "text",
"projectIdentifier": "text",
"serviceIdentifier": "text",
"serviceName": "text"
}
],
"meta": {
"nonProdEnvCount": 1,
"prodEnvCount": 1
}
}Retrieves all metadata for a version.
Unique identifier for the Harness account.
Response containing all metadata entries for the requested entity
Error response.
GET /api/v3/versions/{id}/metadata?account_identifier=text HTTP/1.1
Accept: */*
{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"key": "environment",
"type": "MANUAL",
"value": "production"
}
]
}Creates or overwrites metadata for a version.
Unique identifier for the Harness account.
Request payload containing metadata key-value pairs to add or update.
Response containing all metadata entries for the requested entity
Error response.
POST /api/v3/versions/{id}/metadata?account_identifier=text HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 90
{
"metadata": [
{
"key": "environment",
"value": "production"
},
{
"key": "team",
"value": "backend"
}
]
}{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"key": "environment",
"type": "MANUAL",
"value": "production"
}
]
}Replaces all metadata for a version.
Unique identifier for the Harness account.
Request payload containing metadata key-value pairs to add or update.
Response containing all metadata entries for the requested entity
Error response.
PUT /api/v3/versions/{id}/metadata?account_identifier=text HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 90
{
"metadata": [
{
"key": "environment",
"value": "production"
},
{
"key": "team",
"value": "backend"
}
]
}{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"key": "environment",
"type": "MANUAL",
"value": "production"
}
]
}Add tags to version of package. Currently supported for only OCI package.
Unique identifier for the Harness account.
Tags added successfully
No content
Error response.
POST /api/v3/versions/{id}/tags?account_identifier=text HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 17
{
"tags": [
"text"
]
}No content
Trigger metadata rebuild for all versions in a registry
Unique identifier for the Harness account.
Request to rebuild metadata for all versions in a registry
UUID of the registry to rebuild metadata for
Rebuild metadata request accepted for processing
No content
Error response.
POST /api/v3/versions/rebuild-metadata?account_identifier=text HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 21
{
"registryId": "text"
}No content
Get statistics (deploymentMetadata, downloadCount, fileCount, scanStatus, scanID, size, artifactKey) for a list of versions by their UUIDs.
Unique identifier for the Harness account.
Unique identifier for the organization within the account.
Example: default or engineering_org
Unique identifier for the project within the organization.
Example: my_project or frontend_services
Request input for fetching version statistics
List of version UUIDs to fetch statistics for
Response containing statistics for the requested versions
Response body containing version statistics
Error response.
POST /api/v3/versions/stats?account_identifier=text HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 55
{
"versionIds": [
"123e4567-e89b-12d3-a456-426614174000"
]
}{
"items": [
{
"deploymentMetadata": {
"nonProdEnvCount": 1,
"prodEnvCount": 1
},
"digestCount": 1,
"downloadCount": 1,
"fileCount": 1,
"firewallMode": "ENABLED",
"id": "123e4567-e89b-12d3-a456-426614174000",
"lastScannedAt": "text",
"scanID": "123e4567-e89b-12d3-a456-426614174000",
"scanStatus": "ALLOWED",
"size": "text"
}
]
}Last updated
Was this helpful?