# Protocol Documentation ## Table of Contents - [lspd.proto](#lspd.proto) - [ChannelInformationReply](#lspd.ChannelInformationReply) - [ChannelInformationRequest](#lspd.ChannelInformationRequest) - [PaymentInformation](#lspd.PaymentInformation) - [RegisterPaymentReply](#lspd.RegisterPaymentReply) - [RegisterPaymentRequest](#lspd.RegisterPaymentRequest) - [ChannelOpener](#lspd.ChannelOpener) - [Scalar Value Types](#scalar-value-types)
## lspd.proto ### ChannelInformationReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | name | [string](#string) | | The name of of lsp | | pubkey | [string](#string) | | The identity pubkey of the Lightning node | | host | [string](#string) | | The network location of the lightning node, e.g. `12.34.56.78:9012` or / `localhost:10011` | | channel_capacity | [int64](#int64) | | The channel capacity in satoshis | | target_conf | [int32](#int32) | | The target number of blocks that the funding transaction should be / confirmed by. | | base_fee_msat | [int64](#int64) | | The base fee charged regardless of the number of milli-satoshis sent. | | fee_rate | [double](#double) | | The effective fee rate in milli-satoshis. The precision of this value goes / up to 6 decimal places, so 1e-6. | | time_lock_delta | [uint32](#uint32) | | The required timelock delta for HTLCs forwarded over the channel. | | min_htlc_msat | [int64](#int64) | | The minimum value in millisatoshi we will require for incoming HTLCs on / the channel. | | channel_fee_permyriad | [int64](#int64) | | | | lsp_pubkey | [bytes](#bytes) | | | ### ChannelInformationRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | pubkey | [string](#string) | | The identity pubkey of the Lightning node | ### PaymentInformation | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | payment_hash | [bytes](#bytes) | | | | payment_secret | [bytes](#bytes) | | | | destination | [bytes](#bytes) | | | | incoming_amount_msat | [int64](#int64) | | | | outgoing_amount_msat | [int64](#int64) | | | ### RegisterPaymentReply ### RegisterPaymentRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | blob | [bytes](#bytes) | | | ### ChannelOpener | Method Name | Request Type | Response Type | Description | | ----------- | ------------ | ------------- | ------------| | ChannelInformation | [ChannelInformationRequest](#lspd.ChannelInformationRequest) | [ChannelInformationReply](#lspd.ChannelInformationReply) | | | RegisterPayment | [RegisterPaymentRequest](#lspd.RegisterPaymentRequest) | [RegisterPaymentReply](#lspd.RegisterPaymentReply) | | ## Scalar Value Types | .proto Type | Notes | C++ Type | Java Type | Python Type | | ----------- | ----- | -------- | --------- | ----------- | | double | | double | double | float | | float | | float | float | float | | int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | | int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | | uint32 | Uses variable-length encoding. | uint32 | int | int/long | | uint64 | Uses variable-length encoding. | uint64 | long | int/long | | sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | | sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | | fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | | fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | | sfixed32 | Always four bytes. | int32 | int | int | | sfixed64 | Always eight bytes. | int64 | long | int/long | | bool | | bool | boolean | boolean | | string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | | bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str |