2023-01-20 14:14:37 +00:00
|
|
|
# Copyright (c) 2022-2023 Status Research & Development GmbH
|
2022-05-17 13:56:19 +00:00
|
|
|
# Licensed and distributed under either of
|
|
|
|
# * MIT license (license terms in the root directory or at https://opensource.org/licenses/MIT).
|
|
|
|
# * Apache v2 license (license terms in the root directory or at https://www.apache.org/licenses/LICENSE-2.0).
|
|
|
|
# at your option. This file may not be copied, modified, or distributed except according to those terms.
|
|
|
|
|
2023-01-20 14:14:37 +00:00
|
|
|
{.push raises: [].}
|
2022-05-17 13:56:19 +00:00
|
|
|
|
|
|
|
import
|
|
|
|
chronos, presto/client,
|
|
|
|
".."/eth2_apis/[rest_types, eth2_rest_serialization]
|
|
|
|
|
|
|
|
export chronos, client, rest_types, eth2_rest_serialization
|
|
|
|
|
2022-07-12 17:50:12 +00:00
|
|
|
proc registerValidator*(body: seq[SignedValidatorRegistrationV1]
|
2022-06-06 13:55:02 +00:00
|
|
|
): RestPlainResponse {.
|
2022-05-17 13:56:19 +00:00
|
|
|
rest, endpoint: "/eth/v1/builder/validators",
|
2022-10-13 11:38:33 +00:00
|
|
|
meth: MethodPost, connection: {Dedicated, Close}.}
|
2023-02-18 00:54:30 +00:00
|
|
|
## https://github.com/ethereum/builder-specs/blob/v0.3.0/apis/builder/validators.yaml
|
|
|
|
## https://github.com/ethereum/beacon-APIs/blob/v2.3.0/apis/validator/register_validator.yaml
|
2022-05-17 13:56:19 +00:00
|
|
|
|
2023-02-21 13:21:38 +00:00
|
|
|
proc getHeaderBellatrix*(slot: Slot,
|
|
|
|
parent_hash: Eth2Digest,
|
|
|
|
pubkey: ValidatorPubKey
|
|
|
|
): RestResponse[GetHeaderResponseBellatrix] {.
|
2022-05-17 13:56:19 +00:00
|
|
|
rest, endpoint: "/eth/v1/builder/header/{slot}/{parent_hash}/{pubkey}",
|
2022-10-13 11:38:33 +00:00
|
|
|
meth: MethodGet, connection: {Dedicated, Close}.}
|
2023-02-18 00:54:30 +00:00
|
|
|
## https://github.com/ethereum/builder-specs/blob/v0.3.0/apis/builder/header.yaml
|
2022-05-17 13:56:19 +00:00
|
|
|
|
2023-02-06 18:07:30 +00:00
|
|
|
proc submitBlindedBlock*(body: bellatrix_mev.SignedBlindedBeaconBlock
|
|
|
|
): RestResponse[SubmitBlindedBlockResponseBellatrix] {.
|
2022-05-17 13:56:19 +00:00
|
|
|
rest, endpoint: "/eth/v1/builder/blinded_blocks",
|
2022-10-13 11:38:33 +00:00
|
|
|
meth: MethodPost, connection: {Dedicated, Close}.}
|
2023-02-18 00:54:30 +00:00
|
|
|
## https://github.com/ethereum/builder-specs/blob/v0.3.0/apis/builder/blinded_blocks.yaml
|
2022-05-17 13:56:19 +00:00
|
|
|
|
|
|
|
proc checkBuilderStatus*(): RestPlainResponse {.
|
|
|
|
rest, endpoint: "/eth/v1/builder/status",
|
2022-10-13 11:38:33 +00:00
|
|
|
meth: MethodGet, connection: {Dedicated, Close}.}
|
2023-02-18 00:54:30 +00:00
|
|
|
## https://github.com/ethereum/builder-specs/blob/v0.3.0/apis/builder/status.yaml
|