Deprecate everything related with the gRPC API (#14944)

* proto definitions

* server methods

* grpc validator

* server structs

* functions, types, fields etc

* changelog <3

* revert `buildBlockParallel`

* format fix

* better deprecation warning

* remove comment from unexported fields

* only keep comment in public-facing items
This commit is contained in:
Radosław Kapka
2025-04-10 17:21:49 +02:00
committed by GitHub
parent ff6e27c737
commit 9d1750ce86
31 changed files with 406 additions and 20 deletions

View File

@@ -33,6 +33,8 @@ option php_namespace = "Ethereum\\Eth\\v1alpha1";
// ----------------------------------------------------------------------------
message GenericSignedBeaconBlock {
option deprecated = true;
oneof block {
// Representing a signed, phase 0 beacon block.
SignedBeaconBlock phase0 = 1;
@@ -75,6 +77,8 @@ message GenericSignedBeaconBlock {
}
message GenericBeaconBlock {
option deprecated = true;
oneof block {
// Representing a phase 0 beacon block.
BeaconBlock phase0 = 1;
@@ -319,6 +323,8 @@ message VoluntaryExit {
}
message SignedValidatorRegistrationsV1 {
option deprecated = true;
repeated SignedValidatorRegistrationV1 messages = 1;
}

View File

@@ -44,6 +44,7 @@ service BeaconChain {
// information via a boolean query filter.
rpc ListAttestations(ListAttestationsRequest)
returns (ListAttestationsResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations"
};
@@ -57,6 +58,7 @@ service BeaconChain {
// information via a boolean query filter.
rpc ListAttestationsElectra(ListAttestationsRequest)
returns (ListAttestationsElectraResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations_electra"
};
@@ -70,6 +72,7 @@ service BeaconChain {
// genesis information via a boolean query filter.
rpc ListIndexedAttestations(ListIndexedAttestationsRequest)
returns (ListIndexedAttestationsResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations/indexed"
};
@@ -83,6 +86,7 @@ service BeaconChain {
// genesis information via a boolean query filter.
rpc ListIndexedAttestationsElectra(ListIndexedAttestationsRequest)
returns (ListIndexedAttestationsElectraResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations/indexed_electra"
};
@@ -99,6 +103,7 @@ service BeaconChain {
// https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#attestations
rpc AttestationPool(AttestationPoolRequest)
returns (AttestationPoolResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations/pool"
};
@@ -115,6 +120,7 @@ service BeaconChain {
// https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#attestations
rpc AttestationPoolElectra(AttestationPoolRequest)
returns (AttestationPoolElectraResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/attestations/pool_electra"
};
@@ -129,6 +135,7 @@ service BeaconChain {
// endpoint allows for retrieval of genesis information via a boolean query
// filter.
rpc ListBeaconBlocks(ListBlocksRequest) returns (ListBeaconBlocksResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha2/beacon/blocks"
};
@@ -155,6 +162,7 @@ service BeaconChain {
// default. This endpoint allows for retrieval of genesis information via a
// boolean query filter.
rpc ListBeaconCommittees(ListCommitteesRequest) returns (BeaconCommittees) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/committees"
};
@@ -165,6 +173,7 @@ service BeaconChain {
// via a boolean query filter.
rpc ListValidatorBalances(ListValidatorBalancesRequest)
returns (ValidatorBalances) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators/balances"
};
@@ -176,6 +185,7 @@ service BeaconChain {
// specific validator set in time. This endpoint allows for retrieval of
// genesis information via a boolean query filter.
rpc ListValidators(ListValidatorsRequest) returns (Validators) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators"
};
@@ -185,6 +195,7 @@ service BeaconChain {
//
// This request may query by validator index or public key.
rpc GetValidator(GetValidatorRequest) returns (Validator) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator"
};
@@ -197,6 +208,7 @@ service BeaconChain {
// information via a boolean query filter.
rpc GetValidatorActiveSetChanges(GetValidatorActiveSetChangesRequest)
returns (ActiveSetChanges) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators/activesetchanges"
};
@@ -204,6 +216,7 @@ service BeaconChain {
// Retrieve the current validator queue information.
rpc GetValidatorQueue(google.protobuf.Empty) returns (ValidatorQueue) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators/queue"
};
@@ -215,6 +228,7 @@ service BeaconChain {
// and returns a performance report for all of them respectively.
rpc GetValidatorPerformance(ValidatorPerformanceRequest)
returns (ValidatorPerformanceResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators/performance"
};
@@ -227,6 +241,7 @@ service BeaconChain {
// information via a boolean query filter.
rpc ListValidatorAssignments(ListValidatorAssignmentsRequest)
returns (ValidatorAssignments) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validators/assignments"
};
@@ -247,6 +262,7 @@ service BeaconChain {
// Retrieve the current configuration parameters of the beacon chain.
rpc GetBeaconConfig(google.protobuf.Empty) returns (BeaconConfig) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/config"
};
@@ -255,6 +271,7 @@ service BeaconChain {
// Submit an attester slashing object to the beacon node.
rpc SubmitAttesterSlashing(AttesterSlashing)
returns (SubmitSlashingResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/slashings/attester/submit"
};
@@ -263,6 +280,7 @@ service BeaconChain {
// Submit an attester slashing object to the beacon node.
rpc SubmitAttesterSlashingElectra(AttesterSlashingElectra)
returns (SubmitSlashingResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/slashings/attester/submit_electra"
};
@@ -271,6 +289,7 @@ service BeaconChain {
// Submit a proposer slashing object to the beacon node.
rpc SubmitProposerSlashing(ProposerSlashing)
returns (SubmitSlashingResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/slashings/proposer/submit"
};
@@ -279,6 +298,7 @@ service BeaconChain {
// Returns a list of validators individual vote status of a given epoch.
rpc GetIndividualVotes(IndividualVotesRequest)
returns (IndividualVotesRespond) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/beacon/individual_votes"
};
@@ -287,6 +307,8 @@ service BeaconChain {
// Request for indexed attestations by target epoch.
message ListIndexedAttestationsRequest {
option deprecated = true;
oneof query_filter {
// Retrieve attestations by epoch processed.
uint64 epoch = 1 [
@@ -310,6 +332,7 @@ message ListIndexedAttestationsRequest {
// Request for attestations.
message ListAttestationsRequest {
option deprecated = true;
oneof query_filter {
// Filter attestations by epoch processed.
@@ -333,6 +356,8 @@ message ListAttestationsRequest {
}
message ListAttestationsResponse {
option deprecated = true;
repeated Attestation attestations = 1;
// A pagination token returned from a previous call to `ListAttestations`
@@ -345,6 +370,8 @@ message ListAttestationsResponse {
}
message ListAttestationsElectraResponse {
option deprecated = true;
repeated AttestationElectra attestations = 1;
// A pagination token returned from a previous call to `ListAttestations`
@@ -357,6 +384,8 @@ message ListAttestationsElectraResponse {
}
message ListIndexedAttestationsResponse {
option deprecated = true;
repeated IndexedAttestation indexed_attestations = 1;
// A pagination token returned from a previous call to
@@ -369,6 +398,8 @@ message ListIndexedAttestationsResponse {
}
message ListIndexedAttestationsElectraResponse {
option deprecated = true;
repeated IndexedAttestationElectra indexed_attestations = 1;
// A pagination token returned from a previous call to
@@ -381,6 +412,8 @@ message ListIndexedAttestationsElectraResponse {
}
message ListBlocksRequest {
option deprecated = true;
oneof query_filter {
// Block root filter to return a single block.
bytes root = 1;
@@ -415,6 +448,8 @@ message ListBlocksRequest {
}
message ListBeaconBlocksResponse {
option deprecated = true;
repeated BeaconBlockContainer block_containers = 1;
// A pagination token returned from a previous call to `ListBeaconBlocks`
@@ -478,6 +513,8 @@ message BeaconBlockContainer {
// Information about the head of the beacon chain.
message ChainHead {
option deprecated = true;
// Slot of the head block.
uint64 head_slot = 1 [
(ethereum.eth.ext.cast_type) =
@@ -544,6 +581,8 @@ message ChainHead {
}
message ListCommitteesRequest {
option deprecated = true;
oneof query_filter {
// Optional criteria to retrieve data at a specific epoch.
uint64 epoch = 1 [
@@ -557,6 +596,8 @@ message ListCommitteesRequest {
}
message BeaconCommittees {
option deprecated = true;
message CommitteeItem {
// A committee is a list of validator indices participating in consensus at
// a slot.
@@ -585,6 +626,8 @@ message BeaconCommittees {
}
message ListValidatorBalancesRequest {
option deprecated = true;
oneof query_filter {
// Optional criteria to retrieve balances at a specific epoch.
uint64 epoch = 1 [
@@ -616,6 +659,8 @@ message ListValidatorBalancesRequest {
}
message ValidatorBalances {
option deprecated = true;
// Epoch which the state was considered to determine the validator balances.
uint64 epoch = 1 [
(ethereum.eth.ext.cast_type) =
@@ -650,6 +695,8 @@ message ValidatorBalances {
}
message ListValidatorsRequest {
option deprecated = true;
oneof query_filter {
// Optional criteria to retrieve validators at a specific epoch.
// Omitting this field or setting it to zero will retrieve a response
@@ -688,6 +735,8 @@ message ListValidatorsRequest {
}
message GetValidatorRequest {
option deprecated = true;
oneof query_filter {
// Validator index in the registry.
uint64 index = 1 [ (ethereum.eth.ext.cast_type) =
@@ -700,6 +749,8 @@ message GetValidatorRequest {
}
message Validators {
option deprecated = true;
// Epoch which the state was considered to determine the active validator
// set. This field is not optional. Zero value epoch indicates the validator
// set is from the Ethereum proof of stake genesis set.
@@ -727,6 +778,8 @@ message Validators {
}
message GetValidatorActiveSetChangesRequest {
option deprecated = true;
oneof query_filter {
// Optional criteria to retrieve balances at a specific epoch.
uint64 epoch = 1 [
@@ -740,6 +793,8 @@ message GetValidatorActiveSetChangesRequest {
}
message ActiveSetChanges {
option deprecated = true;
// Epoch which the state was considered to determine the active validator
// set.
uint64 epoch = 1 [
@@ -791,6 +846,8 @@ message ActiveSetChanges {
}
message ValidatorPerformanceRequest {
option deprecated = true;
// A list of 48 byte validator public keys.
repeated bytes public_keys = 1 [ deprecated = true ];
// A list of validator indices to retrieve performance by their indices.
@@ -801,6 +858,8 @@ message ValidatorPerformanceRequest {
}
message ValidatorPerformanceResponse {
option deprecated = true;
// A list of validator effective balances mapped 1-to-1 with the request's
// public keys.
repeated uint64 current_effective_balances = 1;
@@ -853,6 +912,7 @@ message ValidatorPerformanceResponse {
// future hard fork.
message ValidatorQueue {
option deprecated = true;
// The amount of ether in gwei allowed to enter or exit the active
// validator set.
uint64 churn_limit = 1;
@@ -883,6 +943,8 @@ message ValidatorQueue {
}
message ListValidatorAssignmentsRequest {
option deprecated = true;
oneof query_filter {
// Epoch to validator assignments for.
uint64 epoch = 1 [
@@ -912,6 +974,8 @@ message ListValidatorAssignmentsRequest {
}
message ValidatorAssignments {
option deprecated = true;
message CommitteeAssignment {
// Beacon committees are responsible for crosslinking committee data back to
// the beacon chain, they also attest and produce beacon chain blocks. This
@@ -1003,6 +1067,8 @@ message ValidatorParticipationResponse {
}
message AttestationPoolRequest {
option deprecated = true;
// The maximum number of objects to return in the response.
// This field is optional.
int32 page_size = 1;
@@ -1014,6 +1080,8 @@ message AttestationPoolRequest {
}
message AttestationPoolResponse {
option deprecated = true;
// List of attestations currently in the pool of the beacon chain.
repeated Attestation attestations = 1;
@@ -1027,6 +1095,8 @@ message AttestationPoolResponse {
}
message AttestationPoolElectraResponse {
option deprecated = true;
// List of attestations currently in the pool of the beacon chain.
repeated AttestationElectra attestations = 1;

View File

@@ -24,30 +24,35 @@ option php_namespace = "Ethereum\\Eth\\v1alpha1";
service Debug {
// Returns a beacon state by filter criteria from the beacon node.
rpc GetBeaconState(BeaconStateRequest) returns (SSZResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/debug/state"
};
}
// Returns a beacon state by filter criteria from the beacon node.
rpc GetBlock(BlockRequestByRoot) returns (SSZResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/debug/block"
};
}
// SetLoggingLevel sets the log-level of the beacon node programmatically.
rpc SetLoggingLevel(LoggingLevelRequest) returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/debug/logging"
};
}
// Returns all the related data for every peer tracked by the host node.
rpc ListPeers(google.protobuf.Empty) returns (DebugPeerResponses) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/debug/peers"
};
}
// Returns requested peer with specified peer id if it exists.
rpc GetPeer(ethereum.eth.v1alpha1.PeerRequest) returns (DebugPeerResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/debug/peer"
};
@@ -70,6 +75,8 @@ message InclusionSlotResponse {
}
message BeaconStateRequest {
option deprecated = true;
oneof query_filter {
// The slot corresponding to a desired beacon state.
uint64 slot = 1 [
@@ -82,14 +89,22 @@ message BeaconStateRequest {
}
}
message BlockRequestByRoot { bytes block_root = 1; }
message BlockRequestByRoot {
option deprecated = true;
bytes block_root = 1;
}
message SSZResponse {
option deprecated = true;
// Returns an ssz-encoded byte slice as a response.
bytes encoded = 1;
}
message LoggingLevelRequest {
option deprecated = true;
// The logging levels available in Prysm as an enum.
enum Level {
INFO = 0;
@@ -99,9 +114,15 @@ message LoggingLevelRequest {
Level level = 1;
}
message DebugPeerResponses { repeated DebugPeerResponse responses = 1; }
message DebugPeerResponses {
option deprecated = true;
repeated DebugPeerResponse responses = 1;
}
message DebugPeerResponse {
option deprecated = true;
// Peer related metadata that is useful for debugging.
message PeerInfo {
// Metadata of the peer, containing their bitfield

View File

@@ -18,10 +18,15 @@ option php_namespace = "Ethereum\\Eth\\v1alpha1";
// such being able to stream logs via gRPC.
service Health {
rpc StreamBeaconLogs(google.protobuf.Empty) returns (stream LogsResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/health/logs/stream"
};
}
}
message LogsResponse { repeated string logs = 1; }
message LogsResponse {
option deprecated = true;
repeated string logs = 1;
}

View File

@@ -35,6 +35,7 @@ option php_namespace = "Ethereum\\Eth\\v1alpha1";
service Node {
// Retrieve the current network sync status of the node.
rpc GetSyncStatus(google.protobuf.Empty) returns (SyncStatus) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/syncing"
};
@@ -42,6 +43,7 @@ service Node {
// Retrieve information about the genesis of Ethereum proof of stake.
rpc GetGenesis(google.protobuf.Empty) returns (Genesis) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/genesis"
};
@@ -49,6 +51,7 @@ service Node {
// Retrieve information about the running Ethereum Beacon Node.
rpc GetVersion(google.protobuf.Empty) returns (Version) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/version"
};
@@ -56,6 +59,7 @@ service Node {
// Retrieve the current health of the node.
rpc GetHealth(HealthRequest) returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/health"
};
@@ -68,6 +72,7 @@ service Node {
// reflection.
rpc ListImplementedServices(google.protobuf.Empty)
returns (ImplementedServices) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/services"
};
@@ -75,6 +80,7 @@ service Node {
// Retrieves the peer data of the local peer.
rpc GetHost(google.protobuf.Empty) returns (HostData) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/p2p"
};
@@ -82,6 +88,7 @@ service Node {
// Retrieve the peer corresponding to the provided peer id.
rpc GetPeer(PeerRequest) returns (Peer) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/peer"
};
@@ -89,6 +96,7 @@ service Node {
// Retrieve the list of peers currently connected to this node.
rpc ListPeers(google.protobuf.Empty) returns (Peers) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/peers"
};
@@ -97,22 +105,31 @@ service Node {
// // Retrieve the status of the ETH1 connections.
rpc GetETH1ConnectionStatus(google.protobuf.Empty)
returns (ETH1ConnectionStatus) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/node/eth1/connections"
};
}
}
message HealthRequest { uint64 syncing_status = 1; }
message HealthRequest {
option deprecated = true;
uint64 syncing_status = 1;
}
// Information about the current network sync status of the node.
message SyncStatus {
option deprecated = true;
// Whether or not the node is currently syncing.
bool syncing = 1;
}
// Information about the genesis of Ethereum proof of stake.
message Genesis {
option deprecated = true;
// UTC time specified in the chain start event in the deposit contract.
google.protobuf.Timestamp genesis_time = 1;
@@ -126,6 +143,8 @@ message Genesis {
// Information about the node version.
message Version {
option deprecated = true;
// A string that uniquely identifies the node and its version.
string version = 1;
@@ -134,18 +153,30 @@ message Version {
string metadata = 2;
}
message ImplementedServices { repeated string services = 1; }
message ImplementedServices {
option deprecated = true;
repeated string services = 1;
}
message PeerRequest {
option deprecated = true;
// Peer id of the peer requested.
string peer_id = 1;
}
// Peers is a list of peer messages.
message Peers { repeated Peer peers = 1; }
message Peers {
option deprecated = true;
repeated Peer peers = 1;
}
// Peer provides details of a peer on the network.
message Peer {
option deprecated = true;
// The address of the peer, as a full multiaddr, for example:
// /ip4/37.221.192.134/tcp/13000/p2p/16Uiu2HAm8maLMjag1TAUM52zPfmLbVMGFdwUAWgoHu1HDQLR6e17
string address = 1;
@@ -162,6 +193,8 @@ message Peer {
// P2P Data on the local host.
message HostData {
option deprecated = true;
// All the multiaddress of the peer, specified as a full multiaddr, for
// example:
// /ip4/37.221.192.134/tcp/13000/p2p/16Uiu2HAm8maLMjag1TAUM52zPfmLbVMGFdwUAWgoHu1HDQLR6e17
@@ -190,6 +223,8 @@ enum ConnectionState {
// ETH1ConnectionStatus states the current address and error of the ETH1 API
// endpoint. It also provides the addresses and errors for any fallback URLs.
message ETH1ConnectionStatus {
option deprecated = true;
// Current ETH1 HTTP endpoint.
string current_address = 1;

View File

@@ -26,6 +26,8 @@ option php_namespace = "Ethereum\\Eth\\v1alpha1";
// Sync committee object to support light client.
message SyncCommitteeMessage {
option deprecated = true;
// Slot to which this contribution pertains.
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =

View File

@@ -52,6 +52,7 @@ service BeaconNodeValidator {
// recommended to poll at every slot to ensure validator is fully aware of any
// sudden chain reorg.
rpc GetDuties(DutiesRequest) returns (DutiesResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/duties"
};
@@ -61,6 +62,7 @@ service BeaconNodeValidator {
// from the running beacon node's state. This information is used when
// validators sign blocks and attestations appropriately based on their duty.
rpc DomainData(DomainRequest) returns (DomainResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/domain"
};
@@ -90,10 +92,10 @@ service BeaconNodeValidator {
// validator to those keys is activated.
rpc WaitForActivation(ValidatorActivationRequest)
returns (stream ValidatorActivationResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/activation/stream"
};
option deprecated = true;
}
// ValidatorIndex retrieves a validator's index location in the beacon state's
@@ -101,6 +103,7 @@ service BeaconNodeValidator {
// public key. This method returns NOT_FOUND if no index is found for the
// public key specified in the request.
rpc ValidatorIndex(ValidatorIndexRequest) returns (ValidatorIndexResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/index"
};
@@ -119,6 +122,7 @@ service BeaconNodeValidator {
//validator does not have a known status in the network.
rpc ValidatorStatus(ValidatorStatusRequest)
returns (ValidatorStatusResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/status"
};
@@ -130,6 +134,7 @@ service BeaconNodeValidator {
// Returns a list of ValidatorStatusResponses.
rpc MultipleValidatorStatus(MultipleValidatorStatusRequest)
returns (MultipleValidatorStatusResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/statuses"
};
@@ -141,6 +146,7 @@ service BeaconNodeValidator {
// be proposed on the beacon chain. The block should be filled with all the
// necessary data for proposer to sign.
rpc GetBeaconBlock(BlockRequest) returns (GenericBeaconBlock) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha2/validator/block"
};
@@ -152,6 +158,7 @@ service BeaconNodeValidator {
// beacon block can be included in the beacon chain. The beacon node is
// expected to validate and process the beacon block into its state.
rpc ProposeBeaconBlock(GenericSignedBeaconBlock) returns (ProposeResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha2/validator/block"
body : "*"
@@ -162,6 +169,7 @@ service BeaconNodeValidator {
// preparing block proposal execution payloads.
rpc PrepareBeaconProposer(PrepareBeaconProposerRequest)
returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/prepare_beacon_proposer"
body : "*"
@@ -172,6 +180,7 @@ service BeaconNodeValidator {
// settings or db based on a given public key
rpc GetFeeRecipientByPubKey(FeeRecipientByPubKeyRequest)
returns (FeeRecipientByPubKeyResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/fee_recipient_by_pub_key"
body : "*"
@@ -184,6 +193,7 @@ service BeaconNodeValidator {
// The server returns the latest valid data which represents the correct vote
// for the head of the beacon chain.
rpc GetAttestationData(AttestationDataRequest) returns (AttestationData) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/attestation"
};
@@ -195,6 +205,7 @@ service BeaconNodeValidator {
// attestation to be included in the beacon chain. The beacon node is expected
// to validate and publish attestation on appropriate committee subnet.
rpc ProposeAttestation(Attestation) returns (AttestResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/attestation"
body : "*"
@@ -207,6 +218,7 @@ service BeaconNodeValidator {
// attestation to be included in the beacon chain. The beacon node is expected
// to validate and publish attestation on appropriate committee subnet.
rpc ProposeAttestationElectra(SingleAttestation) returns (AttestResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/attestation_electra"
body : "*"
@@ -218,6 +230,7 @@ service BeaconNodeValidator {
// aggregate and proof object back to validator to sign over.
rpc SubmitAggregateSelectionProof(AggregateSelectionRequest)
returns (AggregateSelectionResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/aggregate"
body : "*"
@@ -229,6 +242,7 @@ service BeaconNodeValidator {
// aggregate and proof object back to validator to sign over.
rpc SubmitAggregateSelectionProofElectra(AggregateSelectionRequest)
returns (AggregateSelectionElectraResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/aggregate_electra"
body : "*"
@@ -239,6 +253,7 @@ service BeaconNodeValidator {
// the signed aggregated attestation and proof object.
rpc SubmitSignedAggregateSelectionProof(SignedAggregateSubmitRequest)
returns (SignedAggregateSubmitResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/aggregate"
body : "*"
@@ -250,6 +265,7 @@ service BeaconNodeValidator {
rpc SubmitSignedAggregateSelectionProofElectra(
SignedAggregateSubmitElectraRequest)
returns (SignedAggregateSubmitResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/aggregate_electra"
body : "*"
@@ -261,6 +277,7 @@ service BeaconNodeValidator {
// The beacon node is expected to validate the request and make it available
// for inclusion in the next proposed block.
rpc ProposeExit(SignedVoluntaryExit) returns (ProposeExitResponse) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/exit"
body : "*"
@@ -275,6 +292,7 @@ service BeaconNodeValidator {
// serving aggregator can join the subnet.
rpc SubscribeCommitteeSubnets(CommitteeSubnetsSubscribeRequest)
returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/subnet/subscribe"
body : "*"
@@ -284,6 +302,7 @@ service BeaconNodeValidator {
// Checks the beacon node if another instance of the provided validator keys
// have been attesting/proposing for you.
rpc CheckDoppelGanger(DoppelGangerRequest) returns (DoppelGangerResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/doppelganger"
};
@@ -293,6 +312,7 @@ service BeaconNodeValidator {
// sync committee duty.
rpc GetSyncMessageBlockRoot(google.protobuf.Empty)
returns (SyncMessageBlockRootResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/sync_message_block_root"
};
@@ -301,6 +321,7 @@ service BeaconNodeValidator {
// Submits a sync committee message to be broadcasted over network. This is
// part of sync committee duty.
rpc SubmitSyncMessage(SyncCommitteeMessage) returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/sync_message"
body : "*"
@@ -315,6 +336,7 @@ service BeaconNodeValidator {
// sync committee message.
rpc GetSyncSubcommitteeIndex(SyncSubcommitteeIndexRequest)
returns (SyncSubcommitteeIndexResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/sync_subcommittee_index"
};
@@ -326,6 +348,7 @@ service BeaconNodeValidator {
// to sign over.
rpc GetSyncCommitteeContribution(SyncCommitteeContributionRequest)
returns (SyncCommitteeContribution) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/contribution_and_proof"
body : "*"
@@ -336,6 +359,7 @@ service BeaconNodeValidator {
// node will broadcast the signed contribution and proof object.
rpc SubmitSignedContributionAndProof(SignedContributionAndProof)
returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/signed_contribution_and_proof"
body : "*"
@@ -347,10 +371,10 @@ service BeaconNodeValidator {
// DEPRECATED: This endpoint is superseded by the /eth/v1/events Beacon API
// endpoint
rpc StreamSlots(StreamSlotsRequest) returns (stream StreamSlotsResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/blocks/stream_slots"
};
option deprecated = true;
}
// Server-side stream of all signed blocks as they are received by
@@ -359,14 +383,15 @@ service BeaconNodeValidator {
// endpoint
rpc StreamBlocksAltair(StreamBlocksRequest)
returns (stream StreamBlocksResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/blocks/stream"
};
option deprecated = true;
}
rpc SubmitValidatorRegistrations(SignedValidatorRegistrationsV1)
returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/registration"
body : "*"
@@ -375,6 +400,7 @@ service BeaconNodeValidator {
rpc AssignValidatorToSubnet(AssignValidatorToSubnetRequest)
returns (google.protobuf.Empty) {
option deprecated = true;
option (google.api.http) = {
post : "/eth/v1alpha1/validator/blocks/assign_validator_to_subnet"
body : "*"
@@ -383,6 +409,7 @@ service BeaconNodeValidator {
rpc AggregatedSigAndAggregationBits(AggregatedSigAndAggregationBitsRequest)
returns (AggregatedSigAndAggregationBitsResponse) {
option deprecated = true;
option (google.api.http) = {
get : "/eth/v1alpha1/validator/blocks/aggregated_sig_and_aggregation_bits"
};
@@ -393,6 +420,8 @@ service BeaconNodeValidator {
// to sign over the block root as part of sync committee duty to facilitate
// light client.
message SyncMessageBlockRootResponse {
option deprecated = true;
// The block root of the head block.
bytes root = 1 [ (ethereum.eth.ext.ssz_size) = "32" ];
}
@@ -400,6 +429,8 @@ message SyncMessageBlockRootResponse {
// SyncSubcommitteeIndexRequest requests sync subcommittee index given the
// validator public key.
message SyncSubcommitteeIndexRequest {
option deprecated = true;
// The validator's public key.
bytes public_key = 1 [ (ethereum.eth.ext.ssz_size) = "48" ];
// The slot of validator's assignment.
@@ -410,6 +441,8 @@ message SyncSubcommitteeIndexRequest {
}
message SyncCommitteeContributionRequest {
option deprecated = true;
// Slot for which the aggregation request applies.
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =
@@ -427,6 +460,8 @@ message SyncCommitteeContributionRequest {
// SyncSubcommitteeIndexResponse responds index of the sync subcommittee of a
// given validator.
message SyncSubcommitteeIndexResponse {
option deprecated = true;
// The subcommittee index itself.
// If the total validator count is not sufficient, there could be more than
// one index.
@@ -440,6 +475,7 @@ message SyncSubcommitteeIndexResponse {
// Beacon API endpoint
message StreamSlotsResponse {
option deprecated = true;
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =
"github.com/prysmaticlabs/prysm/v5/consensus-types/primitives.Slot"
@@ -450,6 +486,7 @@ message StreamSlotsResponse {
// Beacon API endpoint
message StreamBlocksResponse {
option deprecated = true;
oneof block {
// Representing a phase 0 block.
SignedBeaconBlock phase0_block = 1;
@@ -475,6 +512,8 @@ message StreamBlocksResponse {
}
message DomainRequest {
option deprecated = true;
// The epoch for which the domain is being requested.
uint64 epoch = 1 [
(ethereum.eth.ext.cast_type) =
@@ -486,17 +525,23 @@ message DomainRequest {
}
message DomainResponse {
option deprecated = true;
// The signature domain is a byte array used by validators when
// signing data related to block proposals and attestations.
bytes signature_domain = 1;
}
message ValidatorActivationRequest {
option deprecated = true;
// A list of 48 byte validator public keys.
repeated bytes public_keys = 1 [ (ethereum.eth.ext.ssz_size) = "?,48" ];
}
message ValidatorActivationResponse {
option deprecated = true;
message Status {
// A 48 byte validator public key.
bytes public_key = 1;
@@ -515,6 +560,8 @@ message ValidatorActivationResponse {
}
message ChainStartResponse {
option deprecated = true;
// A boolean specifying whether or not the chain has started.
bool started = 1;
@@ -535,11 +582,15 @@ message SyncedResponse {
}
message ValidatorIndexRequest {
option deprecated = true;
// A 48 byte validator public key.
bytes public_key = 1 [ (ethereum.eth.ext.ssz_size) = "48" ];
}
message ValidatorIndexResponse {
option deprecated = true;
// The validator's index in the beacon chain state's validator registry.
uint64 index = 1 [ (ethereum.eth.ext.cast_type) =
"github.com/prysmaticlabs/prysm/v5/consensus-types/"
@@ -547,6 +598,8 @@ message ValidatorIndexResponse {
}
message ValidatorStatusRequest {
option deprecated = true;
// A 48 byte validator public key.
bytes public_key = 1 [ (ethereum.eth.ext.ssz_size) = "48" ];
}
@@ -564,6 +617,8 @@ enum ValidatorStatus {
}
message ValidatorStatusResponse {
option deprecated = true;
// The corresponding validator status.
ValidatorStatus status = 1;
@@ -590,6 +645,8 @@ message ValidatorStatusResponse {
}
message MultipleValidatorStatusRequest {
option deprecated = true;
// A list of 48 byte validator public keys.
repeated bytes public_keys = 1 [ (ethereum.eth.ext.ssz_size) = "?,48" ];
// A list of validator indices.
@@ -597,6 +654,8 @@ message MultipleValidatorStatusRequest {
}
message MultipleValidatorStatusResponse {
option deprecated = true;
// A list of 48 byte validator public keys.
repeated bytes public_keys = 1 [ (ethereum.eth.ext.ssz_size) = "?,48" ];
// A list of ValidatorStatusResponses mapped 1-to-1 with the public keys.
@@ -609,6 +668,8 @@ message MultipleValidatorStatusResponse {
}
message DutiesRequest {
option deprecated = true;
// Epoch at which validators should perform their duties.
uint64 epoch = 1 [
(ethereum.eth.ext.cast_type) =
@@ -620,6 +681,8 @@ message DutiesRequest {
}
message DutiesResponse {
option deprecated = true;
reserved 1; // Deprecated fields
repeated Duty current_epoch_duties = 2;
@@ -674,6 +737,8 @@ message DutiesResponse {
}
message BlockRequest {
option deprecated = true;
// Slot for which the block should be proposed.
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =
@@ -696,16 +761,22 @@ message BlockRequest {
}
message ProposeResponse {
option deprecated = true;
// The block root of the successfully proposed beacon block.
bytes block_root = 1 [ (ethereum.eth.ext.ssz_size) = "32" ];
}
message ProposeExitResponse {
option deprecated = true;
// The root of the successfully proposed voluntary exit.
bytes exit_root = 1 [ (ethereum.eth.ext.ssz_size) = "32" ];
}
message AttestationDataRequest {
option deprecated = true;
// Slot for which the attestation should be created.
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =
@@ -720,11 +791,15 @@ message AttestationDataRequest {
}
message AttestResponse {
option deprecated = true;
// The root of the attestation data successfully submitted to the beacon node.
bytes attestation_data_root = 1 [ (ethereum.eth.ext.ssz_size) = "32" ];
}
message AggregateSelectionRequest {
option deprecated = true;
// Slot for which the aggregation request applies.
uint64 slot = 1 [
(ethereum.eth.ext.cast_type) =
@@ -746,31 +821,43 @@ message AggregateSelectionRequest {
}
message AggregateSelectionResponse {
option deprecated = true;
// The aggregate and proof message without the signature.
AggregateAttestationAndProof aggregate_and_proof = 1;
}
message AggregateSelectionElectraResponse {
option deprecated = true;
// The aggregate and proof message without the signature.
AggregateAttestationAndProofElectra aggregate_and_proof = 1;
}
message SignedAggregateSubmitRequest {
option deprecated = true;
// The signed aggregate and proof message with the signature.
SignedAggregateAttestationAndProof signed_aggregate_and_proof = 1;
}
message SignedAggregateSubmitElectraRequest {
option deprecated = true;
// The signed aggregate and proof message with the signature.
SignedAggregateAttestationAndProofElectra signed_aggregate_and_proof = 1;
}
message SignedAggregateSubmitResponse {
option deprecated = true;
// The 32 byte hash tree root of the aggregated attestation data.
bytes attestation_data_root = 1 [ (ethereum.eth.ext.ssz_size) = "32" ];
}
message CommitteeSubnetsSubscribeRequest {
option deprecated = true;
// A list of intended slots to subscribe.
repeated uint64 slots = 1 [
(ethereum.eth.ext.cast_type) =
@@ -900,6 +987,8 @@ message ValidatorIdentity {
// DoppelGangerRequest represents the request sent by the validator in order to
// determine if there is any duplicate instance of it running in the network.
message DoppelGangerRequest {
option deprecated = true;
repeated ValidatorRequest validator_requests = 1;
// ValidatorRequest data type which represents a request for each validator.
@@ -922,6 +1011,8 @@ message DoppelGangerRequest {
// DoppelGangerResponse is the response payload sent by the beacon node
// after it has checked for all duplicate keys in the network.
message DoppelGangerResponse {
option deprecated = true;
message ValidatorResponse {
// The validator's 48 byte BLS public key.
bytes public_key = 1 [
@@ -939,6 +1030,7 @@ message DoppelGangerResponse {
// /eth/v1/events Beacon API endpoint.
message StreamSlotsRequest {
option deprecated = true;
bool verified_only = 1;
}
@@ -947,10 +1039,13 @@ message StreamSlotsRequest {
// Beacon API endpoint
message StreamBlocksRequest {
option deprecated = true;
bool verified_only = 1;
}
message PrepareBeaconProposerRequest {
option deprecated = true;
message FeeRecipientContainer {
// The address of the fee recipient.
bytes fee_recipient = 1 [ (ethereum.eth.ext.ssz_size) = "20" ];
@@ -965,6 +1060,8 @@ message PrepareBeaconProposerRequest {
}
message FeeRecipientByPubKeyRequest {
option deprecated = true;
bytes public_key = 1 [
(ethereum.eth.ext.ssz_size) = "48",
(ethereum.eth.ext.spec_name) = "pubkey"
@@ -972,10 +1069,14 @@ message FeeRecipientByPubKeyRequest {
}
message FeeRecipientByPubKeyResponse {
option deprecated = true;
bytes fee_recipient = 1 [ (ethereum.eth.ext.ssz_size) = "20" ];
}
message AssignValidatorToSubnetRequest {
option deprecated = true;
bytes public_key = 1 [
(ethereum.eth.ext.ssz_size) = "48",
(ethereum.eth.ext.spec_name) = "pubkey"
@@ -984,6 +1085,8 @@ message AssignValidatorToSubnetRequest {
}
message AggregatedSigAndAggregationBitsRequest {
option deprecated = true;
repeated SyncCommitteeMessage msgs = 1;
uint64 slot = 2 [
(ethereum.eth.ext.cast_type) =
@@ -994,6 +1097,8 @@ message AggregatedSigAndAggregationBitsRequest {
}
message AggregatedSigAndAggregationBitsResponse {
option deprecated = true;
bytes aggregated_sig = 1;
bytes bits = 2;
}