---
title: "Accept a proposed Distributed Validator Cluster"
method: PUT
path: "/v1/definition/{configHash}"
tags: ["Cluster Definition"]
---

# Accept a proposed Distributed Validator Cluster

`PUT /v1/definition/{configHash}`

This endpoint is used by the operators present in the `operators` array of a cluster definition. The operator must have accepted the latest version of [Obol's terms and conditions](https://obol.tech/terms.pdf). These operators must submit a public key (in ENR form) to serve as their identity during the DKG, along with EIP712 signatures indicating their acceptance of the terms of this DKG.

## Path parameters

- `configHash` string, required

## Headers

- `authorization` string, required

## Request body

- OperatorDto
  - `address` string, required — Ethereum address of Operator.
  - `enr` string, required
  - `fork_version` 'mainnet' | '0x00000000' | 'goerli' | '0x00001020' | 'gnosis' | '0x00000064' | 'sepolia' | '0x90000069' | 'hoodi' | '0x10000910', required
  - `version` string, required
  - `enr_signature` string, required
  - `config_signature` string, required

## Response `200`

The cluster object

- ClusterDefinitionResponse
  - `name` string, required
  - `uuid` string, required
  - `creator` Creator, required
  - `version` string, required
  - `num_validators` number, required
  - `threshold` number, required
  - `dkg_algorithm` string, required
  - `fork_version` string, required
  - `config_hash` string, required — config_hash is a 32 bytes SSZ hash of cluster config.
  - `timestamp` string, required
  - `validators` Validator[], required
  - `deposit_amounts` string[], required — Partial depoists.
  - `definition_hash` string, required — definition_hash is a 32 bytes SSZ hash of cluster config.
  - `fee_recipient_address` string, required — Ethereum address to receive transaction fees.
  - `withdrawal_address` string, required — Ethereum address to receive staked ether.
  - `operators` Operator[], required
  - `consensus_protocol` string, required
  - `target_gas_limit` number, required
  - `compounding` boolean, required

## Other responses

- `400` — Invalid payload data
- `401` — Missing t&c signature Authorization header is missing or incorrect
- `404` — Data not found
- `409` — Duplicate entry
- `500` — An unknown error occurred

---

[API](https://skmtc.net/obol/apis/obol-api.md) · [All operations](https://skmtc.net/obol/apis/obol-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/obol/obol-api/revisions/707a88e0b355/schema)
