---
title: "Begin a share refresh"
method: POST
path: "/v1/keys/{key_id}/tss/refresh/begin"
tags: ["Key Custody"]
---

# Begin a share refresh

`POST /v1/keys/{key_id}/tss/refresh/begin`

## Request

- Base URL: `https://api.1claw.co`
- URL: `https://api.1claw.co/v1/keys/{key_id}/tss/refresh/begin`
- Auth: HTTP bearer

Proactive refresh of a 2-of-3 key: the same three participants mint new
shares of the same group key (same address) with a dealerless refresh DKG,
and old shares stop combining with new ones. Needs `X-Passkey-Token` from a
tx-assert with `action: tss_keygen` and `tx_digest` = hex SHA-256 of
`refresh:{key_id}`. 409 while an earlier refresh waits to be committed or
aborted.

## Path parameters

- `key_id` string, uuid, required

## Headers

- `X-Passkey-Token` string, required

## Response `201`

Session opened; the vault's refresh round-1 package

- object
  - `session_id` string, uuid
  - `generation` integer
  - `server_round1` string
  - `expires_at` string, date-time

## Other responses

- `400`: Invalid request
- `404`: Resource not found
- `409`: Resource already exists or conflict

---

[API](https://skmtc.dev/1claw/apis/1claw-api.md) · [All operations](https://skmtc.dev/1claw/apis/1claw-api/llms.txt) · [OpenAPI document](https://skmtc.dev/1claw/apis/1claw-api/revisions/5fa0918f3b41?raw)
