mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2025-01-03 16:37:39 +00:00
1b5b8a57e0
* Update io_kubernetes_build commit hash to 1246899 * Update dependency build_bazel_rules_nodejs to v0.33.1 * Update dependency com_github_hashicorp_golang_lru to v0.5.1 * Update libp2p * Update io_bazel_rules_k8s commit hash to e68d5d7 * Starting to remove old protos * Bazel build proto passes * Fixing pb version * Cleaned up core package * Fixing tests * 6 tests failing * Update proto bugs * Fixed incorrect validator ordering proto * Sync with master * Update go-ssz commit * Removed bad copies from v1alpha1 folder * add json spec json to pb handler * add nested proto example * proto/testing test works * fix refactoring build failures * use merged ssz * push latest changes * used forked json encoding * used forked json encoding * fix warning * fix build issues * fix test and lint * fix build * lint
76 lines
2.3 KiB
Protocol Buffer
76 lines
2.3 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package ethereum.eth.v1alpha1;
|
|
|
|
import "google/api/annotations.proto";
|
|
import "google/protobuf/empty.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
option go_package = "github.com/prysmaticlabs/prysm/proto/eth/v1alpha1;eth";
|
|
|
|
// Node service API
|
|
//
|
|
// Node service provides general information about the node itself, the services
|
|
// it supports, chain information and node version.
|
|
service Node {
|
|
// Retrieve the current network sync status of the node.
|
|
rpc GetSyncStatus(google.protobuf.Empty) returns (SyncStatus) {
|
|
option (google.api.http) = {
|
|
get: "/eth/v1alpha1/node/syncing"
|
|
};
|
|
}
|
|
|
|
// Retrieve information about the genesis of Ethereum 2.0.
|
|
rpc GetGenesis(google.protobuf.Empty) returns (Genesis) {
|
|
option (google.api.http) = {
|
|
get: "/eth/v1alpha1/node/genesis"
|
|
};
|
|
}
|
|
|
|
// Retrieve information about the running Ethereum 2.0 node.
|
|
rpc GetVersion(google.protobuf.Empty) returns (Version) {
|
|
option (google.api.http) = {
|
|
get: "/eth/v1alpha1/node/version"
|
|
};
|
|
}
|
|
|
|
// Retrieve the list of services implemented and enabled by this node.
|
|
//
|
|
// Any service not present in this list may return UNIMPLEMENTED or
|
|
// PERMISSION_DENIED. The server may also support fetching services by grpc
|
|
// reflection.
|
|
rpc ListImplementedServices(google.protobuf.Empty) returns (ImplementedServices) {
|
|
option (google.api.http) = {
|
|
get: "/eth/v1alpha1/node/services"
|
|
};
|
|
}
|
|
}
|
|
|
|
// Information about the current network sync status of the node.
|
|
message SyncStatus {
|
|
// Whether or not the node is currently syncing.
|
|
bool syncing = 1;
|
|
}
|
|
|
|
// Information about the genesis of Ethereum 2.0.
|
|
message Genesis {
|
|
// UTC time specified in the chain start event in the deposit contract.
|
|
google.protobuf.Timestamp genesis_time = 1;
|
|
|
|
// Address of the deposit contract in the Ethereum 1 chain.
|
|
bytes deposit_contract_address = 2;
|
|
}
|
|
|
|
// Information about the node version.
|
|
message Version {
|
|
// A string that uniquely identifies the node and its version.
|
|
string version = 1;
|
|
|
|
// Additional metadata that the node would like to provide. This field may
|
|
// be used to list any meaningful data to the client.
|
|
string metadata = 2;
|
|
}
|
|
|
|
message ImplementedServices {
|
|
repeated string services = 1;
|
|
} |