# Registry V3 - Files

V3 files endpoints

## Search Files

 - [GET /har/api/v3/files](https://apidocs.harness.io/registry-v3-files/listfilesv3.md): List files.

## Download file using file id

 - [GET /har/api/v3/files/{id}/content](https://apidocs.harness.io/registry-v3-files/getfilev3.md): Download file using id

## Get File Metadata

 - [GET /har/api/v3/files/{id}/metadata](https://apidocs.harness.io/registry-v3-files/getfilemetadatav3.md): Retrieves all metadata for a file.

## Upsert File Metadata

 - [POST /har/api/v3/files/{id}/metadata](https://apidocs.harness.io/registry-v3-files/upsertfilemetadatav3.md): Creates or overwrites metadata for a file.

## Replace File Metadata

 - [PUT /har/api/v3/files/{id}/metadata](https://apidocs.harness.io/registry-v3-files/savefilemetadatav3.md): Replaces all metadata for a file.

## Get inline preview URL for a file

 - [GET /har/api/v3/files/{id}/preview](https://apidocs.harness.io/registry-v3-files/getfilepreviewv3.md): Returns a URL for rendering a file inline in the browser. For cloud (S3/GCS) deployments the URL is a presigned URL with inline Content-Disposition and a forced Content-Type baked in, expiring after 20 minutes. For filesystem deployments the URL routes back through the protocol API with preview=true and relies on the caller's session. The endpoint enforces the preview allowlist and a configured maximum size before returning a URL.

## List Registry Files

 - [GET /har/api/v3/internal/registries/{registry_name}/files](https://apidocs.harness.io/registry-v3-files/listregistryfilesv3.md): List files belonging to a registry.

