---
title: "Get information necessary to solve a retention challenge"
method: GET
path: "/challenge"
tags: ["DID"]
---

# Get information necessary to solve a retention challenge

`GET /challenge`

Get information needed to calculate a retention solution for DID PUT operations

## Response `200`

The current hash and difficulty to calculate a retention solution against, along with an estimated retention guarantee represented by the expiry property

- object
  - `hash` string, required — The current hash which is to be used as input for computing a retention solution
  - `hash_source` string — The source of the hash as defined by the Hash Source Registry.
  - `difficulty` integer — The current difficulty of the challenge representing the number of bits of leading zeros the resulting hash must contain
  - `expiry` integer, required — An approximate expiry date-time value, if a valid Retention Solution is submitted against this challenge, represented as a Unix Timestamp in seconds. The precise expiry date-time value is returned as a part of a PUT operation

## Other responses

- `501` — Retention challenges are not supported
- `503` — Retention sets have been temporarily disabled

## Changes

- **2026-07-17** `fff9410e2681` — 1 info
  - endpoint added
- **2023-11-20** `4b01176296d1` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/decentralized-identity/apis/did-dht-gateway-api/changes/challenge/get.md)

---

[API](https://skmtc.dev/decentralized-identity/apis/did-dht-gateway-api.md) · [All operations](https://skmtc.dev/decentralized-identity/apis/did-dht-gateway-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/decentralized-identity/did-dht-gateway-api/revisions/fff9410e2681/schema)
