Propose a new Distributed Validator Cluster
Changed onThis endpoint allows the caller to propose a distributed key generation ceremony.The caller must have accepted the latest version of Obol's terms and conditions. The caller must specify the configuration of a Distributed Validator Cluster; such as the participating operators and the validator exit details. Operators invited to participate in this cluster must submit a public key (in ENR form) to serve as their node's identity, along with EIP712 signatures indicating their acceptance of the terms of this cluster. The definition version must be v1.10.0 or later.
Request
- Base URLhttps://api.obol.tech
- AuthHTTP bearer
Headers
EIP712 cluster definition hash as bearer token
Request body
Example request
{
"name": "My Obol Cluster",
"operators": [
{
"address": "0x000000000000000000000000000000000000dead",
"enr": "enr://5fb90badb37c5821b6d95526a41a9504680b4e7c8b763a1b1d49d4955c848621",
"fork_version": "0x00001020",
"version": "v1.8.0",
"enr_signature": "0x1199fc4440aa7929905ec171ed1dad82a9f6a89891193b2b4cf45937a8cf9ece4972e02bc7e23d8b8b2e550b6430693ac6bc8c82a0509f65d0abb34d7ae0a8a81c",
"config_signature": "0x1199fc4440aa7929905ec171ed1dad82a9f6a89891193b2b4cf45937a8cf9ece4972e02bc7e23d8b8b2e550b6430693ac6bc8c82a0509f65d0abb34d7ae0a8a81c"
}
],
"creator": [
{
"address": "0x000000000000000000000000000000000000dead",
"config_signature": "0x1199fc4440aa7929905ec171ed1dad82a9f6a89891193b2b4cf45937a8cf9ece4972e02bc7e23d8b8b2e550b6430693ac6bc8c82a0509f65d0abb34d7ae0a8a81c"
}
],
"uuid": "0194FDC2-FA2F-FCC0-41D3-FF12045B73C8",
"version": "v1.8.0",
"num_validators": 5,
"threshold": 3,
"dkg_algorithm": "default",
"fork_version": "0x00001020",
"timestamp": "2022-07-19T18:19:58+02:00",
"validators": [
{
"fee_recipient_address": "0x000000000000000000000000000000000000dead",
"withdrawal_address": "0x000000000000000000000000000000000000dead"
}
],
"consensus_protocol": "qbft",
"target_gas_limit": 36000000,
"config_hash": "0x29b0223beea5f4f74391f445d15afd4294040374f6924b98cbf8713f8d962d7c"
}Response
The cluster object
Example response
{
"name": "My Obol Cluster",
"uuid": "0194FDC2-FA2F-FCC0-41D3-FF12045B73C8",
"version": "v1.8.0",
"num_validators": 5,
"threshold": 3,
"dkg_algorithm": "default",
"fork_version": "0x00001020",
"config_hash": "0x2204ba6c238ed2d6a8ff951d4513db993c8d6f8860468391342649bf735a87d7",
"timestamp": "2022-07-19T18:19:58+02:00",
"deposit_amounts": [
"8000000000",
"16000000000",
"8000000000"
],
"definition_hash": "0xb656f5a4a5537b5817d6bcf735d043f17f5aff568b1a7ec9102a9f687bd4510c",
"fee_recipient_address": "0x000000000000000000000000000000000000dead",
"withdrawal_address": "0x000000000000000000000000000000000000dead",
"consensus_protocol": "qbft",
"target_gas_limit": 36000000,
"compounding": true
}Changes
- info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status
- info
- breaking
removed the enum value
0x01017000of the request property - breaking
removed the enum value
0x01017000of the request property// - breaking
removed the enum value
holeskyof the request property - breaking
removed the enum value
holeskyof the request property//
- breaking