For the complete documentation index, see llms.txt. This page is also available as Markdown.

Registry V3 Files

V3 files endpoints

Search Files

get

List files.

Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

org_identifierstringOptional

Unique identifier for the organization within the account.

Example: default or engineering_org

project_identifierstringOptional

Unique identifier for the project within the organization.

Example: my_project or frontend_services

registry_idstringOptional

Unique id for the registry.

Example: 12345678-1234-1234-1234-123456789012
package_idstringOptional

Unique identifier for the package.

version_idstringOptional

Unique identifier for the version.

recipe_revision_idstringOptional

Internal UUID of the Conan recipe revision (RREV) row. Resolves file paths via node_entity_mapping. Requires version_id. Mutually exclusive with package_revision_id.

package_revision_idstringOptional

Internal UUID of the Conan package revision (PREV) row. Resolves file paths via node_entity_mapping. Requires version_id. Mutually exclusive with recipe_revision_id.

pageinteger · int64Optional

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

Default: 0
sizeinteger · int64 · min: 1 · max: 100Optional

The number of items to return per page.

Controls the page size for paginated results.

Example: size=50 returns up to 50 items per page

Default: 20
sortstringOptional

The 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_termstringOptional

Search term for filtering results.

Example: search_term=prod might match keys like "production", "prod-env", etc.

Responses
200

response for list files

application/json

Pagination metadata.

  • page selects which page of results to return (0 = first page).
  • size controls how many items are returned per page.
  • hasMore is true if more results exist after this page.
hasMorebooleanRequired

True if more results exist after this page.

Example: true
pageinteger · int64Required

The current page (0-indexed)

Example: 0
sizeinteger · int64Required

Number of items per page

Example: 20
get/v3/files
GET /api/v3/files?account_identifier=text HTTP/1.1
Accept: */*
{
  "hasMore": true,
  "page": 0,
  "size": 20,
  "items": [
    {
      "createdAt": 1736360000123,
      "createdBy": {
        "display_name": "text",
        "email": "text",
        "type": "text",
        "uid": "text"
      },
      "downloadCmd": "text",
      "downloadUrl": "text",
      "id": "text",
      "md5": "text",
      "name": "text",
      "path": "text",
      "sha1": "text",
      "sha256": "text",
      "sha512": "text",
      "size": "text"
    }
  ],
  "meta": {
    "activeCount": 95,
    "deletedCount": 5
  }
}

Get file details

get

Retrieves details for a single file by its id, including its downloadUrl (GET /files/{id}/content) and Content-Type. Following downloadUrl applies Content-Type and either inline preview or an attachment download.

Path parameters
idstringRequired
Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

Responses
200

Response containing details for a single file, including its Content-Type.

application/json
get/v3/files/{id}
GET /api/v3/files/{id}?account_identifier=text HTTP/1.1
Accept: */*
{
  "data": {
    "createdAt": 1736360000123,
    "createdBy": {
      "display_name": "text",
      "email": "text",
      "type": "text",
      "uid": "text"
    },
    "downloadCmd": "text",
    "downloadUrl": "text",
    "id": "text",
    "md5": "text",
    "name": "text",
    "path": "text",
    "sha1": "text",
    "sha256": "text",
    "sha512": "text",
    "size": "text",
    "contentType": "text"
  }
}

Download file using file id

get

Download a file using its id.

Path parameters
idstringRequired
Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

Responses
200

Response containing file content

application/octet-stream
string · binaryOptional
get/v3/files/{id}/content
GET /api/v3/files/{id}/content?account_identifier=text HTTP/1.1
Accept: */*
binary

Get File Metadata

get

Retrieves all metadata for a file.

Path parameters
idstringRequired
Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

Responses
200

Response containing all metadata entries for the requested entity

application/json
get/v3/files/{id}/metadata
GET /api/v3/files/{id}/metadata?account_identifier=text HTTP/1.1
Accept: */*
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "key": "environment",
      "type": "MANUAL",
      "value": "production"
    }
  ]
}

Upsert File Metadata

post

Creates or overwrites metadata for a file.

Path parameters
idstringRequired
Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

Body

Request payload containing metadata key-value pairs to add or update.

Responses
200

Response containing all metadata entries for the requested entity

application/json
post/v3/files/{id}/metadata
POST /api/v3/files/{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"
    }
  ]
}

Replace File Metadata

put

Replaces all metadata for a file.

Path parameters
idstringRequired
Query parameters
account_identifierstringRequired

Unique identifier for the Harness account.

Body

Request payload containing metadata key-value pairs to add or update.

Responses
200

Response containing all metadata entries for the requested entity

application/json
put/v3/files/{id}/metadata
PUT /api/v3/files/{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"
    }
  ]
}

Last updated

Was this helpful?