syntax = "proto3"; package lnrpc; option go_package = "github.com/lightningnetwork/lnd/lnrpc"; /* * Comments in this file will be directly parsed into the API * Documentation as descriptions of the associated method, message, or field. * These descriptions should go right above the definition of the object, and * can be in either block or // comment format. * * An RPC method can be matched to an lncli command by placing a line in the * beginning of the description in exactly the following format: * lncli: `methodname` * * Failure to specify the exact name of the command will cause documentation * generation to fail. * * More information on how exactly the gRPC documentation is generated from * this proto file can be found here: * https://github.com/lightninglabs/lightning-api */ // State service is a always running service that exposes the current state of // the wallet and RPC server. service State { // SubscribeState subscribes to the state of the wallet. The current wallet // state will always be delivered immediately. rpc SubscribeState (SubscribeStateRequest) returns (stream SubscribeStateResponse); // GetState returns the current wallet state without streaming further // changes. rpc GetState (GetStateRequest) returns (GetStateResponse); } enum WalletState { // NON_EXISTING means that the wallet has not yet been initialized. NON_EXISTING = 0; // LOCKED means that the wallet is locked and requires a password to unlock. LOCKED = 1; // UNLOCKED means that the wallet was unlocked successfully, but RPC server // isn't ready. UNLOCKED = 2; // RPC_ACTIVE means that the lnd server is active but not fully ready for // calls. RPC_ACTIVE = 3; // SERVER_ACTIVE means that the lnd server is ready to accept calls. SERVER_ACTIVE = 4; // WAITING_TO_START means that node is waiting to become the leader in a // cluster and is not started yet. WAITING_TO_START = 255; } message SubscribeStateRequest { } message SubscribeStateResponse { WalletState state = 1; } message GetStateRequest { } message GetStateResponse { WalletState state = 1; }