---
title: "Get artifact content by SHA-256 hash"
method: GET
path: "/ids/contentHashes/{contentHash}"
tags: ["Artifacts"]
---

# Get artifact content by SHA-256 hash

`GET /ids/contentHashes/{contentHash}`

## Request

- The document declares no server URL.
- Auth: none declared

Gets the content for an artifact version in the registry using the 
SHA-256 hash of the content.  This content hash may be shared by multiple artifact
versions in the case where the artifact versions have identical content.

This operation may fail for one of the following reasons:

* No content with this `contentHash` exists (HTTP error `404`)
* A server error occurred (HTTP error `500`)

## Response `200`

The content of one version of one artifact.

- string, binary

## Other responses

- `401`: Common response for all operations that can return a `401` error indicating authentication is required.
- `403`: Common response for all operations that can return a `403` error indicating the user is authenticated but not authorized.
- `404`: Common response for all operations that can return a `404` error.
- `500`: Common response for all operations that can fail with an unexpected server error.

## Changes

- **2026-10-31** `ff9684af2aad`: 20 info
  - added the optional property `ruleViolation/causes/items/code` to the response with the `401` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `403` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `404` status
  - added the optional property `ruleViolation/causes/items/code` to the response with the `500` status
  - …16 more
- **2026-10-29** `f17f5df4e79c`: 4 info
  - added the optional property `ruleViolation` to the response with the `401` status
  - added the optional property `ruleViolation` to the response with the `403` status
  - added the optional property `ruleViolation` to the response with the `404` status
  - added the optional property `ruleViolation` to the response with the `500` status
- **2025-12-16** `440db8997574`: 2 info
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
- **2024-09-06** `948bffd5d083`: 4 warning, 8 info
  - removed the optional property `error_code` from the response with the `404` status
  - removed the optional property `error_code` from the response with the `500` status
  - removed the optional property `message` from the response with the `404` status
  - removed the optional property `message` from the response with the `500` status
  - …8 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/changes/ids/contentHashes/:contentHash/get.md)

---

[API](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3.md) - [All operations](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/apicurio/apis/apicurio-registry-api-v3/revisions/ff9684af2aad?raw)
