# Protobuf Documentation

# Table of Contents

Top

# cosmos/auth/v1beta1/auth.proto

# BaseAccount

BaseAccount defines a base account type. It contains all the necessary fields for basic account functionality. Any custom account type should extend this type for additional functionality (e.g. vesting).

Field Type Label Description
address string
pub_key google.protobuf.Any
account_number uint64
sequence uint64

# ModuleAccount

ModuleAccount defines an account for modules that holds coins on a pool.

Field Type Label Description
base_account BaseAccount
name string
permissions string repeated

# Params

Params defines the parameters for the auth module.

Field Type Label Description
max_memo_characters uint64
tx_sig_limit uint64
tx_size_cost_per_byte uint64
sig_verify_cost_ed25519 uint64
sig_verify_cost_secp256k1 uint64

Top

# cosmos/auth/v1beta1/genesis.proto

# GenesisState

GenesisState defines the auth module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
accounts google.protobuf.Any repeated accounts are the accounts present at genesis.

Top

# cosmos/auth/v1beta1/query.proto

# QueryAccountRequest

QueryAccountRequest is the request type for the Query/Account RPC method.

Field Type Label Description
address string address defines the address to query for.

# QueryAccountResponse

QueryAccountResponse is the response type for the Query/Account RPC method.

Field Type Label Description
account google.protobuf.Any account defines the account of the corresponding address.

# QueryAccountsRequest

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

Since: cosmos-sdk 0.43

Field Type Label Description
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryAccountsResponse

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

Since: cosmos-sdk 0.43

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

# 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 params defines the parameters of the module.

# Query

Query defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Accounts QueryAccountsRequest QueryAccountsResponse Accounts returns all the existing accounts

Since: cosmos-sdk 0.43 | GET|/cosmos/auth/v1beta1/accounts| | Account | QueryAccountRequest | QueryAccountResponse | Account returns account details based on address. | GET|/cosmos/auth/v1beta1/accounts/{address}| | Params | QueryParamsRequest | QueryParamsResponse | Params queries all parameters. | GET|/cosmos/auth/v1beta1/params|

Top

# cosmos/bank/v1beta1/authz.proto

# SendAuthorization

SendAuthorization allows the grantee to spend up to spend_limit coins from the granter's account.

Since: cosmos-sdk 0.43

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

Top

# cosmos/bank/v1beta1/bank.proto

# DenomUnit

DenomUnit represents a struct that describes a given denomination unit of the basic token.

Field Type Label Description
denom string denom represents the string name of the given denom unit (e.g uatom).
exponent uint32 exponent represents power of 10 exponent that one must raise the base_denom to in order to equal the given DenomUnit's denom 1 denom = 1^exponent base_denom (e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom' with exponent = 6, thus: 1 atom = 10^6 uatom).
aliases string repeated aliases is a list of string aliases for the given denom

# Input

Input models transaction input.

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

# Metadata

Metadata represents a struct that describes a basic token.

Field Type Label Description
description string
denom_units DenomUnit repeated denom_units represents the list of DenomUnit's for a given coin
base string base represents the base denom (should be the DenomUnit with exponent = 0).
display string display indicates the suggested denom that should be displayed in clients.
name string name defines the name of the token (eg: Cosmos Atom)

Since: cosmos-sdk 0.43 | | symbol | string | | symbol is the token symbol usually shown on exchanges (eg: ATOM). This can be the same as the display.

Since: cosmos-sdk 0.43 |

# Output

Output models transaction outputs.

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

# Params

Params defines the parameters for the bank module.

Field Type Label Description
send_enabled SendEnabled repeated
default_send_enabled bool

# SendEnabled

SendEnabled maps coin denom to a send_enabled status (whether a denom is sendable).

Field Type Label Description
denom string
enabled bool

# Supply

Supply represents a struct that passively keeps track of the total supply amounts in the network. This message is deprecated now that supply is indexed by denom.

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

Top

# cosmos/bank/v1beta1/genesis.proto

# Balance

Balance defines an account address and balance pair used in the bank module's genesis state.

Field Type Label Description
address string address is the address of the balance holder.
coins cosmos.base.v1beta1.Coin repeated coins defines the different coins this balance holds.

# GenesisState

GenesisState defines the bank module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of the module.
balances Balance repeated balances is an array containing the balances of all the accounts.
supply cosmos.base.v1beta1.Coin repeated supply represents the total supply. If it is left empty, then supply will be calculated based on the provided balances. Otherwise, it will be used to validate that the sum of the balances equals this amount.
denom_metadata Metadata repeated denom_metadata defines the metadata of the differents coins.

Top

# cosmos/bank/v1beta1/query.proto

# QueryAllBalancesRequest

QueryBalanceRequest is the request type for the Query/AllBalances RPC method.

Field Type Label Description
address string address is the address to query balances for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryAllBalancesResponse

QueryAllBalancesResponse is the response type for the Query/AllBalances RPC method.

Field Type Label Description
balances cosmos.base.v1beta1.Coin repeated balances is the balances of all the coins.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryBalanceRequest

QueryBalanceRequest is the request type for the Query/Balance RPC method.

Field Type Label Description
address string address is the address to query balances for.
denom string denom is the coin denom to query balances for.

# QueryBalanceResponse

QueryBalanceResponse is the response type for the Query/Balance RPC method.

Field Type Label Description
balance cosmos.base.v1beta1.Coin balance is the balance of the coin.

# QueryDenomMetadataRequest

QueryDenomMetadataRequest is the request type for the Query/DenomMetadata RPC method.

Field Type Label Description
denom string denom is the coin denom to query the metadata for.

# QueryDenomMetadataResponse

QueryDenomMetadataResponse is the response type for the Query/DenomMetadata RPC method.

Field Type Label Description
metadata Metadata metadata describes and provides all the client information for the requested token.

# QueryDenomsMetadataRequest

QueryDenomsMetadataRequest is the request type for the Query/DenomsMetadata RPC method.

Field Type Label Description
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryDenomsMetadataResponse

QueryDenomsMetadataResponse is the response type for the Query/DenomsMetadata RPC method.

Field Type Label Description
metadatas Metadata repeated metadata provides the client information for all the registered tokens.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryParamsRequest

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

# QueryParamsResponse

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

Field Type Label Description
params Params

# QuerySupplyOfRequest

QuerySupplyOfRequest is the request type for the Query/SupplyOf RPC method.

Field Type Label Description
denom string denom is the coin denom to query balances for.

# QuerySupplyOfResponse

QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC method.

Field Type Label Description
amount cosmos.base.v1beta1.Coin amount is the supply of the coin.

# QueryTotalSupplyRequest

QueryTotalSupplyRequest is the request type for the Query/TotalSupply RPC method.

Field Type Label Description
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

Since: cosmos-sdk 0.43 |

# QueryTotalSupplyResponse

QueryTotalSupplyResponse is the response type for the Query/TotalSupply RPC method

Field Type Label Description
supply cosmos.base.v1beta1.Coin repeated supply is the supply of the coins
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

Since: cosmos-sdk 0.43 |

# Query

Query defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Balance QueryBalanceRequest QueryBalanceResponse Balance queries the balance of a single coin for a single account. GET /cosmos/bank/v1beta1/balances/{address}/by_denom
AllBalances QueryAllBalancesRequest QueryAllBalancesResponse AllBalances queries the balance of all coins for a single account. GET /cosmos/bank/v1beta1/balances/{address}
TotalSupply QueryTotalSupplyRequest QueryTotalSupplyResponse TotalSupply queries the total supply of all coins. GET /cosmos/bank/v1beta1/supply
SupplyOf QuerySupplyOfRequest QuerySupplyOfResponse SupplyOf queries the supply of a single coin. GET /cosmos/bank/v1beta1/supply/{denom}
Params QueryParamsRequest QueryParamsResponse Params queries the parameters of x/bank module. GET /cosmos/bank/v1beta1/params
DenomMetadata QueryDenomMetadataRequest QueryDenomMetadataResponse DenomsMetadata queries the client metadata of a given coin denomination. GET /cosmos/bank/v1beta1/denoms_metadata/{denom}
DenomsMetadata QueryDenomsMetadataRequest QueryDenomsMetadataResponse DenomsMetadata queries the client metadata for all registered coin denominations. GET /cosmos/bank/v1beta1/denoms_metadata

Top

# cosmos/bank/v1beta1/tx.proto

# MsgMultiSend

MsgMultiSend represents an arbitrary multi-in, multi-out send message.

Field Type Label Description
inputs Input repeated
outputs Output repeated

# MsgMultiSendResponse

MsgMultiSendResponse defines the Msg/MultiSend response type.

# MsgSend

MsgSend represents a message to send coins from one account to another.

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

# MsgSendResponse

MsgSendResponse defines the Msg/Send response type.

# Msg

Msg defines the bank Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Send MsgSend MsgSendResponse Send defines a method for sending coins from one account to another account.
MultiSend MsgMultiSend MsgMultiSendResponse MultiSend defines a method for sending coins from some accounts to other accounts.

Top

# cosmos/crypto/ed25519/keys.proto

# PrivKey

Deprecated: PrivKey defines a ed25519 private key. NOTE: ed25519 keys must not be used in SDK apps except in a tendermint validator context.

Field Type Label Description
key bytes

# PubKey

PubKey is an ed25519 public key for handling Tendermint keys in SDK. It's needed for Any serialization and SDK compatibility. It must not be used in a non Tendermint key context because it doesn't implement ADR-28. Nevertheless, you will like to use ed25519 in app user level then you must create a new proto message and follow ADR-28 for Address construction.

Field Type Label Description
key bytes

Top

# cosmos/crypto/multisig/keys.proto

# LegacyAminoPubKey

LegacyAminoPubKey specifies a public key type which nests multiple public keys and a threshold, it uses legacy amino address rules.

Field Type Label Description
threshold uint32
public_keys google.protobuf.Any repeated

Top

# cosmos/crypto/multisig/v1beta1/multisig.proto

# CompactBitArray

CompactBitArray is an implementation of a space efficient bit array. This is used to ensure that the encoded data takes up a minimal amount of space after proto encoding. This is not thread safe, and is not intended for concurrent usage.

Field Type Label Description
extra_bits_stored uint32
elems bytes

# MultiSignature

MultiSignature wraps the signatures from a multisig.LegacyAminoPubKey. See cosmos.tx.v1betata1.ModeInfo.Multi for how to specify which signers signed and with which modes.

Field Type Label Description
signatures bytes repeated

Top

# cosmos/crypto/secp256k1/keys.proto

# PrivKey

PrivKey defines a secp256k1 private key.

Field Type Label Description
key bytes

# PubKey

PubKey defines a secp256k1 public key Key is the compressed form of the pubkey. The first byte depends is a 0x02 byte if the y-coordinate is the lexicographically largest of the two associated with the x-coordinate. Otherwise the first byte is a 0x03. This prefix is followed with the x-coordinate.

Field Type Label Description
key bytes

Top

# cosmos/crypto/secp256r1/keys.proto

Since: cosmos-sdk 0.43

# PrivKey

PrivKey defines a secp256r1 ECDSA private key.

Field Type Label Description
secret bytes secret number serialized using big-endian encoding

# PubKey

PubKey defines a secp256r1 ECDSA public key.

Field Type Label Description
key bytes Point on secp256r1 curve in a compressed representation as specified in section 4.3.6 of ANSI X9.62: https://webstore.ansi.org/standards/ascx9/ansix9621998

Top

# cosmos/gov/v1beta1/gov.proto

# Deposit

Deposit defines an amount deposited by an account address to an active proposal.

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

# DepositParams

DepositParams defines the params for deposits on governance proposals.

Field Type Label Description
min_deposit cosmos.base.v1beta1.Coin repeated Minimum deposit for a proposal to enter voting period.
max_deposit_period google.protobuf.Duration Maximum period for Atom holders to deposit on a proposal. Initial value: 2 months.

# Proposal

Proposal defines the core field members of a governance proposal.

Field Type Label Description
proposal_id uint64
content google.protobuf.Any
status ProposalStatus
final_tally_result TallyResult
submit_time google.protobuf.Timestamp
deposit_end_time google.protobuf.Timestamp
total_deposit cosmos.base.v1beta1.Coin repeated
voting_start_time google.protobuf.Timestamp
voting_end_time google.protobuf.Timestamp

# TallyParams

TallyParams defines the params for tallying votes on governance proposals.

Field Type Label Description
quorum bytes Minimum percentage of total stake needed to vote for a result to be considered valid.
threshold bytes Minimum proportion of Yes votes for proposal to pass. Default value: 0.5.
veto_threshold bytes Minimum value of Veto votes to Total votes ratio for proposal to be vetoed. Default value: 1/3.

# TallyResult

TallyResult defines a standard tally for a governance proposal.

Field Type Label Description
yes string
abstain string
no string
no_with_veto string

# TextProposal

TextProposal defines a standard text proposal whose changes need to be manually updated in case of approval.

Field Type Label Description
title string
description string

# Vote

Vote defines a vote on a governance proposal. A Vote consists of a proposal ID, the voter, and the vote option.

Field Type Label Description
proposal_id uint64
voter string
option VoteOption Deprecated. Deprecated: Prefer to use options instead. This field is set in queries if and only if len(options) == 1 and that option has weight 1. In all other cases, this field will default to VOTE_OPTION_UNSPECIFIED.
options WeightedVoteOption repeated Since: cosmos-sdk 0.43

# VotingParams

VotingParams defines the params for voting on governance proposals.

Field Type Label Description
voting_period google.protobuf.Duration Length of the voting period.

# WeightedVoteOption

WeightedVoteOption defines a unit of vote for vote split.

Since: cosmos-sdk 0.43

Field Type Label Description
option VoteOption
weight string

# ProposalStatus

ProposalStatus enumerates the valid statuses of a proposal.

Name Number Description
PROPOSAL_STATUS_UNSPECIFIED 0 PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
PROPOSAL_STATUS_DEPOSIT_PERIOD 1 PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit period.
PROPOSAL_STATUS_VOTING_PERIOD 2 PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting period.
PROPOSAL_STATUS_PASSED 3 PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has passed.
PROPOSAL_STATUS_REJECTED 4 PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has been rejected.
PROPOSAL_STATUS_FAILED 5 PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has failed.

# VoteOption

VoteOption enumerates the valid vote options for a given governance proposal.

Name Number Description
VOTE_OPTION_UNSPECIFIED 0 VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
VOTE_OPTION_YES 1 VOTE_OPTION_YES defines a yes vote option.
VOTE_OPTION_ABSTAIN 2 VOTE_OPTION_ABSTAIN defines an abstain vote option.
VOTE_OPTION_NO 3 VOTE_OPTION_NO defines a no vote option.
VOTE_OPTION_NO_WITH_VETO 4 VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.

Top

# cosmos/gov/v1beta1/genesis.proto

# GenesisState

GenesisState defines the gov module's genesis state.

Field Type Label Description
starting_proposal_id uint64 starting_proposal_id is the ID of the starting proposal.
deposits Deposit repeated deposits defines all the deposits present at genesis.
votes Vote repeated votes defines all the votes present at genesis.
proposals Proposal repeated proposals defines all the proposals present at genesis.
deposit_params DepositParams params defines all the paramaters of related to deposit.
voting_params VotingParams params defines all the paramaters of related to voting.
tally_params TallyParams params defines all the paramaters of related to tally.

Top

# cosmos/gov/v1beta1/query.proto

# QueryDepositRequest

QueryDepositRequest is the request type for the Query/Deposit RPC method.

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.
depositor string depositor defines the deposit addresses from the proposals.

# QueryDepositResponse

QueryDepositResponse is the response type for the Query/Deposit RPC method.

Field Type Label Description
deposit Deposit deposit defines the requested deposit.

# QueryDepositsRequest

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

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.
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 Deposit repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryParamsRequest

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

Field Type Label Description
params_type string params_type defines which parameters to query for, can be one of "voting", "tallying" or "deposit".

# QueryParamsResponse

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

Field Type Label Description
voting_params VotingParams voting_params defines the parameters related to voting.
deposit_params DepositParams deposit_params defines the parameters related to deposit.
tally_params TallyParams tally_params defines the parameters related to tally.

# QueryProposalRequest

QueryProposalRequest is the request type for the Query/Proposal RPC method.

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.

# QueryProposalResponse

QueryProposalResponse is the response type for the Query/Proposal RPC method.

Field Type Label Description
proposal Proposal

# QueryProposalsRequest

QueryProposalsRequest is the request type for the Query/Proposals RPC method.

Field Type Label Description
proposal_status ProposalStatus proposal_status defines the status of the proposals.
voter string voter defines the voter address for the proposals.
depositor string depositor defines the deposit addresses from the proposals.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryProposalsResponse

QueryProposalsResponse is the response type for the Query/Proposals RPC method.

Field Type Label Description
proposals Proposal repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryTallyResultRequest

QueryTallyResultRequest is the request type for the Query/Tally RPC method.

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.

# QueryTallyResultResponse

QueryTallyResultResponse is the response type for the Query/Tally RPC method.

Field Type Label Description
tally TallyResult tally defines the requested tally.

# QueryVoteRequest

QueryVoteRequest is the request type for the Query/Vote RPC method.

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.
voter string voter defines the oter address for the proposals.

# QueryVoteResponse

QueryVoteResponse is the response type for the Query/Vote RPC method.

Field Type Label Description
vote Vote vote defined the queried vote.

# QueryVotesRequest

QueryVotesRequest is the request type for the Query/Votes RPC method.

Field Type Label Description
proposal_id uint64 proposal_id defines the unique id of the proposal.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryVotesResponse

QueryVotesResponse is the response type for the Query/Votes RPC method.

Field Type Label Description
votes Vote 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 gov module

Method Name Request Type Response Type Description HTTP Verb Endpoint
Proposal QueryProposalRequest QueryProposalResponse Proposal queries proposal details based on ProposalID. GET /cosmos/gov/v1beta1/proposals/{proposal_id}
Proposals QueryProposalsRequest QueryProposalsResponse Proposals queries all proposals based on given status. GET /cosmos/gov/v1beta1/proposals
Vote QueryVoteRequest QueryVoteResponse Vote queries voted information based on proposalID, voterAddr. GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}
Votes QueryVotesRequest QueryVotesResponse Votes queries votes of a given proposal. GET /cosmos/gov/v1beta1/proposals/{proposal_id}/votes
Params QueryParamsRequest QueryParamsResponse Params queries all parameters of the gov module. GET /cosmos/gov/v1beta1/params/{params_type}
Deposit QueryDepositRequest QueryDepositResponse Deposit queries single deposit information based proposalID, depositAddr. GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}
Deposits QueryDepositsRequest QueryDepositsResponse Deposits queries all deposits of a single proposal. GET /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits
TallyResult QueryTallyResultRequest QueryTallyResultResponse TallyResult queries the tally of a proposal vote. GET /cosmos/gov/v1beta1/proposals/{proposal_id}/tally

Top

# cosmos/gov/v1beta1/tx.proto

# MsgDeposit

MsgDeposit defines a message to submit a deposit to an existing proposal.

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

# MsgDepositResponse

MsgDepositResponse defines the Msg/Deposit response type.

# MsgSubmitProposal

MsgSubmitProposal defines an sdk.Msg type that supports submitting arbitrary proposal Content.

Field Type Label Description
content google.protobuf.Any
initial_deposit cosmos.base.v1beta1.Coin repeated
proposer string

# MsgSubmitProposalResponse

MsgSubmitProposalResponse defines the Msg/SubmitProposal response type.

Field Type Label Description
proposal_id uint64

# MsgVote

MsgVote defines a message to cast a vote.

Field Type Label Description
proposal_id uint64
voter string
option VoteOption

# MsgVoteResponse

MsgVoteResponse defines the Msg/Vote response type.

# MsgVoteWeighted

MsgVoteWeighted defines a message to cast a vote.

Since: cosmos-sdk 0.43

Field Type Label Description
proposal_id uint64
voter string
options WeightedVoteOption repeated

# MsgVoteWeightedResponse

MsgVoteWeightedResponse defines the Msg/VoteWeighted response type.

Since: cosmos-sdk 0.43

# Msg

Msg defines the bank Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
SubmitProposal MsgSubmitProposal MsgSubmitProposalResponse SubmitProposal defines a method to create new proposal given a content.
Vote MsgVote MsgVoteResponse Vote defines a method to add a vote on a specific proposal.
VoteWeighted MsgVoteWeighted MsgVoteWeightedResponse VoteWeighted defines a method to add a weighted vote on a specific proposal.

Since: cosmos-sdk 0.43 | | | Deposit | MsgDeposit | MsgDepositResponse | Deposit defines a method to add deposit on a specific proposal. | |

Top

# cosmos/mint/v1beta1/mint.proto

# Minter

Minter represents the minting state.

Field Type Label Description
inflation string current annual inflation rate
annual_provisions string current annual expected provisions

# Params

Params holds parameters for the mint module.

Field Type Label Description
mint_denom string type of coin to mint
inflation_rate_change string maximum annual change in inflation rate
inflation_max string maximum inflation rate
inflation_min string minimum inflation rate
goal_bonded string goal of percent bonded atoms
blocks_per_year uint64 expected blocks per year

Top

# cosmos/mint/v1beta1/genesis.proto

# GenesisState

GenesisState defines the mint module's genesis state.

Field Type Label Description
minter Minter minter is a space for holding current inflation information.
params Params params defines all the paramaters of the module.

Top

# cosmos/mint/v1beta1/query.proto

# QueryAnnualProvisionsRequest

QueryAnnualProvisionsRequest is the request type for the Query/AnnualProvisions RPC method.

# QueryAnnualProvisionsResponse

QueryAnnualProvisionsResponse is the response type for the Query/AnnualProvisions RPC method.

Field Type Label Description
annual_provisions bytes annual_provisions is the current minting annual provisions value.

# QueryInflationRequest

QueryInflationRequest is the request type for the Query/Inflation RPC method.

# QueryInflationResponse

QueryInflationResponse is the response type for the Query/Inflation RPC method.

Field Type Label Description
inflation bytes inflation is the current minting inflation value.

# 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 params defines the parameters of the module.

# Query

Query provides defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params returns the total set of minting parameters. GET /cosmos/mint/v1beta1/params
Inflation QueryInflationRequest QueryInflationResponse Inflation returns the current minting inflation value. GET /cosmos/mint/v1beta1/inflation
AnnualProvisions QueryAnnualProvisionsRequest QueryAnnualProvisionsResponse AnnualProvisions current minting annual provisions value. GET /cosmos/mint/v1beta1/annual_provisions

Top

# cosmos/slashing/v1beta1/slashing.proto

# Params

Params represents the parameters used for by the slashing module.

Field Type Label Description
signed_blocks_window int64
min_signed_per_window bytes
downtime_jail_duration google.protobuf.Duration
slash_fraction_double_sign bytes
slash_fraction_downtime bytes

# ValidatorSigningInfo

ValidatorSigningInfo defines a validator's signing info for monitoring their liveness activity.

Field Type Label Description
address string
start_height int64 Height at which validator was first a candidate OR was unjailed
index_offset int64 Index which is incremented each time the validator was a bonded in a block and may have signed a precommit or not. This in conjunction with the SignedBlocksWindow param determines the index in the MissedBlocksBitArray.
jailed_until google.protobuf.Timestamp Timestamp until which the validator is jailed due to liveness downtime.
tombstoned bool Whether or not a validator has been tombstoned (killed out of validator set). It is set once the validator commits an equivocation or for any other configured misbehiavor.
missed_blocks_counter int64 A counter kept to avoid unnecessary array reads. Note that Sum(MissedBlocksBitArray) always equals MissedBlocksCounter.

Top

# cosmos/slashing/v1beta1/genesis.proto

# GenesisState

GenesisState defines the slashing module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of related to deposit.
signing_infos SigningInfo repeated signing_infos represents a map between validator addresses and their signing infos.
missed_blocks ValidatorMissedBlocks repeated missed_blocks represents a map between validator addresses and their missed blocks.

# MissedBlock

MissedBlock contains height and missed status as boolean.

Field Type Label Description
index int64 index is the height at which the block was missed.
missed bool missed is the missed status.

# SigningInfo

SigningInfo stores validator signing info of corresponding address.

Field Type Label Description
address string address is the validator address.
validator_signing_info ValidatorSigningInfo validator_signing_info represents the signing info of this validator.

# ValidatorMissedBlocks

ValidatorMissedBlocks contains array of missed blocks of corresponding address.

Field Type Label Description
address string address is the validator address.
missed_blocks MissedBlock repeated missed_blocks is an array of missed blocks by the validator.

Top

# cosmos/slashing/v1beta1/query.proto

# 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

# QuerySigningInfoRequest

QuerySigningInfoRequest is the request type for the Query/SigningInfo RPC method

Field Type Label Description
cons_address string cons_address is the address to query signing info of

# QuerySigningInfoResponse

QuerySigningInfoResponse is the response type for the Query/SigningInfo RPC method

Field Type Label Description
val_signing_info ValidatorSigningInfo val_signing_info is the signing info of requested val cons address

# QuerySigningInfosRequest

QuerySigningInfosRequest is the request type for the Query/SigningInfos RPC method

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

# QuerySigningInfosResponse

QuerySigningInfosResponse is the response type for the Query/SigningInfos RPC method

Field Type Label Description
info ValidatorSigningInfo repeated info is the signing info of all validators
pagination cosmos.base.query.v1beta1.PageResponse

# Query

Query provides defines the gRPC querier service

Method Name Request Type Response Type Description HTTP Verb Endpoint
Params QueryParamsRequest QueryParamsResponse Params queries the parameters of slashing module GET /cosmos/slashing/v1beta1/params
SigningInfo QuerySigningInfoRequest QuerySigningInfoResponse SigningInfo queries the signing info of given cons address GET /cosmos/slashing/v1beta1/signing_infos/{cons_address}
SigningInfos QuerySigningInfosRequest QuerySigningInfosResponse SigningInfos queries signing info of all validators GET /cosmos/slashing/v1beta1/signing_infos

Top

# cosmos/slashing/v1beta1/tx.proto

# MsgUnjail

MsgUnjail defines the Msg/Unjail request type

Field Type Label Description
validator_addr string

# MsgUnjailResponse

MsgUnjailResponse defines the Msg/Unjail response type

# Msg

Msg defines the slashing Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Unjail MsgUnjail MsgUnjailResponse Unjail defines a method for unjailing a jailed validator, thus returning them into the bonded validator set, so they can begin receiving provisions and rewards again.

Top

# cosmos/staking/v1beta1/authz.proto

# StakeAuthorization

StakeAuthorization defines authorization for delegate/undelegate/redelegate.

Since: cosmos-sdk 0.43

Field Type Label Description
max_tokens cosmos.base.v1beta1.Coin max_tokens specifies the maximum amount of tokens can be delegate to a validator. If it is empty, there is no spend limit and any amount of coins can be delegated.
allow_list StakeAuthorization.Validators allow_list specifies list of validator addresses to whom grantee can delegate tokens on behalf of granter's account.
deny_list StakeAuthorization.Validators deny_list specifies list of validator addresses to whom grantee can not delegate tokens.
authorization_type AuthorizationType authorization_type defines one of AuthorizationType.

# StakeAuthorization.Validators

Validators defines list of validator addresses.

Field Type Label Description
address string repeated

# AuthorizationType

AuthorizationType defines the type of staking module authorization type

Since: cosmos-sdk 0.43

Name Number Description
AUTHORIZATION_TYPE_UNSPECIFIED 0 AUTHORIZATION_TYPE_UNSPECIFIED specifies an unknown authorization type
AUTHORIZATION_TYPE_DELEGATE 1 AUTHORIZATION_TYPE_DELEGATE defines an authorization type for Msg/Delegate
AUTHORIZATION_TYPE_UNDELEGATE 2 AUTHORIZATION_TYPE_UNDELEGATE defines an authorization type for Msg/Undelegate
AUTHORIZATION_TYPE_REDELEGATE 3 AUTHORIZATION_TYPE_REDELEGATE defines an authorization type for Msg/BeginRedelegate

Top

# cosmos/staking/v1beta1/staking.proto

# Commission

Commission defines commission parameters for a given validator.

Field Type Label Description
commission_rates CommissionRates commission_rates defines the initial commission rates to be used for creating a validator.
update_time google.protobuf.Timestamp update_time is the last time the commission rate was changed.

# CommissionRates

CommissionRates defines the initial commission rates to be used for creating a validator.

Field Type Label Description
rate string rate is the commission rate charged to delegators, as a fraction.
max_rate string max_rate defines the maximum commission rate which validator can ever charge, as a fraction.
max_change_rate string max_change_rate defines the maximum daily increase of the validator commission, as a fraction.

# DVPair

DVPair is struct that just has a delegator-validator pair with no other data. It is intended to be used as a marshalable pointer. For example, a DVPair can be used to construct the key to getting an UnbondingDelegation from state.

Field Type Label Description
delegator_address string
validator_address string

# DVPairs

DVPairs defines an array of DVPair objects.

Field Type Label Description
pairs DVPair repeated

# DVVTriplet

DVVTriplet is struct that just has a delegator-validator-validator triplet with no other data. It is intended to be used as a marshalable pointer. For example, a DVVTriplet can be used to construct the key to getting a Redelegation from state.

Field Type Label Description
delegator_address string
validator_src_address string
validator_dst_address string

# DVVTriplets

DVVTriplets defines an array of DVVTriplet objects.

Field Type Label Description
triplets DVVTriplet repeated

# Delegation

Delegation represents the bond with tokens held by an account. It is owned by one delegator, and is associated with the voting power of one validator.

Field Type Label Description
delegator_address string delegator_address is the bech32-encoded address of the delegator.
validator_address string validator_address is the bech32-encoded address of the validator.
shares string shares define the delegation shares received.

# DelegationResponse

DelegationResponse is equivalent to Delegation except that it contains a balance in addition to shares which is more suitable for client responses.

Field Type Label Description
delegation Delegation
balance cosmos.base.v1beta1.Coin

# Description

Description defines a validator description.

Field Type Label Description
moniker string moniker defines a human-readable name for the validator.
identity string identity defines an optional identity signature (ex. UPort or Keybase).
website string website defines an optional website link.
security_contact string security_contact defines an optional email for security contact.
details string details define other optional details.

# HistoricalInfo

HistoricalInfo contains header and validator information for a given block. It is stored as part of staking module's state, which persists the n most recent HistoricalInfo (n is set by the staking module's historical_entries parameter).

Field Type Label Description
header tendermint.types.Header
valset Validator repeated

# Params

Params defines the parameters for the staking module.

Field Type Label Description
unbonding_time google.protobuf.Duration unbonding_time is the time duration of unbonding.
max_validators uint32 max_validators is the maximum number of validators.
max_entries uint32 max_entries is the max entries for either unbonding delegation or redelegation (per pair/trio).
historical_entries uint32 historical_entries is the number of historical entries to persist.
bond_denom string bond_denom defines the bondable coin denomination.

# Pool

Pool is used for tracking bonded and not-bonded token supply of the bond denomination.

Field Type Label Description
not_bonded_tokens string
bonded_tokens string

# Redelegation

Redelegation contains the list of a particular delegator's redelegating bonds from a particular source validator to a particular destination validator.

Field Type Label Description
delegator_address string delegator_address is the bech32-encoded address of the delegator.
validator_src_address string validator_src_address is the validator redelegation source operator address.
validator_dst_address string validator_dst_address is the validator redelegation destination operator address.
entries RedelegationEntry repeated entries are the redelegation entries.

redelegation entries |

# RedelegationEntry

RedelegationEntry defines a redelegation object with relevant metadata.

Field Type Label Description
creation_height int64 creation_height defines the height which the redelegation took place.
completion_time google.protobuf.Timestamp completion_time defines the unix time for redelegation completion.
initial_balance string initial_balance defines the initial balance when redelegation started.
shares_dst string shares_dst is the amount of destination-validator shares created by redelegation.

# RedelegationEntryResponse

RedelegationEntryResponse is equivalent to a RedelegationEntry except that it contains a balance in addition to shares which is more suitable for client responses.

Field Type Label Description
redelegation_entry RedelegationEntry
balance string

# RedelegationResponse

RedelegationResponse is equivalent to a Redelegation except that its entries contain a balance in addition to shares which is more suitable for client responses.

Field Type Label Description
redelegation Redelegation
entries RedelegationEntryResponse repeated

# UnbondingDelegation

UnbondingDelegation stores all of a single delegator's unbonding bonds for a single validator in an time-ordered list.

Field Type Label Description
delegator_address string delegator_address is the bech32-encoded address of the delegator.
validator_address string validator_address is the bech32-encoded address of the validator.
entries UnbondingDelegationEntry repeated entries are the unbonding delegation entries.

unbonding delegation entries |

# UnbondingDelegationEntry

UnbondingDelegationEntry defines an unbonding object with relevant metadata.

Field Type Label Description
creation_height int64 creation_height is the height which the unbonding took place.
completion_time google.protobuf.Timestamp completion_time is the unix time for unbonding completion.
initial_balance string initial_balance defines the tokens initially scheduled to receive at completion.
balance string balance defines the tokens to receive at completion.

# ValAddresses

ValAddresses defines a repeated set of validator addresses.

Field Type Label Description
addresses string repeated

# Validator

Validator defines a validator, together with the total amount of the Validator's bond shares and their exchange rate to coins. Slashing results in a decrease in the exchange rate, allowing correct calculation of future undelegations without iterating over delegators. When coins are delegated to this validator, the validator is credited with a delegation whose number of bond shares is based on the amount of coins delegated divided by the current exchange rate. Voting power can be calculated as total bonded shares multiplied by exchange rate.

Field Type Label Description
operator_address string operator_address defines the address of the validator's operator; bech encoded in JSON.
consensus_pubkey google.protobuf.Any consensus_pubkey is the consensus public key of the validator, as a Protobuf Any.
jailed bool jailed defined whether the validator has been jailed from bonded status or not.
status BondStatus status is the validator status (bonded/unbonding/unbonded).
tokens string tokens define the delegated tokens (incl. self-delegation).
delegator_shares string delegator_shares defines total shares issued to a validator's delegators.
description Description description defines the description terms for the validator.
unbonding_height int64 unbonding_height defines, if unbonding, the height at which this validator has begun unbonding.
unbonding_time google.protobuf.Timestamp unbonding_time defines, if unbonding, the min time for the validator to complete unbonding.
commission Commission commission defines the commission parameters.
min_self_delegation string min_self_delegation is the validator's self declared minimum self delegation.

# BondStatus

BondStatus is the status of a validator.

Name Number Description
BOND_STATUS_UNSPECIFIED 0 UNSPECIFIED defines an invalid validator status.
BOND_STATUS_UNBONDED 1 UNBONDED defines a validator that is not bonded.
BOND_STATUS_UNBONDING 2 UNBONDING defines a validator that is unbonding.
BOND_STATUS_BONDED 3 BONDED defines a validator that is bonded.

Top

# cosmos/staking/v1beta1/genesis.proto

# GenesisState

GenesisState defines the staking module's genesis state.

Field Type Label Description
params Params params defines all the paramaters of related to deposit.
last_total_power bytes last_total_power tracks the total amounts of bonded tokens recorded during the previous end block.
last_validator_powers LastValidatorPower repeated last_validator_powers is a special index that provides a historical list of the last-block's bonded validators.
validators Validator repeated delegations defines the validator set at genesis.
delegations Delegation repeated delegations defines the delegations active at genesis.
unbonding_delegations UnbondingDelegation repeated unbonding_delegations defines the unbonding delegations active at genesis.
redelegations Redelegation repeated redelegations defines the redelegations active at genesis.
exported bool

# LastValidatorPower

LastValidatorPower required for validator set update logic.

Field Type Label Description
address string address is the address of the validator.
power int64 power defines the power of the validator.

Top

# cosmos/staking/v1beta1/query.proto

# QueryDelegationRequest

QueryDelegationRequest is request type for the Query/Delegation RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
validator_addr string validator_addr defines the validator address to query for.

# QueryDelegationResponse

QueryDelegationResponse is response type for the Query/Delegation RPC method.

Field Type Label Description
delegation_response DelegationResponse delegation_responses defines the delegation info of a delegation.

# QueryDelegatorDelegationsRequest

QueryDelegatorDelegationsRequest is request type for the Query/DelegatorDelegations RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryDelegatorDelegationsResponse

QueryDelegatorDelegationsResponse is response type for the Query/DelegatorDelegations RPC method.

Field Type Label Description
delegation_responses DelegationResponse repeated delegation_responses defines all the delegations' info of a delegator.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryDelegatorUnbondingDelegationsRequest

QueryDelegatorUnbondingDelegationsRequest is request type for the Query/DelegatorUnbondingDelegations RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryDelegatorUnbondingDelegationsResponse

QueryUnbondingDelegatorDelegationsResponse is response type for the Query/UnbondingDelegatorDelegations RPC method.

Field Type Label Description
unbonding_responses UnbondingDelegation repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryDelegatorValidatorRequest

QueryDelegatorValidatorRequest is request type for the Query/DelegatorValidator RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
validator_addr string validator_addr defines the validator address to query for.

# QueryDelegatorValidatorResponse

QueryDelegatorValidatorResponse response type for the Query/DelegatorValidator RPC method.

Field Type Label Description
validator Validator validator defines the the validator info.

# QueryDelegatorValidatorsRequest

QueryDelegatorValidatorsRequest is request type for the Query/DelegatorValidators RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryDelegatorValidatorsResponse

QueryDelegatorValidatorsResponse is response type for the Query/DelegatorValidators RPC method.

Field Type Label Description
validators Validator repeated validators defines the the validators' info of a delegator.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryHistoricalInfoRequest

QueryHistoricalInfoRequest is request type for the Query/HistoricalInfo RPC method.

Field Type Label Description
height int64 height defines at which height to query the historical info.

# QueryHistoricalInfoResponse

QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo RPC method.

Field Type Label Description
hist HistoricalInfo hist defines the historical info at the given height.

# QueryParamsRequest

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

# QueryParamsResponse

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

Field Type Label Description
params Params params holds all the parameters of this module.

# QueryPoolRequest

QueryPoolRequest is request type for the Query/Pool RPC method.

# QueryPoolResponse

QueryPoolResponse is response type for the Query/Pool RPC method.

Field Type Label Description
pool Pool pool defines the pool info.

# QueryRedelegationsRequest

QueryRedelegationsRequest is request type for the Query/Redelegations RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
src_validator_addr string src_validator_addr defines the validator address to redelegate from.
dst_validator_addr string dst_validator_addr defines the validator address to redelegate to.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryRedelegationsResponse

QueryRedelegationsResponse is response type for the Query/Redelegations RPC method.

Field Type Label Description
redelegation_responses RedelegationResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryUnbondingDelegationRequest

QueryUnbondingDelegationRequest is request type for the Query/UnbondingDelegation RPC method.

Field Type Label Description
delegator_addr string delegator_addr defines the delegator address to query for.
validator_addr string validator_addr defines the validator address to query for.

# QueryUnbondingDelegationResponse

QueryDelegationResponse is response type for the Query/UnbondingDelegation RPC method.

Field Type Label Description
unbond UnbondingDelegation unbond defines the unbonding information of a delegation.

# QueryValidatorDelegationsRequest

QueryValidatorDelegationsRequest is request type for the Query/ValidatorDelegations RPC method

Field Type Label Description
validator_addr string validator_addr defines the validator address to query for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryValidatorDelegationsResponse

QueryValidatorDelegationsResponse is response type for the Query/ValidatorDelegations RPC method

Field Type Label Description
delegation_responses DelegationResponse repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryValidatorRequest

QueryValidatorRequest is response type for the Query/Validator RPC method

Field Type Label Description
validator_addr string validator_addr defines the validator address to query for.

# QueryValidatorResponse

QueryValidatorResponse is response type for the Query/Validator RPC method

Field Type Label Description
validator Validator validator defines the the validator info.

# QueryValidatorUnbondingDelegationsRequest

QueryValidatorUnbondingDelegationsRequest is required type for the Query/ValidatorUnbondingDelegations RPC method

Field Type Label Description
validator_addr string validator_addr defines the validator address to query for.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryValidatorUnbondingDelegationsResponse

QueryValidatorUnbondingDelegationsResponse is response type for the Query/ValidatorUnbondingDelegations RPC method.

Field Type Label Description
unbonding_responses UnbondingDelegation repeated
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# QueryValidatorsRequest

QueryValidatorsRequest is request type for Query/Validators RPC method.

Field Type Label Description
status string status enables to query for validators matching a given status.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an optional pagination for the request.

# QueryValidatorsResponse

QueryValidatorsResponse is response type for the Query/Validators RPC method

Field Type Label Description
validators Validator repeated validators contains all the queried validators.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines the pagination in the response.

# Query

Query defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Validators QueryValidatorsRequest QueryValidatorsResponse Validators queries all validators that match the given status. GET /cosmos/staking/v1beta1/validators
Validator QueryValidatorRequest QueryValidatorResponse Validator queries validator info for given validator address. GET /cosmos/staking/v1beta1/validators/{validator_addr}
ValidatorDelegations QueryValidatorDelegationsRequest QueryValidatorDelegationsResponse ValidatorDelegations queries delegate info for given validator. GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations
ValidatorUnbondingDelegations QueryValidatorUnbondingDelegationsRequest QueryValidatorUnbondingDelegationsResponse ValidatorUnbondingDelegations queries unbonding delegations of a validator. GET /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations
Delegation QueryDelegationRequest QueryDelegationResponse Delegation queries delegate info for given validator delegator pair. GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}
UnbondingDelegation QueryUnbondingDelegationRequest QueryUnbondingDelegationResponse UnbondingDelegation queries unbonding info for given validator delegator pair. GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation
DelegatorDelegations QueryDelegatorDelegationsRequest QueryDelegatorDelegationsResponse DelegatorDelegations queries all delegations of a given delegator address. GET /cosmos/staking/v1beta1/delegations/{delegator_addr}
DelegatorUnbondingDelegations QueryDelegatorUnbondingDelegationsRequest QueryDelegatorUnbondingDelegationsResponse DelegatorUnbondingDelegations queries all unbonding delegations of a given delegator address. GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations
Redelegations QueryRedelegationsRequest QueryRedelegationsResponse Redelegations queries redelegations of given address. GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations
DelegatorValidators QueryDelegatorValidatorsRequest QueryDelegatorValidatorsResponse DelegatorValidators queries all validators info for given delegator address. GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators
DelegatorValidator QueryDelegatorValidatorRequest QueryDelegatorValidatorResponse DelegatorValidator queries validator info for given delegator validator pair. GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}
HistoricalInfo QueryHistoricalInfoRequest QueryHistoricalInfoResponse HistoricalInfo queries the historical info for given height. GET /cosmos/staking/v1beta1/historical_info/{height}
Pool QueryPoolRequest QueryPoolResponse Pool queries the pool info. GET /cosmos/staking/v1beta1/pool
Params QueryParamsRequest QueryParamsResponse Parameters queries the staking parameters. GET /cosmos/staking/v1beta1/params

Top

# cosmos/staking/v1beta1/tx.proto

# MsgBeginRedelegate

MsgBeginRedelegate defines a SDK message for performing a redelegation of coins from a delegator and source validator to a destination validator.

Field Type Label Description
delegator_address string
validator_src_address string
validator_dst_address string
amount cosmos.base.v1beta1.Coin

# MsgBeginRedelegateResponse

MsgBeginRedelegateResponse defines the Msg/BeginRedelegate response type.

Field Type Label Description
completion_time google.protobuf.Timestamp

# MsgCreateValidator

MsgCreateValidator defines a SDK message for creating a new validator.

Field Type Label Description
description Description
commission CommissionRates
min_self_delegation string
delegator_address string
validator_address string
pubkey google.protobuf.Any
value cosmos.base.v1beta1.Coin

# MsgCreateValidatorResponse

MsgCreateValidatorResponse defines the Msg/CreateValidator response type.

# MsgDelegate

MsgDelegate defines a SDK message for performing a delegation of coins from a delegator to a validator.

Field Type Label Description
delegator_address string
validator_address string
amount cosmos.base.v1beta1.Coin

# MsgDelegateResponse

MsgDelegateResponse defines the Msg/Delegate response type.

# MsgEditValidator

MsgEditValidator defines a SDK message for editing an existing validator.

Field Type Label Description
description Description
validator_address string
commission_rate string We pass a reference to the new commission rate and min self delegation as it's not mandatory to update. If not updated, the deserialized rate will be zero with no way to distinguish if an update was intended. REF: #2373
min_self_delegation string

# MsgEditValidatorResponse

MsgEditValidatorResponse defines the Msg/EditValidator response type.

# MsgUndelegate

MsgUndelegate defines a SDK message for performing an undelegation from a delegate and a validator.

Field Type Label Description
delegator_address string
validator_address string
amount cosmos.base.v1beta1.Coin

# MsgUndelegateResponse

MsgUndelegateResponse defines the Msg/Undelegate response type.

Field Type Label Description
completion_time google.protobuf.Timestamp

# Msg

Msg defines the staking Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
CreateValidator MsgCreateValidator MsgCreateValidatorResponse CreateValidator defines a method for creating a new validator.
EditValidator MsgEditValidator MsgEditValidatorResponse EditValidator defines a method for editing an existing validator.
Delegate MsgDelegate MsgDelegateResponse Delegate defines a method for performing a delegation of coins from a delegator to a validator.
BeginRedelegate MsgBeginRedelegate MsgBeginRedelegateResponse BeginRedelegate defines a method for performing a redelegation of coins from a delegator and source validator to a destination validator.
Undelegate MsgUndelegate MsgUndelegateResponse Undelegate defines a method for performing an undelegation from a delegate and a validator.

Top

# cosmos/tx/signing/v1beta1/signing.proto

# SignatureDescriptor

SignatureDescriptor is a convenience type which represents the full data for a signature including the public key of the signer, signing modes and the signature itself. It is primarily used for coordinating signatures between clients.

Field Type Label Description
public_key google.protobuf.Any public_key is the public key of the signer
data SignatureDescriptor.Data
sequence uint64 sequence is the sequence of the account, which describes the number of committed transactions signed by a given address. It is used to prevent replay attacks.

# SignatureDescriptor.Data

Data represents signature data

Field Type Label Description
single SignatureDescriptor.Data.Single single represents a single signer
multi SignatureDescriptor.Data.Multi multi represents a multisig signer

# SignatureDescriptor.Data.Multi

Multi is the signature data for a multisig public key

Field Type Label Description
bitarray cosmos.crypto.multisig.v1beta1.CompactBitArray bitarray specifies which keys within the multisig are signing
signatures SignatureDescriptor.Data repeated signatures is the signatures of the multi-signature

# SignatureDescriptor.Data.Single

Single is the signature data for a single signer

Field Type Label Description
mode SignMode mode is the signing mode of the single signer
signature bytes signature is the raw signature bytes

# SignatureDescriptors

SignatureDescriptors wraps multiple SignatureDescriptor's.

Field Type Label Description
signatures SignatureDescriptor repeated signatures are the signature descriptors

# SignMode

SignMode represents a signing mode with its own security guarantees.

Name Number Description
SIGN_MODE_UNSPECIFIED 0 SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be rejected
SIGN_MODE_DIRECT 1 SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is verified with raw bytes from Tx
SIGN_MODE_TEXTUAL 2 SIGN_MODE_TEXTUAL is a future signing mode that will verify some human-readable textual representation on top of the binary representation from SIGN_MODE_DIRECT
SIGN_MODE_LEGACY_AMINO_JSON 127 SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses Amino JSON and will be removed in the future

Top

# cosmos/tx/v1beta1/tx.proto

# AuthInfo

AuthInfo describes the fee and signer modes that are used to sign a transaction.

Field Type Label Description
signer_infos SignerInfo repeated signer_infos defines the signing modes for the required signers. The number and order of elements must match the required signers from TxBody's messages. The first element is the primary signer and the one which pays the fee.
fee Fee Fee is the fee and gas limit for the transaction. The first signer is the primary signer and the one which pays the fee. The fee can be calculated based on the cost of evaluating the body and doing signature verification of the signers. This can be estimated via simulation.

# Fee

Fee includes the amount of coins paid in fees and the maximum gas to be used by the transaction. The ratio yields an effective "gasprice", which must be above some miminum to be accepted into the mempool.

Field Type Label Description
amount cosmos.base.v1beta1.Coin repeated amount is the amount of coins to be paid as a fee
gas_limit uint64 gas_limit is the maximum gas that can be used in transaction processing before an out of gas error occurs
payer string if unset, the first signer is responsible for paying the fees. If set, the specified account must pay the fees. the payer must be a tx signer (and thus have signed this field in AuthInfo). setting this field does not change the ordering of required signers for the transaction.
granter string if set, the fee payer (either the first signer or the value of the payer field) requests that a fee grant be used to pay fees instead of the fee payer's own balance. If an appropriate fee grant does not exist or the chain does not support fee grants, this will fail

# ModeInfo

ModeInfo describes the signing mode of a single or nested multisig signer.

Field Type Label Description
single ModeInfo.Single single represents a single signer
multi ModeInfo.Multi multi represents a nested multisig signer

# ModeInfo.Multi

Multi is the mode info for a multisig public key

Field Type Label Description
bitarray cosmos.crypto.multisig.v1beta1.CompactBitArray bitarray specifies which keys within the multisig are signing
mode_infos ModeInfo repeated mode_infos is the corresponding modes of the signers of the multisig which could include nested multisig public keys

# ModeInfo.Single

Single is the mode info for a single signer. It is structured as a message to allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the future

Field Type Label Description
mode cosmos.tx.signing.v1beta1.SignMode mode is the signing mode of the single signer

# SignDoc

SignDoc is the type used for generating sign bytes for SIGN_MODE_DIRECT.

Field Type Label Description
body_bytes bytes body_bytes is protobuf serialization of a TxBody that matches the representation in TxRaw.
auth_info_bytes bytes auth_info_bytes is a protobuf serialization of an AuthInfo that matches the representation in TxRaw.
chain_id string chain_id is the unique identifier of the chain this transaction targets. It prevents signed transactions from being used on another chain by an attacker
account_number uint64 account_number is the account number of the account in state

# SignerInfo

SignerInfo describes the public key and signing mode of a single top-level signer.

Field Type Label Description
public_key google.protobuf.Any public_key is the public key of the signer. It is optional for accounts that already exist in state. If unset, the verifier can use the required \ signer address for this position and lookup the public key.
mode_info ModeInfo mode_info describes the signing mode of the signer and is a nested structure to support nested multisig pubkey's
sequence uint64 sequence is the sequence of the account, which describes the number of committed transactions signed by a given address. It is used to prevent replay attacks.

# Tx

Tx is the standard type used for broadcasting transactions.

Field Type Label Description
body TxBody body is the processable content of the transaction
auth_info AuthInfo auth_info is the authorization related content of the transaction, specifically signers, signer modes and fee
signatures bytes repeated signatures is a list of signatures that matches the length and order of AuthInfo's signer_infos to allow connecting signature meta information like public key and signing mode by position.

# TxBody

TxBody is the body of a transaction that all signers sign over.

Field Type Label Description
messages google.protobuf.Any repeated messages is a list of messages to be executed. The required signers of those messages define the number and order of elements in AuthInfo's signer_infos and Tx's signatures. Each required signer address is added to the list only the first time it occurs. By convention, the first required signer (usually from the first message) is referred to as the primary signer and pays the fee for the whole transaction.
memo string memo is any arbitrary note/comment to be added to the transaction. WARNING: in clients, any publicly exposed text should not be called memo, but should be called note instead (see https://github.com/cosmos/cosmos-sdk/issues/9122).
timeout_height uint64 timeout is the block height after which this transaction will not be processed by the chain
extension_options google.protobuf.Any repeated extension_options are arbitrary options that can be added by chains when the default options are not sufficient. If any of these are present and can't be handled, the transaction will be rejected
non_critical_extension_options google.protobuf.Any repeated extension_options are arbitrary options that can be added by chains when the default options are not sufficient. If any of these are present and can't be handled, they will be ignored

# TxRaw

TxRaw is a variant of Tx that pins the signer's exact binary representation of body and auth_info. This is used for signing, broadcasting and verification. The binary serialize(tx: TxRaw) is stored in Tendermint and the hash sha256(serialize(tx: TxRaw)) becomes the "txhash", commonly used as the transaction ID.

Field Type Label Description
body_bytes bytes body_bytes is a protobuf serialization of a TxBody that matches the representation in SignDoc.
auth_info_bytes bytes auth_info_bytes is a protobuf serialization of an AuthInfo that matches the representation in SignDoc.
signatures bytes repeated signatures is a list of signatures that matches the length and order of AuthInfo's signer_infos to allow connecting signature meta information like public key and signing mode by position.

Top

# cosmos/tx/v1beta1/service.proto

# BroadcastTxRequest

BroadcastTxRequest is the request type for the Service.BroadcastTxRequest RPC method.

Field Type Label Description
tx_bytes bytes tx_bytes is the raw transaction.
mode BroadcastMode

# BroadcastTxResponse

BroadcastTxResponse is the response type for the Service.BroadcastTx method.

Field Type Label Description
tx_response cosmos.base.abci.v1beta1.TxResponse tx_response is the queried TxResponses.

# GetTxRequest

GetTxRequest is the request type for the Service.GetTx RPC method.

Field Type Label Description
hash string hash is the tx hash to query, encoded as a hex string.

# GetTxResponse

GetTxResponse is the response type for the Service.GetTx method.

Field Type Label Description
tx Tx tx is the queried transaction.
tx_response cosmos.base.abci.v1beta1.TxResponse tx_response is the queried TxResponses.

# GetTxsEventRequest

GetTxsEventRequest is the request type for the Service.TxsByEvents RPC method.

Field Type Label Description
events string repeated events is the list of transaction event type.
pagination cosmos.base.query.v1beta1.PageRequest pagination defines an pagination for the request.
order_by OrderBy

# GetTxsEventResponse

GetTxsEventResponse is the response type for the Service.TxsByEvents RPC method.

Field Type Label Description
txs Tx repeated txs is the list of queried transactions.
tx_responses cosmos.base.abci.v1beta1.TxResponse repeated tx_responses is the list of queried TxResponses.
pagination cosmos.base.query.v1beta1.PageResponse pagination defines an pagination for the response.

# SimulateRequest

SimulateRequest is the request type for the Service.Simulate RPC method.

Field Type Label Description
tx Tx Deprecated. tx is the transaction to simulate. Deprecated. Send raw tx bytes instead.
tx_bytes bytes tx_bytes is the raw transaction.

Since: cosmos-sdk 0.43 |

# SimulateResponse

SimulateResponse is the response type for the Service.SimulateRPC method.

Field Type Label Description
gas_info cosmos.base.abci.v1beta1.GasInfo gas_info is the information about gas used in the simulation.
result cosmos.base.abci.v1beta1.Result result is the result of the simulation.

# BroadcastMode

BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC method.

Name Number Description
BROADCAST_MODE_UNSPECIFIED 0 zero-value for mode ordering
BROADCAST_MODE_BLOCK 1 BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for the tx to be committed in a block.
BROADCAST_MODE_SYNC 2 BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for a CheckTx execution response only.
BROADCAST_MODE_ASYNC 3 BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns immediately.

# OrderBy

OrderBy defines the sorting order

Name Number Description
ORDER_BY_UNSPECIFIED 0 ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case.
ORDER_BY_ASC 1 ORDER_BY_ASC defines ascending order
ORDER_BY_DESC 2 ORDER_BY_DESC defines descending order

# Service

Service defines a gRPC service for interacting with transactions.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Simulate SimulateRequest SimulateResponse Simulate simulates executing a transaction for estimating gas usage. POST /cosmos/tx/v1beta1/simulate
GetTx GetTxRequest GetTxResponse GetTx fetches a tx by hash. GET /cosmos/tx/v1beta1/txs/{hash}
BroadcastTx BroadcastTxRequest BroadcastTxResponse BroadcastTx broadcast transaction. POST /cosmos/tx/v1beta1/txs
GetTxsEvent GetTxsEventRequest GetTxsEventResponse GetTxsEvent fetches txs by event. GET /cosmos/tx/v1beta1/txs

Top

# ethermint/crypto/v1/ethsecp256k1/keys.proto

# PrivKey

PrivKey defines a type alias for an ecdsa.PrivateKey that implements Tendermint's PrivateKey interface.

Field Type Label Description
key bytes

# PubKey

PubKey defines a type alias for an ecdsa.PublicKey that implements Tendermint's PubKey interface. It represents the 33-byte compressed public key format.

Field Type Label Description
key bytes

Top

# ethermint/types/v1/account.proto

# EthAccount

EthAccount implements the authtypes.AccountI interface and embeds an authtypes.BaseAccount type. It is compatible with the auth AccountKeeper.

Field Type Label Description
base_account cosmos.auth.v1beta1.BaseAccount
code_hash string

Top

# ethermint/types/v1/web3.proto

# ExtensionOptionsWeb3Tx

Field Type Label Description
typed_data_chain_id uint64 typed data chain id used only in EIP712 Domain and should match Ethereum network ID in a Web3 provider (e.g. Metamask).
fee_payer string fee payer is an account address for the fee payer. It will be validated during EIP712 signature checking.
fee_payer_sig bytes fee payer sig is a signature data from the fee paying account, allows to perform fee delegation when using EIP712 Domain.

Top

# prc10/prc10.proto

# Params

Field Type Label Description
issue_token_base_fee cosmos.base.v1beta1.Coin
operate_token_fee_ratio string

# Token

Field Type Label Description
symbol string
name string
scale uint32
min_unit string
initial_supply uint64
max_supply uint64
mintable bool
owner string

Top

# prc10/genesis.proto

# GenesisState

GenesisState defines the token module's genesis state.

Field Type Label Description
params Params
tokens Token repeated

Top

# prc10/query.proto

# QueryFeesRequest

Field Type Label Description
symbol string

# QueryFeesResponse

Field Type Label Description
exist bool
issue_fee cosmos.base.v1beta1.Coin
operate_fee cosmos.base.v1beta1.Coin

# QueryParamsRequest

# QueryParamsResponse

Field Type Label Description
params Params
res cosmos.base.query.v1beta1.PageResponse

# QueryTokenRequest

Field Type Label Description
denom string

# QueryTokenResponse

Field Type Label Description
Token google.protobuf.Any

# QueryTokensRequest

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

# QueryTokensResponse

Field Type Label Description
Tokens google.protobuf.Any repeated
pagination cosmos.base.query.v1beta1.PageResponse

# Query

Query defines the gRPC querier service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
Token QueryTokenRequest QueryTokenResponse GET /token/tokens/{denom}
Fees QueryFeesRequest QueryFeesResponse GET /token/fee/{symbol}
Params QueryParamsRequest QueryParamsResponse GET /token/params
Tokens QueryTokensRequest QueryTokensResponse GET /token/tokens

Top

# prc10/tx.proto

# MsgBurnToken

MsgBurnToken defines an SDK message for burning some tokens

Field Type Label Description
symbol string
amount uint64
owner string

# MsgBurnTokenResponse

# MsgEditToken

MsgEditToken defines an SDK message for editing a new token

Field Type Label Description
symbol string
name string
max_supply uint64
owner string

# MsgEditTokenResponse

# MsgIssueToken

MsgIssueToken defines an SDK message for issuing a new token

Field Type Label Description
symbol string
name string
scale uint32
min_unit string
initial_supply uint64
max_supply uint64
mintable bool
owner string

# MsgIssueTokenResponse

# MsgMintToken

MsgMintTokenResponse defines the Msg/MintToken response type

Field Type Label Description
symbol string
to string
amount uint64
owner string

# MsgMintTokenResponse

# MsgTransferOwnerToken

MsgTransferOwnerToken defines an SDK message for transferring the token owner

Field Type Label Description
symbol string
owner string
to string

# MsgTransferOwnerTokenResponse

# Msg

Msg defines the Msg service.

Method Name Request Type Response Type Description HTTP Verb Endpoint
IssueToken MsgIssueToken MsgIssueTokenResponse
MintToken MsgMintToken MsgMintTokenResponse
EditToken MsgEditToken MsgEditTokenResponse
BurnToken MsgBurnToken MsgBurnTokenResponse
TransferOwnerToken MsgTransferOwnerToken MsgTransferOwnerTokenResponse

# 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)