0g-chain/docs/core/proto-docs.md
Denali Marsh 988836dee0
Savings module invariants (#1199)
* add deposits to genesis state

* import/export genesis with deposits

* add helper keeper method + update tests

* invariants + tests

* register invariants on module

* fix genesis test invariant init

* clean up invariants test

* remove comment from test file

* fix invariants test

* run 'make proto-all'
2022-03-30 13:51:06 +02:00

164 KiB
Raw Blame History

Protobuf Documentation

Table of Contents

Top

kava/auction/v1beta1/auction.proto

BaseAuction

BaseAuction defines common attributes of all auctions

Field Type Label Description
id uint64
initiator string
lot cosmos.base.v1beta1.Coin
bidder bytes
bid cosmos.base.v1beta1.Coin
has_received_bids bool
end_time google.protobuf.Timestamp
max_end_time google.protobuf.Timestamp

CollateralAuction

CollateralAuction is a two phase auction. Initially, in forward auction phase, bids can be placed up to a max bid. Then it switches to a reverse auction phase, where the initial amount up for auction is bid down. Unsold Lot is sent to LotReturns, being divided among the addresses by weight. Collateral auctions are normally used to sell off collateral seized from CDPs.

Field Type Label Description
base_auction BaseAuction
corresponding_debt cosmos.base.v1beta1.Coin
max_bid cosmos.base.v1beta1.Coin
lot_returns WeightedAddresses

DebtAuction

DebtAuction is a reverse auction that mints what it pays out. It is normally used to acquire pegged asset to cover the CDP system's debts that were not covered by selling collateral.

Field Type Label Description
base_auction BaseAuction
corresponding_debt cosmos.base.v1beta1.Coin

SurplusAuction

SurplusAuction is a forward auction that burns what it receives from bids. It is normally used to sell off excess pegged asset acquired by the CDP system.

Field Type Label Description
base_auction BaseAuction

WeightedAddresses

WeightedAddresses is a type for storing some addresses and associated weights.

Field Type Label Description
addresses bytes repeated
weights bytes repeated

Top

kava/auction/v1beta1/genesis.proto

GenesisState

GenesisState defines the auction module's genesis state.

Field Type Label Description
next_auction_id uint64
params Params
auctions google.protobuf.Any repeated Genesis auctions

Params

Params defines the parameters for the issuance module.

Field Type Label Description
max_auction_duration google.protobuf.Duration
forward_bid_duration google.protobuf.Duration
reverse_bid_duration google.protobuf.Duration
increment_surplus bytes
increment_debt bytes
increment_collateral bytes

Top

kava/auction/v1beta1/query.proto

QueryAuctionRequest

QueryAuctionRequest is the request type for the Query/Auction RPC method.

Field Type Label Description
auction_id uint64

QueryAuctionResponse

QueryAuctionResponse is the response type for the Query/Auction RPC method.

Field Type Label Description
auction google.protobuf.Any

QueryAuctionsRequest

QueryAuctionsRequest is the request type for the Query/Auctions RPC method.

Field Type Label Description
type string
owner string
denom string
phase string
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

QueryAuctionsResponse

QueryAuctionsResponse is the response type for the Query/Auctions RPC method.

Field Type Label Description
auctions google.protobuf.Any repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

QueryNextAuctionIDRequest

QueryNextAuctionIDRequest defines the request type for querying x/auction next auction ID.

QueryNextAuctionIDResponse

QueryNextAuctionIDResponse defines the response type for querying x/auction next auction ID.

Field Type Label Description
id uint64

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/auction parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/auction parameters.

Field Type Label Description
params Params

Query

Query defines the gRPC querier service for auction module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the auction module. GET /kava/auction/v1beta1/params
Auction QueryAuctionRequest QueryAuctionResponse Auction queries an individual Auction by auction ID GET /kava/auction/v1beta1/auctions/{auction_id}
Auctions QueryAuctionsRequest QueryAuctionsResponse Auctions queries auctions filtered by asset denom, owner address, phase, and auction type GET /kava/auction/v1beta1/auctions
NextAuctionID QueryNextAuctionIDRequest QueryNextAuctionIDResponse NextAuctionID queries the next auction ID GET /kava/auction/v1beta1/next-auction-id

Top

kava/auction/v1beta1/tx.proto

MsgPlaceBid

MsgPlaceBid represents a message used by bidders to place bids on auctions

Field Type Label Description
auction_id uint64
bidder string
amount cosmos.base.v1beta1.Coin

MsgPlaceBidResponse

MsgPlaceBidResponse defines the Msg/PlaceBid response type.

Msg

Msg defines the auction Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
PlaceBid MsgPlaceBid MsgPlaceBidResponse PlaceBid message type used by bidders to place bids on auctions

Top

kava/bep3/v1beta1/bep3.proto

AssetParam

AssetParam defines parameters for each bep3 asset.

Field Type Label Description
denom string denom represents the denominatin for this asset
coin_id int64 coin_id represents the registered coin type to use (https://github.com/satoshilabs/slips/blob/master/slip-0044.md)
supply_limit SupplyLimit supply_limit defines the maximum supply allowed for the asset - a total or time based rate limit
active bool active specifies if the asset is live or paused
deputy_address bytes deputy_address the kava address of the deputy
fixed_fee string fixed_fee defines the fee for incoming swaps
min_swap_amount string min_swap_amount defines the minimum amount able to be swapped in a single message
max_swap_amount string max_swap_amount defines the maximum amount able to be swapped in a single message
min_block_lock uint64 min_block_lock defined the minimum blocks to lock
max_block_lock uint64 min_block_lock defined the maximum blocks to lock

AssetSupply

AssetSupply defines information about an asset's supply.

Field Type Label Description
incoming_supply cosmos.base.v1beta1.Coin incoming_supply represents the incoming supply of an asset
outgoing_supply cosmos.base.v1beta1.Coin outgoing_supply represents the outgoing supply of an asset
current_supply cosmos.base.v1beta1.Coin current_supply represents the current on-chain supply of an asset
time_limited_current_supply cosmos.base.v1beta1.Coin time_limited_current_supply represents the time limited current supply of an asset
time_elapsed google.protobuf.Duration time_elapsed represents the time elapsed

AtomicSwap

AtomicSwap defines an atomic swap between chains for the pricefeed module.

Field Type Label Description
amount cosmos.base.v1beta1.Coin repeated amount represents the amount being swapped
random_number_hash bytes random_number_hash represents the hash of the random number
expire_height uint64 expire_height represents the height when the swap expires
timestamp int64 timestamp represents the timestamp of the swap
sender bytes sender is the kava chain sender of the swap
recipient bytes recipient is the kava chain recipient of the swap
sender_other_chain string sender_other_chain is the sender on the other chain
recipient_other_chain string recipient_other_chain is the recipient on the other chain
closed_block int64 closed_block is the block when the swap is closed
status SwapStatus status represents the current status of the swap
cross_chain bool cross_chain identifies whether the atomic swap is cross chain
direction SwapDirection direction identifies if the swap is incoming or outgoing

Params

Params defines the parameters for the bep3 module.

Field Type Label Description
asset_params AssetParam repeated asset_params define the parameters for each bep3 asset

SupplyLimit

SupplyLimit define the absolute and time-based limits for an assets's supply.

Field Type Label Description
limit string limit defines the total supply allowed
time_limited bool time_limited enables or disables time based supply limiting
time_period google.protobuf.Duration time_period specifies the duration that time_based_limit is evalulated
time_based_limit string time_based_limit defines the maximum supply that can be swapped within time_period

SwapDirection

SwapDirection is the direction of an AtomicSwap

Name Number Description
SWAP_DIRECTION_UNSPECIFIED 0 SWAP_DIRECTION_UNSPECIFIED represents unspecified or invalid swap direcation
SWAP_DIRECTION_INCOMING 1 SWAP_DIRECTION_INCOMING represents is incoming swap (to the kava chain)
SWAP_DIRECTION_OUTGOING 2 SWAP_DIRECTION_OUTGOING represents an outgoing swap (from the kava chain)

SwapStatus

SwapStatus is the status of an AtomicSwap

Name Number Description
SWAP_STATUS_UNSPECIFIED 0 SWAP_STATUS_UNSPECIFIED represents an unspecified status
SWAP_STATUS_OPEN 1 SWAP_STATUS_OPEN represents an open swap
SWAP_STATUS_COMPLETED 2 SWAP_STATUS_COMPLETED represents a completed swap
SWAP_STATUS_EXPIRED 3 SWAP_STATUS_EXPIRED represents an expired swap

Top

kava/bep3/v1beta1/genesis.proto

GenesisState

GenesisState defines the pricefeed module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
atomic_swaps AtomicSwap repeated atomic_swaps represents the state of stored atomic swaps
supplies AssetSupply repeated supplies represents the supply information of each atomic swap
previous_block_time google.protobuf.Timestamp previous_block_time represents the time of the previous block

Top

kava/bep3/v1beta1/query.proto

AssetSupplyResponse

AssetSupplyResponse defines information about an asset's supply.

Field Type Label Description
incoming_supply cosmos.base.v1beta1.Coin incoming_supply represents the incoming supply of an asset
outgoing_supply cosmos.base.v1beta1.Coin outgoing_supply represents the outgoing supply of an asset
current_supply cosmos.base.v1beta1.Coin current_supply represents the current on-chain supply of an asset
time_limited_current_supply cosmos.base.v1beta1.Coin time_limited_current_supply represents the time limited current supply of an asset
time_elapsed google.protobuf.Duration time_elapsed represents the time elapsed

AtomicSwapResponse

AtomicSwapResponse represents the returned atomic swap properties

Field Type Label Description
id string id represents the id of the atomic swap
amount cosmos.base.v1beta1.Coin repeated amount represents the amount being swapped
random_number_hash string random_number_hash represents the hash of the random number
expire_height uint64 expire_height represents the height when the swap expires
timestamp int64 timestamp represents the timestamp of the swap
sender string sender is the kava chain sender of the swap
recipient string recipient is the kava chain recipient of the swap
sender_other_chain string sender_other_chain is the sender on the other chain
recipient_other_chain string recipient_other_chain is the recipient on the other chain
closed_block int64 closed_block is the block when the swap is closed
status SwapStatus status represents the current status of the swap
cross_chain bool cross_chain identifies whether the atomic swap is cross chain
direction SwapDirection direction identifies if the swap is incoming or outgoing

QueryAssetSuppliesRequest

QueryAssetSuppliesRequest is the request type for the Query/AssetSupplies RPC method.

QueryAssetSuppliesResponse

QueryAssetSuppliesResponse is the response type for the Query/AssetSupplies RPC method.

Field Type Label Description
asset_supplies AssetSupplyResponse repeated asset_supplies represents the supplies of returned assets

QueryAssetSupplyRequest

QueryAssetSupplyRequest is the request type for the Query/AssetSupply RPC method.

Field Type Label Description
denom string denom filters the asset response for the specified denom

QueryAssetSupplyResponse

QueryAssetSupplyResponse is the response type for the Query/AssetSupply RPC method.

Field Type Label Description
asset_supply AssetSupplyResponse asset_supply represents the supply of the asset

QueryAtomicSwapRequest

QueryAtomicSwapRequest is the request type for the Query/AtomicSwap RPC method.

Field Type Label Description
swap_id string swap_id represents the id of the swap to query

QueryAtomicSwapResponse

QueryAtomicSwapResponse is the response type for the Query/AtomicSwap RPC method.

Field Type Label Description
atomic_swap AtomicSwapResponse

QueryAtomicSwapsRequest

QueryAtomicSwapsRequest is the request type for the Query/AtomicSwaps RPC method.

Field Type Label Description
involve string involve filters by address
expiration uint64 expiration filters by expiration block height
status SwapStatus status filters by swap status
direction SwapDirection direction fitlers by swap direction
pagination cosmos.base.query.v1beta1.PageRequest

QueryAtomicSwapsResponse

QueryAtomicSwapsResponse is the response type for the Query/AtomicSwaps RPC method.

Field Type Label Description
atomic_swaps AtomicSwapResponse repeated atomic_swap represents the returned atomic swaps for the request
pagination cosmos.base.query.v1beta1.PageResponse

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/bep3 parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/bep3 parameters.

Field Type Label Description
params Params params represents the parameters of the module

Query

Query defines the gRPC querier service for bep3 module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries module params GET /kava/bep3/v1beta1/params
AssetSupply QueryAssetSupplyRequest QueryAssetSupplyResponse AssetSupply queries info about an asset's supply GET /kava/bep3/v1beta1/assetsupply/{denom}
AssetSupplies QueryAssetSuppliesRequest QueryAssetSuppliesResponse AssetSupplies queries a list of asset supplies GET /kava/bep3/v1beta1/assetsupplies
AtomicSwap QueryAtomicSwapRequest QueryAtomicSwapResponse AtomicSwap queries info about an atomic swap GET /kava/bep3/v1beta1/atomicswap/{swap_id}
AtomicSwaps QueryAtomicSwapsRequest QueryAtomicSwapsResponse AtomicSwaps queries a list of atomic swaps GET /kava/bep3/v1beta1/atomicswaps

Top

kava/bep3/v1beta1/tx.proto

MsgClaimAtomicSwap

MsgClaimAtomicSwap defines the Msg/ClaimAtomicSwap request type.

Field Type Label Description
from string
swap_id string
random_number string

MsgClaimAtomicSwapResponse

MsgClaimAtomicSwapResponse defines the Msg/ClaimAtomicSwap response type.

MsgCreateAtomicSwap

MsgCreateAtomicSwap defines the Msg/CreateAtomicSwap request type.

Field Type Label Description
from string
to string
recipient_other_chain string
sender_other_chain string
random_number_hash string
timestamp int64
amount cosmos.base.v1beta1.Coin repeated
height_span uint64

MsgCreateAtomicSwapResponse

MsgCreateAtomicSwapResponse defines the Msg/CreateAtomicSwap response type.

MsgRefundAtomicSwap

MsgRefundAtomicSwap defines the Msg/RefundAtomicSwap request type.

Field Type Label Description
from string
swap_id string

MsgRefundAtomicSwapResponse

MsgRefundAtomicSwapResponse defines the Msg/RefundAtomicSwap response type.

Msg

Msg defines the bep3 Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
CreateAtomicSwap MsgCreateAtomicSwap MsgCreateAtomicSwapResponse CreateAtomicSwap defines a method for creating an atomic swap
ClaimAtomicSwap MsgClaimAtomicSwap MsgClaimAtomicSwapResponse ClaimAtomicSwap defines a method for claiming an atomic swap
RefundAtomicSwap MsgRefundAtomicSwap MsgRefundAtomicSwapResponse RefundAtomicSwap defines a method for refunding an atomic swap

Top

kava/cdp/v1beta1/cdp.proto

CDP

CDP defines the state of a single collateralized debt position.

Field Type Label Description
id uint64
owner bytes
type string
collateral cosmos.base.v1beta1.Coin
principal cosmos.base.v1beta1.Coin
accumulated_fees cosmos.base.v1beta1.Coin
fees_updated google.protobuf.Timestamp
interest_factor string

Deposit

Deposit defines an amount of coins deposited by an account to a cdp

Field Type Label Description
cdp_id uint64
depositor string
amount cosmos.base.v1beta1.Coin

OwnerCDPIndex

OwnerCDPIndex defines the cdp ids for a single cdp owner

Field Type Label Description
cdp_ids uint64 repeated

TotalCollateral

TotalCollateral defines the total collateral of a given collateral type

Field Type Label Description
collateral_type string
amount cosmos.base.v1beta1.Coin

TotalPrincipal

TotalPrincipal defines the total principal of a given collateral type

Field Type Label Description
collateral_type string
amount cosmos.base.v1beta1.Coin

Top

kava/cdp/v1beta1/genesis.proto

CollateralParam

CollateralParam defines governance parameters for each collateral type within the cdp module

Field Type Label Description
denom string
type string
liquidation_ratio string
debt_limit cosmos.base.v1beta1.Coin
stability_fee string
auction_size string
liquidation_penalty string
spot_market_id string
liquidation_market_id string
keeper_reward_percentage string
check_collateralization_index_count string
conversion_factor string

DebtParam

DebtParam defines governance params for debt assets

Field Type Label Description
denom string
reference_asset string
conversion_factor string
debt_floor string

GenesisAccumulationTime

GenesisAccumulationTime defines the previous distribution time and its corresponding denom

Field Type Label Description
collateral_type string
previous_accumulation_time google.protobuf.Timestamp
interest_factor string

GenesisState

GenesisState defines the cdp module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
cdps CDP repeated
deposits Deposit repeated
starting_cdp_id uint64
debt_denom string
gov_denom string
previous_accumulation_times GenesisAccumulationTime repeated
total_principals GenesisTotalPrincipal repeated

GenesisTotalPrincipal

GenesisTotalPrincipal defines the total principal and its corresponding collateral type

Field Type Label Description
collateral_type string
total_principal string

Params

Params defines the parameters for the cdp module.

Field Type Label Description
collateral_params CollateralParam repeated
debt_param DebtParam
global_debt_limit cosmos.base.v1beta1.Coin
surplus_auction_threshold string
surplus_auction_lot string
debt_auction_threshold string
debt_auction_lot string
circuit_breaker bool

Top

kava/cdp/v1beta1/query.proto

CDPResponse

CDPResponse defines the state of a single collateralized debt position.

Field Type Label Description
id uint64
owner string
type string
collateral cosmos.base.v1beta1.Coin
principal cosmos.base.v1beta1.Coin
accumulated_fees cosmos.base.v1beta1.Coin
fees_updated google.protobuf.Timestamp
interest_factor string
collateral_value cosmos.base.v1beta1.Coin
collateralization_ratio string

QueryAccountsRequest

QueryAccountsRequest defines the request type for the Query/Accounts RPC method.

QueryAccountsResponse

QueryAccountsResponse defines the response type for the Query/Accounts RPC method.

Field Type Label Description
accounts cosmos.auth.v1beta1.ModuleAccount repeated

QueryCdpRequest

QueryCdpRequest defines the request type for the Query/Cdp RPC method.

Field Type Label Description
collateral_type string
owner string

QueryCdpResponse

QueryCdpResponse defines the response type for the Query/Cdp RPC method.

Field Type Label Description
cdp CDPResponse

QueryCdpsRequest

QueryCdpsRequest is the params for a filtered CDP query, the request type for the Query/Cdps RPC method.

Field Type Label Description
collateral_type string
owner string
id uint64
ratio string sdk.Dec as a string
pagination cosmos.base.query.v1beta1.PageRequest

QueryCdpsResponse

QueryCdpsResponse defines the response type for the Query/Cdps RPC method.

Field Type Label Description
cdps CDPResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse

QueryDepositsRequest

QueryDepositsRequest defines the request type for the Query/Deposits RPC method.

Field Type Label Description
collateral_type string
owner string

QueryDepositsResponse

QueryDepositsResponse defines the response type for the Query/Deposits RPC method.

Field Type Label Description
deposits Deposit repeated

QueryParamsRequest

QueryParamsRequest defines the request type for the Query/Params RPC method.

QueryParamsResponse

QueryParamsResponse defines the response type for the Query/Params RPC method.

Field Type Label Description
params Params

QueryTotalCollateralRequest

QueryTotalCollateralRequest defines the request type for the Query/TotalCollateral RPC method.

Field Type Label Description
collateral_type string

QueryTotalCollateralResponse

QueryTotalCollateralResponse defines the response type for the Query/TotalCollateral RPC method.

Field Type Label Description
total_collateral TotalCollateral repeated

QueryTotalPrincipalRequest

QueryTotalPrincipalRequest defines the request type for the Query/TotalPrincipal RPC method.

Field Type Label Description
collateral_type string

QueryTotalPrincipalResponse

QueryTotalPrincipalResponse defines the response type for the Query/TotalPrincipal RPC method.

Field Type Label Description
total_principal TotalPrincipal repeated

Query

Query defines the gRPC querier service for cdp module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the cdp module. GET /kava/cdp/v1beta1/params
Accounts QueryAccountsRequest QueryAccountsResponse Accounts queries the CDP module accounts. GET /kava/cdp/v1beta1/accounts
TotalPrincipal QueryTotalPrincipalRequest QueryTotalPrincipalResponse TotalPrincipal queries the total principal of a given collateral type. GET /kava/cdp/v1beta1/totalPrincipal
TotalCollateral QueryTotalCollateralRequest QueryTotalCollateralResponse TotalCollateral queries the total collateral of a given collateral type. GET /kava/cdp/v1beta1/totalCollateral
Cdps QueryCdpsRequest QueryCdpsResponse Cdps queries all active CDPs. GET /kava/cdp/v1beta1/cdps
Cdp QueryCdpRequest QueryCdpResponse Cdp queries a CDP with the input owner address and collateral type. GET /kava/cdp/v1beta1/cdps/{owner}/{collateral_type}
Deposits QueryDepositsRequest QueryDepositsResponse Deposits queries deposits associated with the CDP owned by an address for a collateral type. GET /kava/cdp/v1beta1/cdps/deposits/{owner}/{collateral_type}

Top

kava/cdp/v1beta1/tx.proto

MsgCreateCDP

MsgCreateCDP defines a message to create a new CDP.

Field Type Label Description
sender string
collateral cosmos.base.v1beta1.Coin
principal cosmos.base.v1beta1.Coin
collateral_type string

MsgCreateCDPResponse

MsgCreateCDPResponse defines the Msg/CreateCDP response type.

Field Type Label Description
cdp_id uint64

MsgDeposit

MsgDeposit defines a message to deposit to a CDP.

Field Type Label Description
depositor string
owner string
collateral cosmos.base.v1beta1.Coin
collateral_type string

MsgDepositResponse

MsgDepositResponse defines the Msg/Deposit response type.

MsgDrawDebt

MsgDrawDebt defines a message to draw debt from a CDP.

Field Type Label Description
sender string
collateral_type string
principal cosmos.base.v1beta1.Coin

MsgDrawDebtResponse

MsgDrawDebtResponse defines the Msg/DrawDebt response type.

MsgLiquidate

MsgLiquidate defines a message to attempt to liquidate a CDP whos collateralization ratio is under its liquidation ratio.

Field Type Label Description
keeper string
borrower string
collateral_type string

MsgLiquidateResponse

MsgLiquidateResponse defines the Msg/Liquidate response type.

MsgRepayDebt

MsgRepayDebt defines a message to repay debt from a CDP.

Field Type Label Description
sender string
collateral_type string
payment cosmos.base.v1beta1.Coin

MsgRepayDebtResponse

MsgRepayDebtResponse defines the Msg/RepayDebt response type.

MsgWithdraw

MsgWithdraw defines a message to withdraw collateral from a CDP.

Field Type Label Description
depositor string
owner string
collateral cosmos.base.v1beta1.Coin
collateral_type string

MsgWithdrawResponse

MsgWithdrawResponse defines the Msg/Withdraw response type.

Msg

Msg defines the cdp Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
CreateCDP MsgCreateCDP MsgCreateCDPResponse CreateCDP defines a method to create a new CDP.
Deposit MsgDeposit MsgDepositResponse Deposit defines a method to deposit to a CDP.
Withdraw MsgWithdraw MsgWithdrawResponse Withdraw defines a method to withdraw collateral from a CDP.
DrawDebt MsgDrawDebt MsgDrawDebtResponse DrawDebt defines a method to draw debt from a CDP.
RepayDebt MsgRepayDebt MsgRepayDebtResponse RepayDebt defines a method to repay debt from a CDP.
Liquidate MsgLiquidate MsgLiquidateResponse Liquidate defines a method to attempt to liquidate a CDP whos collateralization ratio is under its liquidation ratio.

Top

kava/committee/v1beta1/committee.proto

BaseCommittee

BaseCommittee is a common type shared by all Committees

Field Type Label Description
id uint64
description string
members bytes repeated
permissions google.protobuf.Any repeated
vote_threshold string Smallest percentage that must vote for a proposal to pass
proposal_duration google.protobuf.Duration The length of time a proposal remains active for. Proposals will close earlier if they get enough votes.
tally_option TallyOption

MemberCommittee

MemberCommittee is an alias of BaseCommittee

Field Type Label Description
base_committee BaseCommittee

TokenCommittee

TokenCommittee supports voting on proposals by token holders

Field Type Label Description
base_committee BaseCommittee
quorum string
tally_denom string

TallyOption

TallyOption enumerates the valid types of a tally.

Name Number Description
TALLY_OPTION_UNSPECIFIED 0 TALLY_OPTION_UNSPECIFIED defines a null tally option.
TALLY_OPTION_FIRST_PAST_THE_POST 1 Votes are tallied each block and the proposal passes as soon as the vote threshold is reached
TALLY_OPTION_DEADLINE 2 Votes are tallied exactly once, when the deadline time is reached

Top

kava/committee/v1beta1/genesis.proto

GenesisState

GenesisState defines the committee module's genesis state.

Field Type Label Description
next_proposal_id uint64
committees google.protobuf.Any repeated
proposals Proposal repeated
votes Vote repeated

Proposal

Proposal is an internal record of a governance proposal submitted to a committee.

Field Type Label Description
content google.protobuf.Any
id uint64
committee_id uint64
deadline google.protobuf.Timestamp

Vote

Vote is an internal record of a single governance vote.

Field Type Label Description
proposal_id uint64
voter bytes
vote_type VoteType

VoteType

VoteType enumerates the valid types of a vote.

Name Number Description
VOTE_TYPE_UNSPECIFIED 0 VOTE_TYPE_UNSPECIFIED defines a no-op vote option.
VOTE_TYPE_YES 1 VOTE_TYPE_YES defines a yes vote option.
VOTE_TYPE_NO 2 VOTE_TYPE_NO defines a no vote option.
VOTE_TYPE_ABSTAIN 3 VOTE_TYPE_ABSTAIN defines an abstain vote option.

Top

kava/committee/v1beta1/permissions.proto

AllowedParamsChange

AllowedParamsChange contains data on the allowed parameter changes for subspace, key, and sub params requirements.

Field Type Label Description
subspace string
key string
single_subparam_allowed_attrs string repeated Requirements for when the subparam value is a single record. This contains list of allowed attribute keys that can be changed on the subparam record.
multi_subparams_requirements SubparamRequirement repeated Requirements for when the subparam value is a list of records. The requirements contains requirements for each record in the list.

GodPermission

GodPermission allows any governance proposal. It is used mainly for testing.

ParamsChangePermission

ParamsChangePermission allows any parameter or sub parameter change proposal.

Field Type Label Description
allowed_params_changes AllowedParamsChange repeated

SoftwareUpgradePermission

SoftwareUpgradePermission permission type for software upgrade proposals

SubparamRequirement

SubparamRequirement contains requirements for a single record in a subparam value list

Field Type Label Description
key string The required attr key of the param record.
val string The required param value for the param record key. The key and value is used to match to the target param record.
allowed_subparam_attr_changes string repeated The sub param attrs that are allowed to be changed.

TextPermission

TextPermission allows any text governance proposal.

Top

kava/committee/v1beta1/proposal.proto

CommitteeChangeProposal

CommitteeChangeProposal is a gov proposal for creating a new committee or modifying an existing one.

Field Type Label Description
title string
description string
new_committee google.protobuf.Any

CommitteeDeleteProposal

CommitteeDeleteProposal is a gov proposal for removing a committee.

Field Type Label Description
title string
description string
committee_id uint64

Top

kava/committee/v1beta1/query.proto

QueryCommitteeRequest

QueryCommitteeRequest defines the request type for querying x/committee committee.

Field Type Label Description
committee_id uint64

QueryCommitteeResponse

QueryCommitteeResponse defines the response type for querying x/committee committee.

Field Type Label Description
committee google.protobuf.Any

QueryCommitteesRequest

QueryCommitteesRequest defines the request type for querying x/committee committees.

QueryCommitteesResponse

QueryCommitteesResponse defines the response type for querying x/committee committees.

Field Type Label Description
committees google.protobuf.Any repeated

QueryNextProposalIDRequest

QueryNextProposalIDRequest defines the request type for querying x/committee NextProposalID.

QueryNextProposalIDResponse

QueryNextProposalIDRequest defines the response type for querying x/committee NextProposalID.

Field Type Label Description
next_proposal_id uint64

QueryProposalRequest

QueryProposalRequest defines the request type for querying x/committee proposal.

Field Type Label Description
proposal_id uint64

QueryProposalResponse

QueryProposalResponse defines the response type for querying x/committee proposal.

Field Type Label Description
pub_proposal google.protobuf.Any
id uint64
committee_id uint64
deadline google.protobuf.Timestamp

QueryProposalsRequest

QueryProposalsRequest defines the request type for querying x/committee proposals.

Field Type Label Description
committee_id uint64

QueryProposalsResponse

QueryProposalsResponse defines the response type for querying x/committee proposals.

Field Type Label Description
proposals QueryProposalResponse repeated

QueryRawParamsRequest

QueryRawParamsRequest defines the request type for querying x/committee raw params.

Field Type Label Description
subspace string
key string

QueryRawParamsResponse

QueryRawParamsResponse defines the response type for querying x/committee raw params.

Field Type Label Description
raw_data string

QueryTallyRequest

QueryTallyRequest defines the request type for querying x/committee tally.

Field Type Label Description
proposal_id uint64

QueryTallyResponse

QueryTallyResponse defines the response type for querying x/committee tally.

Field Type Label Description
proposal_id uint64
yes_votes string
no_votes string
current_votes string
possible_votes string
vote_threshold string
quorum string

QueryVoteRequest

QueryVoteRequest defines the request type for querying x/committee vote.

Field Type Label Description
proposal_id uint64
voter string

QueryVoteResponse

QueryVoteResponse defines the response type for querying x/committee vote.

Field Type Label Description
proposal_id uint64
voter string
vote_type VoteType

QueryVotesRequest

QueryVotesRequest defines the request type for querying x/committee votes.

Field Type Label Description
proposal_id uint64
pagination cosmos.base.query.v1beta1.PageRequest

QueryVotesResponse

QueryVotesResponse defines the response type for querying x/committee votes.

Field Type Label Description
votes QueryVoteResponse repeated votes defined the queried votes.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

Query

Query defines the gRPC querier service for committee module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Committees QueryCommitteesRequest QueryCommitteesResponse Committees queries all committess of the committee module. GET /kava/committee/v1beta1/committees
Committee QueryCommitteeRequest QueryCommitteeResponse Committee queries a committee based on committee ID. GET /kava/committee/v1beta1/committees/{committee_id}
Proposals QueryProposalsRequest QueryProposalsResponse Proposals queries proposals based on committee ID. GET /kava/committee/v1beta1/proposals
Proposal QueryProposalRequest QueryProposalResponse Deposits queries a proposal based on proposal ID. GET /kava/committee/v1beta1/proposals/{proposal_id}
NextProposalID QueryNextProposalIDRequest QueryNextProposalIDResponse NextProposalID queries the next proposal ID of the committee module. GET /kava/committee/v1beta1/next-proposal-id
Votes QueryVotesRequest QueryVotesResponse Votes queries all votes for a single proposal ID. GET /kava/committee/v1beta1/proposals/{proposal_id}/votes
Vote QueryVoteRequest QueryVoteResponse Vote queries the vote of a single voter for a single proposal ID. GET /kava/committee/v1beta1/proposals/{proposal_id}/votes/{voter}
Tally QueryTallyRequest QueryTallyResponse Tally queries the tally of a single proposal ID. GET /kava/committee/v1beta1/proposals/{proposal_id}/tally
RawParams QueryRawParamsRequest QueryRawParamsResponse RawParams queries the raw params data of any subspace and key. GET /kava/committee/v1beta1/raw-params

Top

kava/committee/v1beta1/tx.proto

MsgSubmitProposal

MsgSubmitProposal is used by committee members to create a new proposal that they can vote on.

Field Type Label Description
pub_proposal google.protobuf.Any
proposer string
committee_id uint64

MsgSubmitProposalResponse

MsgSubmitProposalResponse defines the SubmitProposal response type

Field Type Label Description
proposal_id uint64

MsgVote

MsgVote is submitted by committee members to vote on proposals.

Field Type Label Description
proposal_id uint64
voter string
vote_type VoteType

MsgVoteResponse

MsgVoteResponse defines the Vote response type

Msg

Msg defines the committee Msg service

Method Name Request Type Response Type Description HTTP Verb Endpoint
SubmitProposal MsgSubmitProposal MsgSubmitProposalResponse SubmitProposal defines a method for submitting a committee proposal
Vote MsgVote MsgVoteResponse Vote defines a method for voting on a proposal

Top

kava/hard/v1beta1/hard.proto

Borrow

Borrow defines an amount of coins borrowed from a hard module account.

Field Type Label Description
borrower string
amount cosmos.base.v1beta1.Coin repeated
index BorrowInterestFactor repeated

BorrowInterestFactor

BorrowInterestFactor defines an individual borrow interest factor.

Field Type Label Description
denom string
value string

BorrowLimit

BorrowLimit enforces restrictions on a money market.

Field Type Label Description
has_max_limit bool
maximum_limit string
loan_to_value string

CoinsProto

CoinsProto defines a Protobuf wrapper around a Coins slice

Field Type Label Description
coins cosmos.base.v1beta1.Coin repeated

Deposit

Deposit defines an amount of coins deposited into a hard module account.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated
index SupplyInterestFactor repeated

InterestRateModel

InterestRateModel contains information about an asset's interest rate.

Field Type Label Description
base_rate_apy string
base_multiplier string
kink string
jump_multiplier string

MoneyMarket

MoneyMarket is a money market for an individual asset.

Field Type Label Description
denom string
borrow_limit BorrowLimit
spot_market_id string
conversion_factor string
interest_rate_model InterestRateModel
reserve_factor string
keeper_reward_percentage string

Params

Params defines the parameters for the hard module.

Field Type Label Description
money_markets MoneyMarket repeated
minimum_borrow_usd_value string

SupplyInterestFactor

SupplyInterestFactor defines an individual borrow interest factor.

Field Type Label Description
denom string
value string

Top

kava/hard/v1beta1/genesis.proto

GenesisAccumulationTime

GenesisAccumulationTime stores the previous distribution time and its corresponding denom.

Field Type Label Description
collateral_type string
previous_accumulation_time google.protobuf.Timestamp
supply_interest_factor string
borrow_interest_factor string

GenesisState

GenesisState defines the hard module's genesis state.

Field Type Label Description
params Params
previous_accumulation_times GenesisAccumulationTime repeated
deposits Deposit repeated
borrows Borrow repeated
total_supplied cosmos.base.v1beta1.Coin repeated
total_borrowed cosmos.base.v1beta1.Coin repeated
total_reserves cosmos.base.v1beta1.Coin repeated

Top

kava/hard/v1beta1/query.proto

BorrowInterestFactorResponse

BorrowInterestFactorResponse defines an individual borrow interest factor.

Field Type Label Description
denom string
value string sdk.Dec as string

BorrowResponse

BorrowResponse defines an amount of coins borrowed from a hard module account.

Field Type Label Description
borrower string
amount cosmos.base.v1beta1.Coin repeated
index BorrowInterestFactorResponse repeated

DepositResponse

DepositResponse defines an amount of coins deposited into a hard module account.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated
index SupplyInterestFactorResponse repeated

InterestFactor

InterestFactor is a unique type returned by interest factor queries

Field Type Label Description
denom string
borrow_interest_factor string sdk.Dec as String
supply_interest_factor string sdk.Dec as String

MoneyMarketInterestRate

MoneyMarketInterestRate is a unique type returned by interest rate queries

Field Type Label Description
denom string
supply_interest_rate string sdk.Dec as String
borrow_interest_rate string sdk.Dec as String

QueryAccountsRequest

QueryAccountsRequest is the request type for the Query/Accounts RPC method.

QueryAccountsResponse

QueryAccountsResponse is the response type for the Query/Accounts RPC method.

Field Type Label Description
accounts cosmos.auth.v1beta1.ModuleAccount repeated

QueryBorrowsRequest

QueryBorrowsRequest is the request type for the Query/Borrows RPC method.

Field Type Label Description
denom string
owner string
pagination cosmos.base.query.v1beta1.PageRequest

QueryBorrowsResponse

QueryBorrowsResponse is the response type for the Query/Borrows RPC method.

Field Type Label Description
borrows BorrowResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse

QueryDepositsRequest

QueryDepositsRequest is the request type for the Query/Deposits RPC method.

Field Type Label Description
denom string
owner string
pagination cosmos.base.query.v1beta1.PageRequest

QueryDepositsResponse

QueryDepositsResponse is the response type for the Query/Deposits RPC method.

Field Type Label Description
deposits DepositResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse

QueryInterestFactorsRequest

QueryInterestFactorsRequest is the request type for the Query/InterestFactors RPC method.

Field Type Label Description
denom string

QueryInterestFactorsResponse

QueryInterestFactorsResponse is the response type for the Query/InterestFactors RPC method.

Field Type Label Description
interest_factors InterestFactor repeated

QueryInterestRateRequest

QueryInterestRateRequest is the request type for the Query/InterestRate RPC method.

Field Type Label Description
denom string

QueryInterestRateResponse

QueryInterestRateResponse is the response type for the Query/InterestRate RPC method.

Field Type Label Description
interest_rates MoneyMarketInterestRate repeated

QueryParamsRequest

QueryParamsRequest is the request type for the Query/Params RPC method.

QueryParamsResponse

QueryParamsResponse is the response type for the Query/Params RPC method.

Field Type Label Description
params Params

QueryReservesRequest

QueryReservesRequest is the request type for the Query/Reserves RPC method.

Field Type Label Description
denom string

QueryReservesResponse

QueryReservesResponse is the response type for the Query/Reserves RPC method.

Field Type Label Description
amount cosmos.base.v1beta1.Coin repeated

QueryTotalBorrowedRequest

QueryTotalBorrowedRequest is the request type for the Query/TotalBorrowed RPC method.

Field Type Label Description
denom string

QueryTotalBorrowedResponse

QueryTotalBorrowedResponse is the response type for the Query/TotalBorrowed RPC method.

Field Type Label Description
borrowed_coins cosmos.base.v1beta1.Coin repeated

QueryTotalDepositedRequest

QueryTotalDepositedRequest is the request type for the Query/TotalDeposited RPC method.

Field Type Label Description
denom string

QueryTotalDepositedResponse

QueryTotalDepositedResponse is the response type for the Query/TotalDeposited RPC method.

Field Type Label Description
supplied_coins cosmos.base.v1beta1.Coin repeated

QueryUnsyncedBorrowsRequest

QueryUnsyncedBorrowsRequest is the request type for the Query/UnsyncedBorrows RPC method.

Field Type Label Description
denom string
owner string
pagination cosmos.base.query.v1beta1.PageRequest

QueryUnsyncedBorrowsResponse

QueryUnsyncedBorrowsResponse is the response type for the Query/UnsyncedBorrows RPC method.

Field Type Label Description
borrows BorrowResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse

QueryUnsyncedDepositsRequest

QueryUnsyncedDepositsRequest is the request type for the Query/UnsyncedDeposits RPC method.

Field Type Label Description
denom string
owner string
pagination cosmos.base.query.v1beta1.PageRequest

QueryUnsyncedDepositsResponse

QueryUnsyncedDepositsResponse is the response type for the Query/UnsyncedDeposits RPC method.

Field Type Label Description
deposits DepositResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse

SupplyInterestFactorResponse

SupplyInterestFactorResponse defines an individual borrow interest factor.

Field Type Label Description
denom string
value string sdk.Dec as string

Query

Query defines the gRPC querier service for bep3 module.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries module params. GET /kava/hard/v1beta1/params
Accounts QueryAccountsRequest QueryAccountsResponse Accounts queries module accounts. GET /kava/hard/v1beta1/accounts
Deposits QueryDepositsRequest QueryDepositsResponse Deposits queries hard deposits. GET /kava/hard/v1beta1/deposits
UnsyncedDeposits QueryUnsyncedDepositsRequest QueryUnsyncedDepositsResponse UnsyncedDeposits queries unsynced deposits. GET /kava/hard/v1beta1/unsynced-deposits
TotalDeposited QueryTotalDepositedRequest QueryTotalDepositedResponse TotalDeposited queries total coins deposited to hard liquidity pools. GET /kava/hard/v1beta1/total-deposited/{denom}
Borrows QueryBorrowsRequest QueryBorrowsResponse Borrows queries hard borrows. GET /kava/hard/v1beta1/borrows
UnsyncedBorrows QueryUnsyncedBorrowsRequest QueryUnsyncedBorrowsResponse UnsyncedBorrows queries unsynced borrows. GET /kava/hard/v1beta1/unsynced-borrows
TotalBorrowed QueryTotalBorrowedRequest QueryTotalBorrowedResponse TotalBorrowed queries total coins borrowed from hard liquidity pools. GET /kava/hard/v1beta1/total-borrowed/{denom}
InterestRate QueryInterestRateRequest QueryInterestRateResponse InterestRate queries the hard module interest rates. GET /kava/hard/v1beta1/interest-rate/{denom}
Reserves QueryReservesRequest QueryReservesResponse Reserves queries total hard reserve coins. GET /kava/hard/v1beta1/reserves/{denom}
InterestFactors QueryInterestFactorsRequest QueryInterestFactorsResponse InterestFactors queries hard module interest factors. GET /kava/hard/v1beta1/interest-factors/{denom}

Top

kava/hard/v1beta1/tx.proto

MsgBorrow

MsgBorrow defines the Msg/Borrow request type.

Field Type Label Description
borrower string
amount cosmos.base.v1beta1.Coin repeated

MsgBorrowResponse

MsgBorrowResponse defines the Msg/Borrow response type.

MsgDeposit

MsgDeposit defines the Msg/Deposit request type.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated

MsgDepositResponse

MsgDepositResponse defines the Msg/Deposit response type.

MsgLiquidate

MsgLiquidate defines the Msg/Liquidate request type.

Field Type Label Description
keeper string
borrower string

MsgLiquidateResponse

MsgLiquidateResponse defines the Msg/Liquidate response type.

MsgRepay

MsgRepay defines the Msg/Repay request type.

Field Type Label Description
sender string
owner string
amount cosmos.base.v1beta1.Coin repeated

MsgRepayResponse

MsgRepayResponse defines the Msg/Repay response type.

MsgWithdraw

MsgWithdraw defines the Msg/Withdraw request type.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated

MsgWithdrawResponse

MsgWithdrawResponse defines the Msg/Withdraw response type.

Msg

Msg defines the hard Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Deposit MsgDeposit MsgDepositResponse Deposit defines a method for depositing funds to hard liquidity pool.
Withdraw MsgWithdraw MsgWithdrawResponse Withdraw defines a method for withdrawing funds from hard liquidity pool.
Borrow MsgBorrow MsgBorrowResponse Borrow defines a method for borrowing funds from hard liquidity pool.
Repay MsgRepay MsgRepayResponse Repay defines a method for repaying funds borrowed from hard liquidity pool.
Liquidate MsgLiquidate MsgLiquidateResponse Liquidate defines a method for attempting to liquidate a borrower that is over their loan-to-value.

Top

kava/incentive/v1beta1/claims.proto

BaseClaim

BaseClaim is a claim with a single reward coin types

Field Type Label Description
owner bytes
reward cosmos.base.v1beta1.Coin

BaseMultiClaim

BaseMultiClaim is a claim with multiple reward coin types

Field Type Label Description
owner bytes
reward cosmos.base.v1beta1.Coin repeated

DelegatorClaim

DelegatorClaim stores delegation rewards that can be claimed by owner

Field Type Label Description
base_claim BaseMultiClaim
reward_indexes MultiRewardIndex repeated

HardLiquidityProviderClaim

HardLiquidityProviderClaim stores the hard liquidity provider rewards that can be claimed by owner

Field Type Label Description
base_claim BaseMultiClaim
supply_reward_indexes MultiRewardIndex repeated
borrow_reward_indexes MultiRewardIndex repeated

MultiRewardIndex

MultiRewardIndex stores reward accumulation information on multiple reward types

Field Type Label Description
collateral_type string
reward_indexes RewardIndex repeated

MultiRewardIndexesProto

MultiRewardIndexesProto defines a Protobuf wrapper around a MultiRewardIndexes slice

Field Type Label Description
multi_reward_indexes MultiRewardIndex repeated

RewardIndex

RewardIndex stores reward accumulation information

Field Type Label Description
collateral_type string
reward_factor bytes

RewardIndexesProto

RewardIndexesProto defines a Protobuf wrapper around a RewardIndexes slice

Field Type Label Description
reward_indexes RewardIndex repeated

SwapClaim

SwapClaim stores the swap rewards that can be claimed by owner

Field Type Label Description
base_claim BaseMultiClaim
reward_indexes MultiRewardIndex repeated

USDXMintingClaim

USDXMintingClaim is for USDX minting rewards

Field Type Label Description
base_claim BaseClaim
reward_indexes RewardIndex repeated

Top

kava/incentive/v1beta1/params.proto

MultiRewardPeriod

MultiRewardPeriod supports multiple reward types

Field Type Label Description
active bool
collateral_type string
start google.protobuf.Timestamp
end google.protobuf.Timestamp
rewards_per_second cosmos.base.v1beta1.Coin repeated

Multiplier

Multiplier amount the claim rewards get increased by, along with how long the claim rewards are locked

Field Type Label Description
name string
months_lockup int64
factor bytes

MultipliersPerDenom

MultipliersPerDenom is a map of denoms to a set of multipliers

Field Type Label Description
denom string
multipliers Multiplier repeated

Params

Params

Field Type Label Description
usdx_minting_reward_periods RewardPeriod repeated
hard_supply_reward_periods MultiRewardPeriod repeated
hard_borrow_reward_periods MultiRewardPeriod repeated
delegator_reward_periods MultiRewardPeriod repeated
swap_reward_periods MultiRewardPeriod repeated
claim_multipliers MultipliersPerDenom repeated
claim_end google.protobuf.Timestamp

RewardPeriod

RewardPeriod stores the state of an ongoing reward

Field Type Label Description
active bool
collateral_type string
start google.protobuf.Timestamp
end google.protobuf.Timestamp
rewards_per_second cosmos.base.v1beta1.Coin

Top

kava/incentive/v1beta1/genesis.proto

AccumulationTime

AccumulationTime stores the previous reward distribution time and its corresponding collateral type

Field Type Label Description
collateral_type string
previous_accumulation_time google.protobuf.Timestamp

GenesisRewardState

GenesisRewardState groups together the global state for a particular reward so it can be exported in genesis.

Field Type Label Description
accumulation_times AccumulationTime repeated
multi_reward_indexes MultiRewardIndex repeated

GenesisState

GenesisState is the state that must be provided at genesis.

Field Type Label Description
params Params
usdx_reward_state GenesisRewardState
hard_supply_reward_state GenesisRewardState
hard_borrow_reward_state GenesisRewardState
delegator_reward_state GenesisRewardState
swap_reward_state GenesisRewardState
usdx_minting_claims USDXMintingClaim repeated
hard_liquidity_provider_claims HardLiquidityProviderClaim repeated
delegator_claims DelegatorClaim repeated
swap_claims SwapClaim repeated

Top

kava/incentive/v1beta1/tx.proto

MsgClaimDelegatorReward

MsgClaimDelegatorReward message type used to claim delegator rewards

Field Type Label Description
sender string
denoms_to_claim Selection repeated

MsgClaimDelegatorRewardResponse

MsgClaimDelegatorRewardResponse defines the Msg/ClaimDelegatorReward response type.

MsgClaimHardReward

MsgClaimHardReward message type used to claim Hard liquidity provider rewards

Field Type Label Description
sender string
denoms_to_claim Selection repeated

MsgClaimHardRewardResponse

MsgClaimHardRewardResponse defines the Msg/ClaimHardReward response type.

MsgClaimSwapReward

MsgClaimSwapReward message type used to claim delegator rewards

Field Type Label Description
sender string
denoms_to_claim Selection repeated

MsgClaimSwapRewardResponse

MsgClaimSwapRewardResponse defines the Msg/ClaimSwapReward response type.

MsgClaimUSDXMintingReward

MsgClaimUSDXMintingReward message type used to claim USDX minting rewards

Field Type Label Description
sender string
multiplier_name string

MsgClaimUSDXMintingRewardResponse

MsgClaimUSDXMintingRewardResponse defines the Msg/ClaimUSDXMintingReward response type.

Selection

Selection is a pair of denom and multiplier name. It holds the choice of multiplier a user makes when they claim a denom.

Field Type Label Description
denom string
multiplier_name string

Msg

Msg defines the incentive Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
ClaimUSDXMintingReward MsgClaimUSDXMintingReward MsgClaimUSDXMintingRewardResponse ClaimUSDXMintingReward is a message type used to claim USDX minting rewards
ClaimHardReward MsgClaimHardReward MsgClaimHardRewardResponse ClaimHardReward is a message type used to claim Hard liquidity provider rewards
ClaimDelegatorReward MsgClaimDelegatorReward MsgClaimDelegatorRewardResponse ClaimDelegatorReward is a message type used to claim delegator rewards
ClaimSwapReward MsgClaimSwapReward MsgClaimSwapRewardResponse ClaimSwapReward is a message type used to claim delegator rewards

Top

kava/issuance/v1beta1/genesis.proto

Asset

Asset type for assets in the issuance module

Field Type Label Description
owner string
denom string
blocked_addresses string repeated
paused bool
blockable bool
rate_limit RateLimit

AssetSupply

AssetSupply contains information about an asset's rate-limited supply (the total supply of the asset is tracked in the top-level supply module)

Field Type Label Description
current_supply cosmos.base.v1beta1.Coin
time_elapsed google.protobuf.Duration

GenesisState

GenesisState defines the issuance module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
supplies AssetSupply repeated

Params

Params defines the parameters for the issuance module.

Field Type Label Description
assets Asset repeated

RateLimit

RateLimit parameters for rate-limiting the supply of an issued asset

Field Type Label Description
active bool
limit bytes
time_period google.protobuf.Duration

Top

kava/issuance/v1beta1/query.proto

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/issuance parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/issuance parameters.

Field Type Label Description
params Params

Query

Query defines the gRPC querier service for issuance module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the issuance module. GET /kava/issuance/v1beta1/params

Top

kava/issuance/v1beta1/tx.proto

MsgBlockAddress

MsgBlockAddress represents a message used by the issuer to block an address from holding or transferring tokens

Field Type Label Description
sender string
denom string
blocked_address string

MsgBlockAddressResponse

MsgBlockAddressResponse defines the Msg/BlockAddress response type.

MsgIssueTokens

MsgIssueTokens represents a message used by the issuer to issue new tokens

Field Type Label Description
sender string
tokens cosmos.base.v1beta1.Coin
receiver string

MsgIssueTokensResponse

MsgIssueTokensResponse defines the Msg/IssueTokens response type.

MsgRedeemTokens

MsgRedeemTokens represents a message used by the issuer to redeem (burn) tokens

Field Type Label Description
sender string
tokens cosmos.base.v1beta1.Coin

MsgRedeemTokensResponse

MsgRedeemTokensResponse defines the Msg/RedeemTokens response type.

MsgSetPauseStatus

MsgSetPauseStatus message type used by the issuer to pause or unpause status

Field Type Label Description
sender string
denom string
status bool

MsgSetPauseStatusResponse

MsgSetPauseStatusResponse defines the Msg/SetPauseStatus response type.

MsgUnblockAddress

MsgUnblockAddress message type used by the issuer to unblock an address from holding or transferring tokens

Field Type Label Description
sender string
denom string
blocked_address string

MsgUnblockAddressResponse

MsgUnblockAddressResponse defines the Msg/UnblockAddress response type.

Msg

Msg defines the issuance Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
IssueTokens MsgIssueTokens MsgIssueTokensResponse IssueTokens message type used by the issuer to issue new tokens
RedeemTokens MsgRedeemTokens MsgRedeemTokensResponse RedeemTokens message type used by the issuer to redeem (burn) tokens
BlockAddress MsgBlockAddress MsgBlockAddressResponse BlockAddress message type used by the issuer to block an address from holding or transferring tokens
UnblockAddress MsgUnblockAddress MsgUnblockAddressResponse UnblockAddress message type used by the issuer to unblock an address from holding or transferring tokens
SetPauseStatus MsgSetPauseStatus MsgSetPauseStatusResponse SetPauseStatus message type used to pause or unpause status

Top

kava/kavadist/v1beta1/params.proto

Params

Params governance parameters for kavadist module

Field Type Label Description
active bool
periods Period repeated

Period

Period stores the specified start and end dates, and the inflation, expressed as a decimal representing the yearly APR of KAVA tokens that will be minted during that period

Field Type Label Description
start google.protobuf.Timestamp example "2020-03-01T15:20:00Z"
end google.protobuf.Timestamp example "2020-06-01T15:20:00Z"
inflation bytes example "1.000000003022265980" - 10% inflation

Top

kava/kavadist/v1beta1/genesis.proto

GenesisState

GenesisState defines the kavadist module's genesis state.

Field Type Label Description
params Params
previous_block_time google.protobuf.Timestamp

Top

kava/kavadist/v1beta1/proposal.proto

CommunityPoolMultiSpendProposal

CommunityPoolMultiSpendProposal spends from the community pool by sending to one or more addresses

Field Type Label Description
title string
description string
recipient_list MultiSpendRecipient repeated

CommunityPoolMultiSpendProposalJSON

CommunityPoolMultiSpendProposalJSON defines a CommunityPoolMultiSpendProposal with a deposit

Field Type Label Description
title string
description string
recipient_list MultiSpendRecipient repeated
deposit cosmos.base.v1beta1.Coin repeated

MultiSpendRecipient

MultiSpendRecipient defines a recipient and the amount of coins they are receiving

Field Type Label Description
address string
amount cosmos.base.v1beta1.Coin repeated

Top

kava/kavadist/v1beta1/query.proto

QueryBalanceRequest

QueryBalanceRequest defines the request type for querying x/kavadist balance.

QueryBalanceResponse

QueryBalanceResponse defines the response type for querying x/kavadist balance.

Field Type Label Description
coins cosmos.base.v1beta1.Coin repeated

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/kavadist parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/kavadist parameters.

Field Type Label Description
params Params

Query

Query defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries the parameters of x/kavadist module. GET /kava/kavadist/v1beta1/parameters
Balance QueryBalanceRequest QueryBalanceResponse Balance queries the balance of all coins of x/kavadist module. GET /kava/kavadist/v1beta1/balance

Top

kava/pricefeed/v1beta1/store.proto

CurrentPrice

CurrentPrice defines a current price for a particular market in the pricefeed module.

Field Type Label Description
market_id string
price string

Market

Market defines an asset in the pricefeed.

Field Type Label Description
market_id string
base_asset string
quote_asset string
oracles bytes repeated
active bool

Params

Params defines the parameters for the pricefeed module.

Field Type Label Description
markets Market repeated

PostedPrice

PostedPrice defines a price for market posted by a specific oracle.

Field Type Label Description
market_id string
oracle_address bytes
price string
expiry google.protobuf.Timestamp

Top

kava/pricefeed/v1beta1/genesis.proto

GenesisState

GenesisState defines the pricefeed module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
posted_prices PostedPrice repeated

Top

kava/pricefeed/v1beta1/query.proto

CurrentPriceResponse

CurrentPriceResponse defines a current price for a particular market in the pricefeed module.

Field Type Label Description
market_id string
price string

MarketResponse

MarketResponse defines an asset in the pricefeed.

Field Type Label Description
market_id string
base_asset string
quote_asset string
oracles string repeated
active bool

PostedPriceResponse

PostedPriceResponse defines a price for market posted by a specific oracle.

Field Type Label Description
market_id string
oracle_address string
price string
expiry google.protobuf.Timestamp

QueryMarketsRequest

QueryMarketsRequest is the request type for the Query/Markets RPC method.

QueryMarketsResponse

QueryMarketsResponse is the response type for the Query/Markets RPC method.

Field Type Label Description
markets MarketResponse repeated List of markets

QueryOraclesRequest

QueryOraclesRequest is the request type for the Query/Oracles RPC method.

Field Type Label Description
market_id string

QueryOraclesResponse

QueryOraclesResponse is the response type for the Query/Oracles RPC method.

Field Type Label Description
oracles string repeated List of oracle addresses

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/pricefeed parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/pricefeed parameters.

Field Type Label Description
params Params

QueryPriceRequest

QueryPriceRequest is the request type for the Query/PriceRequest RPC method.

Field Type Label Description
market_id string

QueryPriceResponse

QueryPriceResponse is the response type for the Query/Prices RPC method.

Field Type Label Description
price CurrentPriceResponse

QueryPricesRequest

QueryPricesRequest is the request type for the Query/Prices RPC method.

QueryPricesResponse

QueryPricesResponse is the response type for the Query/Prices RPC method.

Field Type Label Description
prices CurrentPriceResponse repeated

QueryRawPricesRequest

QueryRawPricesRequest is the request type for the Query/RawPrices RPC method.

Field Type Label Description
market_id string

QueryRawPricesResponse

QueryRawPricesResponse is the response type for the Query/RawPrices RPC method.

Field Type Label Description
raw_prices PostedPriceResponse repeated

Query

Query defines the gRPC querier service for pricefeed module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the pricefeed module. GET /kava/pricefeed/v1beta1/params
Price QueryPriceRequest QueryPriceResponse Price queries price details based on a market GET /kava/pricefeed/v1beta1/prices/{market_id}
Prices QueryPricesRequest QueryPricesResponse Prices queries all prices GET /kava/pricefeed/v1beta1/prices
RawPrices QueryRawPricesRequest QueryRawPricesResponse RawPrices queries all raw prices based on a market GET /kava/pricefeed/v1beta1/rawprices/{market_id}
Oracles QueryOraclesRequest QueryOraclesResponse Oracles queries all oracles based on a market GET /kava/pricefeed/v1beta1/oracles/{market_id}
Markets QueryMarketsRequest QueryMarketsResponse Markets queries all markets GET /kava/pricefeed/v1beta1/markets

Top

kava/pricefeed/v1beta1/tx.proto

MsgPostPrice

MsgPostPrice represents a method for creating a new post price

Field Type Label Description
from string address of client
market_id string
price string
expiry google.protobuf.Timestamp

MsgPostPriceResponse

MsgPostPriceResponse defines the Msg/PostPrice response type.

Msg

Msg defines the pricefeed Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
PostPrice MsgPostPrice MsgPostPriceResponse PostPrice defines a method for creating a new post price

Top

kava/savings/v1beta1/store.proto

Deposit

Deposit defines an amount of coins deposited into a savings module account.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated

Params

Params defines the parameters for the savings module.

Field Type Label Description
supported_denoms string repeated

Top

kava/savings/v1beta1/genesis.proto

GenesisState

GenesisState defines the savings module's genesis state.

Field Type Label Description
params Params params defines all the parameters of the module.
deposits Deposit repeated

Top

kava/savings/v1beta1/query.proto

QueryDepositsRequest

QueryDepositsRequest defines the request type for querying x/savings deposits.

Field Type Label Description
denom string
owner string
pagination cosmos.base.query.v1beta1.PageRequest

QueryDepositsResponse

QueryDepositsResponse defines the response type for querying x/savings deposits.

Field Type Label Description
deposits Deposit repeated
pagination cosmos.base.query.v1beta1.PageResponse

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/savings parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/savings parameters.

Field Type Label Description
params Params

Query

Query defines the gRPC querier service for savings module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the savings module. GET /kava/savings/v1beta1/params
Deposits QueryDepositsRequest QueryDepositsResponse Deposits queries savings deposits. GET /kava/savings/v1beta1/deposits

Top

kava/savings/v1beta1/tx.proto

MsgDeposit

MsgDeposit defines the Msg/Deposit request type.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated

MsgDepositResponse

MsgDepositResponse defines the Msg/Deposit response type.

MsgWithdraw

MsgWithdraw defines the Msg/Withdraw request type.

Field Type Label Description
depositor string
amount cosmos.base.v1beta1.Coin repeated

MsgWithdrawResponse

MsgWithdrawResponse defines the Msg/Withdraw response type.

Msg

Msg defines the savings Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Deposit MsgDeposit MsgDepositResponse Deposit defines a method for depositing funds to the savings module account
Withdraw MsgWithdraw MsgWithdrawResponse Withdraw defines a method for withdrawing funds to the savings module account

Top

kava/swap/v1beta1/swap.proto

AllowedPool

AllowedPool defines a pool that is allowed to be created

Field Type Label Description
token_a string token_a represents the a token allowed
token_b string token_b represents the b token allowed

Params

Params defines the parameters for the swap module.

Field Type Label Description
allowed_pools AllowedPool repeated allowed_pools defines that pools that are allowed to be created
swap_fee string swap_fee defines the swap fee for all pools

PoolRecord

PoolRecord represents the state of a liquidity pool and is used to store the state of a denominated pool

Field Type Label Description
pool_id string pool_id represents the unique id of the pool
reserves_a cosmos.base.v1beta1.Coin reserves_a is the a token coin reserves
reserves_b cosmos.base.v1beta1.Coin reserves_b is the a token coin reserves
total_shares string total_shares is the total distrubuted shares of the pool

ShareRecord

ShareRecord stores the shares owned for a depositor and pool

Field Type Label Description
depositor bytes depositor represents the owner of the shares
pool_id string pool_id represents the pool the shares belong to
shares_owned string shares_owned represents the number of shares owned by depsoitor for the pool_id

Top

kava/swap/v1beta1/genesis.proto

GenesisState

GenesisState defines the swap module's genesis state.

Field Type Label Description
params Params params defines all the paramaters related to swap
pool_records PoolRecord repeated pool_records defines the available pools
share_records ShareRecord repeated share_records defines the owned shares of each pool

Top

kava/swap/v1beta1/query.proto

DepositResponse

DepositResponse defines a single deposit query response type.

Field Type Label Description
depositor string depositor represents the owner of the deposit
pool_id string pool_id represents the pool the deposit is for
shares_owned string shares_owned presents the shares owned by the depositor for the pool
shares_value cosmos.base.v1beta1.Coin repeated shares_value represents the coin value of the shares_owned

PoolResponse

Pool represents the state of a single pool

Field Type Label Description
name string name represents the name of the pool
coins cosmos.base.v1beta1.Coin repeated coins represents the total reserves of the pool
total_shares string total_shares represents the total shares of the pool

QueryDepositsRequest

QueryDepositsRequest is the request type for the Query/Deposits RPC method.

Field Type Label Description
owner string owner optionally filters deposits by owner
pool_id string pool_id optionally fitlers deposits by pool id
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

QueryDepositsResponse

QueryDepositsResponse is the response type for the Query/Deposits RPC method.

Field Type Label Description
deposits DepositResponse repeated deposits returns the deposits matching the requested parameters
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

QueryParamsRequest

QueryParamsRequest defines the request type for querying x/swap parameters.

QueryParamsResponse

QueryParamsResponse defines the response type for querying x/swap parameters.

Field Type Label Description
params Params params represents the swap module parameters

QueryPoolsRequest

QueryPoolsRequest is the request type for the Query/Pools RPC method.

Field Type Label Description
pool_id string pool_id filters pools by id
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

QueryPoolsResponse

QueryPoolsResponse is the response type for the Query/Pools RPC method.

Field Type Label Description
pools PoolResponse repeated pools represents returned pools
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

Query

Query defines the gRPC querier service for swap module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the swap module. GET /kava/swap/v1beta1/params
Pools QueryPoolsRequest QueryPoolsResponse Pools queries pools based on pool ID GET /kava/swap/v1beta1/pools
Deposits QueryDepositsRequest QueryDepositsResponse Deposits queries deposit details based on owner address and pool GET /kava/swap/v1beta1/deposits

Top

kava/swap/v1beta1/tx.proto

MsgDeposit

MsgDeposit represents a message for depositing liquidity into a pool

Field Type Label Description
depositor string depositor represents the address to deposit funds from
token_a cosmos.base.v1beta1.Coin token_a represents one token of deposit pair
token_b cosmos.base.v1beta1.Coin token_b represents one token of deposit pair
slippage string slippage represents the max decimal percentage price change
deadline int64 deadline represents the unix timestamp to complete the deposit by

MsgDepositResponse

MsgDepositResponse defines the Msg/Deposit response type.

MsgSwapExactForTokens

MsgSwapExactForTokens represents a message for trading exact coinA for coinB

Field Type Label Description
requester string represents the address swaping the tokens
exact_token_a cosmos.base.v1beta1.Coin exact_token_a represents the exact amount to swap for token_b
token_b cosmos.base.v1beta1.Coin token_b represents the desired token_b to swap for
slippage string slippage represents the maximum change in token_b allowed
deadline int64 deadline represents the unix timestamp to complete the swap by

MsgSwapExactForTokensResponse

MsgSwapExactForTokensResponse defines the Msg/SwapExactForTokens response type.

MsgSwapForExactTokens

MsgSwapForExactTokens represents a message for trading coinA for an exact coinB

Field Type Label Description
requester string represents the address swaping the tokens
token_a cosmos.base.v1beta1.Coin token_a represents the desired token_a to swap for
exact_token_b cosmos.base.v1beta1.Coin exact_token_b represents the exact token b amount to swap for token a
slippage string slippage represents the maximum change in token_a allowed
deadline int64 deadline represents the unix timestamp to complete the swap by

MsgSwapForExactTokensResponse

MsgSwapForExactTokensResponse defines the Msg/SwapForExactTokensResponse response type.

MsgWithdraw

MsgWithdraw represents a message for withdrawing liquidity from a pool

Field Type Label Description
from string from represents the address we are withdrawing for
shares string shares represents the amount of shares to withdraw
min_token_a cosmos.base.v1beta1.Coin min_token_a represents the minimum a token to withdraw
min_token_b cosmos.base.v1beta1.Coin min_token_a represents the minimum a token to withdraw
deadline int64 deadline represents the unix timestamp to complete the withdraw by

MsgWithdrawResponse

MsgWithdrawResponse defines the Msg/Withdraw response type.

Msg

Msg defines the swap Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Deposit MsgDeposit MsgDepositResponse Deposit defines a method for depositing liquidity into a pool
Withdraw MsgWithdraw MsgWithdrawResponse Withdraw defines a method for withdrawing liquidity into a pool
SwapExactForTokens MsgSwapExactForTokens MsgSwapExactForTokensResponse SwapExactForTokens represents a message for trading exact coinA for coinB
SwapForExactTokens MsgSwapForExactTokens MsgSwapForExactTokensResponse SwapForExactTokens represents a message for trading coinA for an exact coinB

Scalar Value Types

.proto Type Notes C++ Java Python Go C# PHP Ruby
double double double float float64 double float Float
float float float float float32 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 int32 int integer Bignum or Fixnum (as required)
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 int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)