laconicd/client/docs/swagger-ui/swagger.yaml
Murali Krishna Komatireddy cb104e0b10
Sync from fork (#74)
* evm: update empty hash check for storage state (#1016)

* imp: migrate JSON for feemarket (#1021)

* imp: migrate JSON for feemarket

* migrate JSON

* types

* fix

* fix unmarshal JSON error

* changelog

* fix lint

* fix test

* fix: update feemarket REST endpoints (#1026)

* fix: update feemarket REST endpoints

* changelog

* evm: PostTxProcessing hook - include the full message data (#1027)

* x/evm - PostTxProcessing use message as callback input

* Update CHANGELOG.md

* Use core.Message for the PostTxProcessing hook (PR review)

* fix: lint workflow (#1028)

* fix lint workflow

* fix comment

* remove format

* change checkout with setup-go

* update comment

* add checkout

* add lint issue

* revert lint error

* deps: upgrade cosmos-sdk to v0.45.2 (#1029)

Closes: #946

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* evm: allow to append logs after a post processing hook (#1025)

* add log after tx post processing hook

add changelog

fix tests

rename variable

minimum change version

* Update x/evm/keeper/state_transition.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: remove proto message registration from legacy v09 types to fix conflict (#1023)

with existing types

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump codecov/codecov-action from 2.1.0 to 3 (#1031)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 2.1.0 to 3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v2.1.0...v3)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests: add more dynamic fee tx tests (#1032)

* types: add `ValidateNonZeroAddress` utility function (#1033)

* Add ValidateNonZeroAddress validation utility

* Update types/validation.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump actions/stale from 4 to 5 (#1041)

Bumps [actions/stale](https://github.com/actions/stale) from 4 to 5.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump actions/setup-go from 2 to 3 (#1040)

* build(deps): bump actions/setup-go from 2 to 3

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 2 to 3.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Apply suggestions from code review

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* deps: bump SDK to v0.45.3 (#1046)

* release: v0.13.0 (#1030)

* release: v0.12.0 changelog

* changelog: v0.12.1 (#1019)

* evm: update empty hash check for storage state (#1016)

* v0.12.1: changelog

* changelog: v0.12.2 (#1022)

* changelog: v0.12.2

* fix

* fix

* update changelog

* deps: bump SDK to v0.45.3

* changelog

* fixes

* ci: cleanup (#1048)

* tests: Increase coverage for msg.go and access_list_tx.go (#1044)

* tests: Add tests for MsgEthereumTx getter methods

* tests: Add nil data test for MsgEthereumTx buildTx

* tests: Removed unnecessary sdk>big.Int conversions
in MsgEthereumTx ValidateBasic test

* tests: Replace deprecated ethtypes.NewTransaction

* tests: Add AccessListTx tests

* tests: Fix dropped LegacyTx coverage

* Address PR comments

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.10.1 to 1.11.0 (#1054)

* Context block height fix on `TraceTx` (#1051)

* `eth_getBlockByNumber` fix on batch transactions (#1050)

* fix: tests/solidity/package.json to reduce vulnerabilities (#1036)

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-ANSIREGEX-1583908

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: tests/solidity/suites/storage/package.json to reduce vulnerabilities (#1039)

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODEFETCH-2342118

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: tests/solidity/suites/eip1559/package.json to reduce vulnerabilities (#1038)

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODEFETCH-2342118

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: simulations don't generate EVM transactions (#996)

* use SimAppChainId instead of the default cosmos-sdk simulation chainid

* implement custom RandomGenesisAccounts for auth module simulation

* use customized RandomGenesisAccounts

* generate random ethereum txs operations

* use sdk.DefaultBondDenom

* implement WeightedOperations

* fix self assignment

* use customized RandomAccounts to generate accounts with ethsecp256k1 private key

* RandomAccounts generate random accounts with ethsecp256k1 private key

* implement SimulateEthSimpleTransfer

* implement SimulateEthCreateContract

* refactor and implement operationSimulateEthCallContract as future operations of SimulateEthCreateContract

* Update app/app.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update app/test_helpers.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update app/test_helpers.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix r.Read return only 1 result

* fix linter errors

* change SimulateContext to private

* return transferable amount immediately

* fix linter errors

* fix linter errors: append assign to different slice

* fix linter error: remove else block

* use gofumpt

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update x/evm/simulation/operations.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix recipient typo

* add nosec comment to escape Potential hardcoded credentials check

* add comments

* use SimAppChainID as valid chainID

* do not specify genesis.json to create random genesis state for simulation

* sub estimateGas to avoid overflow

* correct RandomGenesisAccounts comments

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* correct app/test_helpers.go comments

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* remove NewTxConfig

* implement RegisterStoreDecoder

* remove WeightMsgEthCallContract and adjust weights

* use gofmt

* update godoc

* use types.DefaultEVMDenom in evm genesis params

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* use types.DefaultEVMDenom

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* update godoc

* Update x/evm/simulation/genesis.go

* replace evmdenom with bonddenom in AppStateFn

* fix AppStateFn

* fix lint error

* add ParamChanges for RandomizedParams

* rename app/test_helpers.go -> app/utils.go

* testing for RandomGenesisAccounts

* use cdc for marshaling

* lint

* changelog

* changelog 2

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: crypto-facs <84574577+crypto-facs@users.noreply.github.com>
Co-authored-by: Freddy Caceres <freddy.caceres@crypto.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>

* rpc: make json-rpc API namespaces extensible (#1056)

* make jsonrpc api namespaces extensible

Closes: #1052, #1037

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* docs: update EVM spec

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.45.3 to 0.45.4 (#1065)

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.45.3 to 0.45.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.45.4/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/v0.45.3...v0.45.4)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github/codeql-action from 1 to 2 (#1064)

Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: update BaseFee JSON-RPC (#1059)

* release: v0.14.0 changelog (#1057)

* fix: update BaseFee JSON-RPC

* typo

* changelog

* build(deps): bump github.com/btcsuite/btcd from 0.22.0-beta to 0.22.1 (#1069)

* fix!: london hardfork check logic in json-rpc apis (#1068)

* rpc: refactor rpc packages and backend to support cosmos namespace (#1070)

* rpc: refactor rpc packages and backend to support cosmos namespace

* changelog

* typo

* imp, ci: address pending issues from EVM simulation (#1063)

* add note

fix note

* add TestAppStateFn TestRandomAccounts

* marshal int slice to json

* add paramschange for enableCreate and enableCall

* AppStateFn -> StateFn

* add TestDecodeStore

* update github actions to run evm simulation

* add TestParamChanges

* add TestRandomizedGenState

* use go install for runsim

* resolve conflict

* use random gasCap to estimate gas

* use estimateGas to calculate max transferableAmount

* update godoc

* TestAppStateFn -> TestStateFn

* Update x/evm/simulation/genesis.go

* comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>

* remove unused bank keeper dependency from account verification decorator (#1074)

The account verification decorator uses the evm keeper methods which
already use the bank keeper, leaving the dependency unused.

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* ci: bump simulations timeout (#1073)

* ante: check `EnableCreate`/`EnableCall` in ante handler (#1060)

* Check EnableCreate/EnableCall in ante handler

WIP: #1045

Reject tx early in ante handler, avoid deduct user fee for vain.

* add unit tests

* update changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>

* release: merge release branch changes back to main (#1079)

* release: update CHANGELOG (#1078)

* add unreleased section to changelog

* Add cli rollback command (#1086)

* fix:  gas price value in `eth_getTransaction` JSON-RPC response (#1082)

Solution:
- pass the correct baseFee parameter

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: append `Log` in tx post processing response  (#1088)

* fix post processing log

* update changelog

* build(deps): bump cross-fetch from 2.2.5 to 2.2.6 in /tests/solidity (#1083)

Bumps [cross-fetch](https://github.com/lquixada/cross-fetch) from 2.2.5 to 2.2.6.
- [Release notes](https://github.com/lquixada/cross-fetch/releases)
- [Commits](https://github.com/lquixada/cross-fetch/compare/v2.2.5...v2.2.6)

---
updated-dependencies:
- dependency-name: cross-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/spf13/cast from 1.4.1 to 1.5.0 (#1080)

Bumps [github.com/spf13/cast](https://github.com/spf13/cast) from 1.4.1 to 1.5.0.
- [Release notes](https://github.com/spf13/cast/releases)
- [Commits](https://github.com/spf13/cast/compare/v1.4.1...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cast
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp: clean up the block fetch logic in json-rpc (#1081)

* clean up the block fetch logic in json-rpc

deduplicate some codes

fix EthBlockFromTm

fix latest block height

* add bug fix changelog

* imp(evm): define minimum GasUsed proportional to GasLimit (#1087)

* min gas denominator implementation

* update changelog

* modify MinGasDenominator type to sdk.Dec

* fix typo in comments

* add comments

* update comment

* refactor logic

* remove unnecesary test

* fix typo on proto

* rename param

* fix tests

* use truncate and run mod tidy

* comment to default value

* update changelog

* rename temporary gas used

* integration tests

* add migrations

* add default as var

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(evm): add query params to CLI (#1091)

* add query params to evm

* update changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* specs(evm): Add concepts (#1095)

* specs(evm): Add concepts

* specs(evm): Add geth and bytecode concepts

* specs(evm): little fixes

* fix typo

* add CHANGELOG

* impr(evm): add tx_type, gas and counter telemetry for ethereum txs (#1101)

* impr(evm): add tx_type, gas and counter telemetry for ethereum txs

* impr(evm): Add CHANGELOG

* build(deps): bump alpine from 3.15 to 3.16.0 (#1094)

Bumps alpine from 3.15 to 3.16.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.11.0 to 1.12.0 (#1100)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/armon/go-metrics from 0.3.10 to 0.4.0 (#1103)

Bumps [github.com/armon/go-metrics](https://github.com/armon/go-metrics) from 0.3.10 to 0.4.0.
- [Release notes](https://github.com/armon/go-metrics/releases)
- [Commits](https://github.com/armon/go-metrics/compare/v0.3.10...v0.4.0)

---
updated-dependencies:
- dependency-name: github.com/armon/go-metrics
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): avoid sleep with pending txs tests(#1098)

* avoid pending tx get confirmed when sleep

* fix install-tparse which need go >= 1.18

* fix strings.Cut in https://github.com/tharsis/ethermint/runs/6611646254?check_suite_focus=true
* for more info, https://dev.to/hgsgtk/go-118-new-function-cut-added-to-stringsbytes-package-5c2f

* Revert "fix install-tparse which need go >= 1.18"

This reverts commit 5e39c2d7351ebbd6b789df214f2396e6c5dfb28e.

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(rpc, ante): Emit Ethereum tx hash in `AnteHandler` to support query failed transactions (#1062)

* Emit eth tx hash in ante handler to support query failed transactions

WIP: #1045
Solution:
- emit eth tx hash in ante handler
- modify rpc to use it

fix ante handler

support failed tx in receipt

add unit tests

need to patch cosmos-sdk to work

update cosmos-sdk to v0.45.x release branch

fix failed status

fix unit tests

add unit test cases

cleanup dead code

Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

fix lint

fix review suggestions

fix build

fix gas used of failed tx

add back the redundant events

* fix get tx by index

* add unit tests for events

* Update rpc/types/events.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* update comments

* refactoring

* Update rpc/namespaces/ethereum/eth/api.go

* fix lint

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* feemarket: global `MinGasPrice` parameter (#1104)

* Add min_gas_price to feemarket params

* Add MinGasPriceDecorators

* feemarket integration tests for MinGasPrice

* Restructure integration tests

* Simplify integration tests context

We use DeliverTx context to set up the app, otherwise not all settings are initialized.
We test CheckTx with `s.app.BaseApp.CheckTx(req)`, which uses the `CheckTx` mode and context.

* Update MinGasPrice spec in feemarket module

* reorder ethermint module order for initializing genesis

* feemarket migrations for adding MinGasPrice param

* update changelog

* Additional unit tests for MinGasPrice = 0, tx gas price > 0 (PR review)

https://github.com/tharsis/ethermint/pull/1104#discussion_r884991661

* Use 0 MinGasPrice for transaction simulations

* Fix duplicate registration of feemarket GenesisState and Params (PR review)

https://github.com/tharsis/ethermint/pull/1104#issuecomment-1141893712

* analytics(app): update telemetry to Ethermint modules (#1106)

* analytics(evm): replace telemetry gauges with counters and add gasUsed counter

* analytics(feemarket): add telemetry gauges for base fee and block gas

* analytics(feemarket): add telemetry gauges for gas_used per gas_limit

* analytics(feemarket): remove refund telemetry

* analytics(app): update CHANGELOG

* remove unwanted change

* address PR comments

* update comment

* build(deps): bump protobufjs from 6.11.2 to 6.11.3 in /tests/solidity (#1107)

Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 6.11.2 to 6.11.3.
- [Release notes](https://github.com/protobufjs/protobuf.js/releases)
- [Changelog](https://github.com/protobufjs/protobuf.js/blob/v6.11.3/CHANGELOG.md)
- [Commits](https://github.com/protobufjs/protobuf.js/compare/v6.11.2...v6.11.3)

---
updated-dependencies:
- dependency-name: protobufjs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* rpc: Update `GetGasPrice` RPC endpoint with global `MinGasPrice` (#1108)

* return MinGasPrice as minium on GetGasPrice api

* update logic

* update changelog

* globalmingsprice comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Move CanTransfer decorator before GasConsume (#1111)

* imp(feemarket): update `BaseFee` based on `GasWanted` (#1105)

* add gasWanted transient store keys

* add gasWanted transient store keeper functions

* add gasWanted transient store tracker

* add comment

* remove unncesary comment

* remove unnecesary function

* fix tests

* fix bad comment

* remove unnecesary comment

* update comment

* update changelog

* Update CHANGELOG.md

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* add GasWantedDecorator

* remove unnecesary comments

* gasWanted decorator test

* fix tests

* fix tests and build

* fix lint

* updated end block event

* Update app/ante/fee_market.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix undeclared variable

* Update app/ante/fee_market_test.go

* remove unnecesary line

* migrate MinGasMultiplier to FeeMarket module

* set limited gas wanted

* remove old newKeeper param

* update proto comment

* fix test

* update comments

* Update x/feemarket/keeper/abci.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* address comments from review

* tidy

* tests

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(types): avoid invalid account error on create vesting account (#1112)

* avoid invalid account error on create vesting account

* this change is related to https://github.com/cosmos/cosmos-sdk/pull/12154/files
* for more info see https://github.com/crypto-org-chain/cronos/issues/471

* add change doc

* add comment

* change under unreleased

* ante: refactor (#1113)

* build(deps): bump github.com/stretchr/testify from 1.7.1 to 1.7.2 (#1115)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.7.1...v1.7.2)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests: update consensus params (#1117)

* tests: update consensus params

* fix

* fix(types): account type method (#1118)

* fix account type method

* update changelog

* imp(feemarket): min-gas-multiplier parameter should accept zero value (#1120)

* min-gas-multiplier parameter should accept zero value

update min-gas-multiplier validation logic

* fix unit test

* changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* !feat(evm): Reject not replay-protected tx to prevent replay attack (#1124)

* Reject not replay-protected tx to prevent replay attack

Closes: #1122

- reject such txs in ante handler

* add reject unprotected parameter

* Update CHANGELOG.md

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* pr suggestions

* add unit test case

* Reject not replay-protected tx to prevent replay attack

Closes: #1122

- reject such txs in ante handler

add reject unprotected parameter

Update CHANGELOG.md

Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

pr suggestions

add unit test case

use var

* add migrations

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* rename

* update comments

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v3 from 3.0.0 to 3.1.0 (#1129)

Bumps [github.com/cosmos/ibc-go/v3](https://github.com/cosmos/ibc-go) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v3.1.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* rpc: add ws log on read loop break (#1127)

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* all: rename go module to evmos/ethermint (#1137)

* build(deps): bump technote-space/get-diff-action from 6.0.1 to 6.1.0 (#1139)

Bumps [technote-space/get-diff-action](https://github.com/technote-space/get-diff-action) from 6.0.1 to 6.1.0.
- [Release notes](https://github.com/technote-space/get-diff-action/releases)
- [Changelog](https://github.com/technote-space/get-diff-action/blob/main/.releasegarc)
- [Commits](https://github.com/technote-space/get-diff-action/compare/v6.0.1...v6.1.0)

---
updated-dependencies:
- dependency-name: technote-space/get-diff-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/spf13/cobra from 1.4.0 to 1.5.0 (#1140)

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): Fix `GasPrice` calculation with relation to `MinGasPrice` (#1138)

* fix gasPrice minGasPrice comparison

* update changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/stretchr/testify from 1.7.2 to 1.7.4 (#1141)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.2 to 1.7.4.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.7.2...v1.7.4)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(evm): clear logs if tx failed in post processing hooks (#1128)

* Problem: clear logs if tx failed in post processing hooks

* Update x/evm/keeper/state_transition.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(ci): buf makefile dependency, update semgrep workflow (#1144)

* build(deps): bump bufbuild/buf-setup-action from 1.5.0 to 1.6.0 (#1145)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(rpc): restrict unprotected txs on the node RPC (#1143)

* imp(rpc): restrict unprotected txs on the node RPC

* lint

* send raw transaction

* c++

* imp(evm): rename `RejectUnprotectedTx` to `AllowUnprotectedTxs` (#1142)

* imp(evm): rename RejectUnprotectedTx to AllowUnprotectedTxs

* changelog

* bug(feemarket): set lower bound of base fee to min gas price param (#1135)

* bug(feemarket): set lower bound of base fee to min gas price param)

* fix

* bug(feemarket): flag necessary improvement to integration tests, as the baseFee changes for every test

* bug(feemarket): add unit tests for CalculateBaseFee

* bug(feemarket): move integration test setup out of Describe block

* wip fix tests

* bug(feemarket): fix integration tests

* bug(feemarket): wip improve specs

* bug(feemarket): add spec concepts

* bug(feemarket): remove todo

* bug(feemarket): remove changes used for debugging in params

* bug(feemarket): remove todo in integration test

* add changelog

* address PR comments

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix!: fix json-rpc failures for pruned nodes (#1126)

* fix json-rpc failures for pruned nodes

Closes: #1123
Solution:
- try to parse base fee from events if grpc query failed
- use a `nil` base fee if failed to parse base fee from events
- use zero address if query validator address failed
- optimize some json-rpc apis by the way.

* changelog

* fix lint

* use GetTendermintBlockResultByNumber

* refactor

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/stretchr/testify from 1.7.4 to 1.7.5 (#1148)

* deps: Go 1.18 (#1147)

* deps: Go 1.18

* changelog

* update

* evm: cleanup, remove atlas/ (#1152)

* evm: cleanup, remove atlas/

* rm tparse action

* fix lint issue

* use cases.NoLower

* tidy

* release: backport v0.17.0 changelog (#1155)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* update mergify

* fix(ci): fix semgrep issue (#1157)

* fix goreleaser (#1160)

* impr(init.sh): remove increase block time

* bug(goreleaser): update docker image

* build(deps): bump github.com/stretchr/testify from 1.7.5 to 1.8.0 (#1163)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.5 to 1.8.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.7.5...v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feemarket(specs): add hint on different gas terminology for gas in Cosmos and Ethereum (#1165)

* imp(deps): Geth upgrade v1.10.19 (#1159)

* upgrade geth and fix build

* add support for

* update EIPs

* fix keeper tests

* update traceTx function with latest geth changes

* remove unnecessary comments

* fix tests

* update proto

* add migrations

* update module version

* fix grpc test

* fix lint

* fix lint

* update changelog

* fix typo

* remove unnecessary format logs

* Update proto/ethermint/evm/v1/evm.proto

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* remove debug true on default

* update comments

* fixing ante tests

* fixed cycle imports on migrate_test

* fix wrong naming

* update comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: TestAppStateDeterminism could fail owing to non-determinism in cosmos-sdk simulation (#1166)

* update cosmos-sdk to latest commit to fix simulation failure

* fix typo: 'staking genesis' -> 'evm genesis'

Co-authored-by: Adu <foriteration@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(all): setup a validator in the test genesis (#1171)

It's disabled in cosmos-sdk 0.46's InitGenesis to have zero validators,
prepare for the upgrade of cosmos-sdk 0.46.

* deps: upgrade ibc-go to v4-rc (#1167)

changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(rpc): optimize `eth_getBalance` endpoint (#1169)

* optimize get balance endpoint

* add comment

* add changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: traceTransaction returns zero gas used (#1179)

* Problem: traceTransaction returns zero gas used

Solution:
- call CaptureTxStart and CaptureTxEnd

* fix trace unit tests

* add overflow check

* add comment

* check gas used is positive

* Update x/evm/keeper/state_transition.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* impr(evm): add check msg.Validate check to prevent 0 gas txs (#1174)

* impr(evm): add check msg.Validate check to prevent 0 gas txs

* add changelog

* impr(evm): add integration tests for zero gas txs

* go mod tidy and proto swagger

* fix comment

* move changelog to state machine breaking

* add ReadHeaderTimeout`

* revert ReadHeaderTimeout config change

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp: NewAnteHandler returns error if input not valid (#1173)

make NewAnteHandler safer too use, and closer to cosmos-sdk api.
extracted from https://github.com/evmos/ethermint/pull/1168

* fix(rpc): fix panic on breaking EVM and feemarket params (#1188)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* fix(rpc): fix panic on breaking EVM and feemarket params

* changelog

* fix gosec

* build(deps): bump alpine from 3.16.0 to 3.16.1 (#1192)

Bumps alpine from 3.16.0 to 3.16.1.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* !fix(evm): Fix eth tx hashes in json-rpc responses (#1176)

* Fix eth tx hashes in json-rpc responses

Closes: #1175

- Remove Size_ field
- Validate From/Hash fields in ante handler
- Recompute tx hashes in json-rpc apis to cope with old blocks

Update CHANGELOG.md

remove Size_, validate Hash/From, add unit tests

update spec

Update CHANGELOG.md

Update app/ante/eth.go

populate From in SendRawTransaction

Apply suggestions from code review

keep Size_ field to avoid breaking tx format

* move some validation to ValidateBasic

* move validation to ValidateBasic

* make ToTransaction returns a valid msg

* restructure the protoTxProvider check

* add comment

* workaround tx hash issue in event parsing

* fix integration test

* fix unit test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(evm): `TxIndex` is wrong when trace is the first tx of a block (#1187)

* Fix TxIndex wrongly when trace first Tx of a block

If `Predecessors` is empty, `txConfig.TxIndex` originally = 0 and when it reachs line 401 `txConfig.TxIndex++`, it will becomes 1. It should be 0

* apply suggestion and add change-log

* fix comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* testing(json rpc): Add backend test suite with mock grpc query client (#1199)

* tests(json-rpc): wip evm_backend unit test setup

* tests(json-rpc): wip evm_backend unit test setup

* fix viper

* wip query client mock

* fix first backend test except error message

* clean up

* wip Context with Height

* fix JSON RPC backend test setup

* typo

* refactor folder structure

* Update rpc/backend/evm_backend_test.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/onsi/gomega from 1.19.0 to 1.20.0 (#1198)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.19.0 to 1.20.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.19.0...v1.20.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v4 (#1202)

* imp(tests): integration tests setup (#1196)

* first pass

* latest

* working tests

* github actions

* remove unnecessary change

* remove unnecessary steps

* remove unnecessary import

* remove unnecessary change

* Update .github/workflows/test.yml

Co-authored-by: yihuang <huang@crypto.com>

* update .gitignore

* update github actions

* change evm denomination

* change evm denomination

* send tests to tests folder

* Delete result

* update go version

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump @openzeppelin/contracts (#1205)

Bumps [@openzeppelin/contracts](https://github.com/OpenZeppelin/openzeppelin-contracts) from 4.7.0 to 4.7.1.
- [Release notes](https://github.com/OpenZeppelin/openzeppelin-contracts/releases)
- [Changelog](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/CHANGELOG.md)
- [Commits](https://github.com/OpenZeppelin/openzeppelin-contracts/compare/v4.7.0...v4.7.1)

---
updated-dependencies:
- dependency-name: "@openzeppelin/contracts"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump actions/upload-artifact from 2 to 3 (#1210)

* build(deps): bump bufbuild/buf-setup-action from 1.6.0 to 1.7.0 (#1211)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.6.0...v1.7.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump cachix/install-nix-action from 15 to 17 (#1209)

Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 15 to 17.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v15...v17)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* !feat(deps): Upgrade cosmos-sdk to `v0.46.0`  (#1168)

* Reuse cosmos-sdk client library to create keyring

Extracted from https://github.com/evmos/ethermint/pull/1168
Cleanup cmd code for easier to migration to cosmos-sdk 0.46

* Update cosmos-sdk v0.46

prepare for implementing cosmos-sdk feemarket and tx prioritization

changelog

refactor cmd

use sdkmath

fix lint

fix unit tests

fix unit test genesis

fix unit tests

fix unit test env setup

fix unit tests

fix unit tests

register PrivKey impl

fix extension options

fix lint

fix unit tests

make HandlerOption.Validate private

gofumpt

fix msg response decoding

fix sim test

bump cosmos-sdk version

fix sim test

sdk 46

fix unit test

fix unit tests

update ibc-go

* change default maxGasWanted (#1208)

* ENG 119 json rpc unit tests (#1189)

* tests(json-rpc): wip evm_backend unit test setup

* tests(json-rpc): wip evm_backend unit test setup

* fix viper

* wip query client mock

* fix first backend test except error message

* clean up

* wip Context with Height

* fix JSON RPC backend test setup

* typo

* refactor folder structure

* tests(json-rpc):add BlockBloom tests

* tests(json-rpc): remove unused malleate

* tests(json-rpc): add BaseFee tests

* refactor query tests

* add client mock

* add GetTendermintBlockByNumber tests

* refactor mock tests

* refactor

* wip backend EthBlockFromTendermint test

* wip backend EthBlockFromTendermint test

* refactor backend EthBlockFromTendermint test

* add TestGetTendermintBlockResultByNumber

* add GetBlockByNumber tests

* refactor mocks

* fix spelling

* add more tests and address comments

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.2 to 1.0.0-beta.3 (#1216)

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.2 to 1.0.0-beta.3.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.2...math/v1.0.0-beta.3)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/protobuf from 1.28.0 to 1.28.1 (#1215)

Bumps [google.golang.org/protobuf](https://github.com/protocolbuffers/protobuf-go) from 1.28.0 to 1.28.1.
- [Release notes](https://github.com/protocolbuffers/protobuf-go/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf-go/blob/master/release.bash)
- [Commits](https://github.com/protocolbuffers/protobuf-go/compare/v1.28.0...v1.28.1)

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update CODEOWNERS (#1220)

* fix: integration tests are not run in CI (#1221)

Solution:
- make it run
- add python linter job for the python codes
- fix nix expression to build ethermintd

add file diff condition

add gomod2nix check

* fix pruned node integration test (#1223)

closes: #1222

* chore(docs): update changelog (#1224)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* chore(docs): update changelog

* feat(ante, evm): set priority for eth transactions (#1214)

* Set priority for eth transactions

Set the tx priority to the lowest priority in the messages.

fix unit tests

code cleanup and spec

update spec

fix go lint

add priority integration test

add python linter job

add access list tx type

fix gas limit

remove ledger tag, so no need to replace hid dependency

fix earlier check

ibc-go v5.0.0-beta1

* fix pruned node integration test

* Update x/feemarket/spec/09_antehandlers.md

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* feat: support dynamic app db backend flag (#1226)

* support dynamic app db backend

* address pr reviews

* add comment

* Update server/start.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(tests): prune node integration tests (#1212)

* first pass

* extra comment

* fixed pruned node tests. Fix getBalance on pruned. Fix BaseFee on pruned.

* fix tests execution

* check logs on tests

* address pr comments

* address comments

* Update rpc/namespaces/ethereum/eth/api.go

* update error msg check

* fix lint

* fix linter

* fix linter

* fix py lint

* test lint

* fix lint

* pin golangcli version

* pin golanci version

* pin lint to version 0.48

* fix linter

* fix last linter last file

Co-authored-by: ramacarlucho <ramirocarlucho@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump cachix/install-nix-action from 15 to 17 (#1228)

Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 15 to 17.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v15...v17)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [ENG-626] Rpc types integration tests (#1207)

* types tests

* cleanup

* cleanup

* fix differences in the rpc calls with geth

* cleanup

* fix linter. getProof future queries now behave as geth

* fix spelling

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(rpc):  restructure JSON-RPC APIs (#1218)

* move non api methods from eth/api.go to evm_backend: ClientCtx, QueryClient, Ctx, getBlockNumber, getTransactionByBlockAndIndex, doCall

* organize eth/api.go into sections and move backend logic to dedicated files

* remove unnecesary comment

* move resend to the backend

* refractor eth api

* refractor debug namespace

* refactor miner namespace

* refactor personal namespace

* update transactionReceipt from upstream

* update getBlockByNumber from upstream

* update getBalance from upstream

* update getProof from upstream

* update getBalance from upstream

* fix linter

* remove duplicated import

* remove duplicated import

* fix backend tests

* fix lint

* fix duplicated imports

* fix linter

* reorganize blocks

* backend folder refractor

* remove unnecessary file

* remove duplicate import

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Problem: feemarket's query cli has redundant height parameter (#1230)

* build(deps): bump alpine from 3.16.1 to 3.16.2 (#1232)

* Add support for `MaxOpenConnections`  (#1229)

* feat!: Apply feemarket to native cosmos tx (#1194)

* Problem: feemarket's query cli has redundant height parameter

Soluton:
- remove the positional height parameter, since there's a flag already.

Update CHANGELOG.md

* Apply feemarket to native cosmos tx

- add tx extension option for user to input tip price
- apply feemarket's base fee to native tx

comments and cleanup

fallback to default sdk logic when london hardfork not enabled

integration test

cleanup feemarket query cli commands

Update CHANGELOG.md

update unit tests

disable feemarket in simulation tests for now

fix lint

Update app/simulation_test.go

fix python lint

fix lint

Update x/evm/types/extension_option.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

address review suggestions

* fix unit tests

* fix integration test

* improve unit test coverage

* fix go lint

* refactor

* fix integration test

* fix simulation tests

* fix go linter

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Merge pull request from GHSA-f92v-grc2-w2fg (#1234)

* feat!: Store eth tx index separately (#1121)

* Store eth tx index separately

Closes: #1075
Solution:
- run a optional indexer service
- adapt the json-rpc to the more efficient query

changelog

changelog

fix lint

fix backward compatibility

fix lint

timeout

better strconv

fix linter

fix package name

add cli command to index old tx

fix for loop

indexer cmd don't have access to local rpc

workaround exceed block gas limit situation

add unit tests for indexer

refactor

polish the indexer module

Update server/config/toml.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

improve comments

share code between GetTxByEthHash and GetTxByIndex

fix unit test

Update server/indexer.go

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Apply suggestions from code review

* test enable-indexer in integration test

* fix go lint

* address review suggestions

* fix linter

* address review suggestions

- test indexer in backend unit test
- add comments

* fix build

* fix test

* service name

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: make get_proof integration tests more stable (#1236)

* test: make get_proof integration tests more stable

it could fail for error "proof queries at height <= 2 are not supported"
if the latest block number <= 2

* Apply suggestions from code review

* Add support for miner_setGasPrice API (#1237)

* fix(rpc): get_proof test fail because block numbers are not high enough (#1239)

* Problem: get_proof test fail because block numbers are not high enough

Solution:
- wait for app block height rather than tendermint block height

* Update tests/integration_tests/test_types.py

* keep get_proof response the same as geth

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>

* tests(rpc): add filter tests (#1233)

* tests(rpc): add pending transaction filter test

* tests(rpc): add block filter and event log  test

* tests(rpc): simplify to cluster instead of comparing types

* tests(rpc): wip filter by address

* tests(rpc): add get_logs test

* fix flake8 linter

* fix flake8 linter

* add caching to readme

* add caching to readme

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(docs): Update Changelog (#1249)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* chore(docs): Update Changelog

* fix(test): priority test result affect by base fee dropping (#1238)

* Problem: priority test result affect by base fee dropping

Solution:
- increase the scale of priority numbers to make it more stable.

* Update tests/integration_tests/test_priority.py

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump @openzeppelin/contracts (#1268)

Bumps [@openzeppelin/contracts](https://github.com/OpenZeppelin/openzeppelin-contracts) from 4.7.1 to 4.7.2.
- [Release notes](https://github.com/OpenZeppelin/openzeppelin-contracts/releases)
- [Changelog](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/CHANGELOG.md)
- [Commits](https://github.com/OpenZeppelin/openzeppelin-contracts/compare/v4.7.1...v4.7.2)

---
updated-dependencies:
- dependency-name: "@openzeppelin/contracts"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump undici in /tests/integration_tests/contracts (#1282)

Bumps [undici](https://github.com/nodejs/undici) from 5.8.0 to 5.9.1.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.8.0...v5.9.1)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump @openzeppelin/contracts (#1281)

Bumps [@openzeppelin/contracts](https://github.com/OpenZeppelin/openzeppelin-contracts) from 4.7.2 to 4.7.3.
- [Release notes](https://github.com/OpenZeppelin/openzeppelin-contracts/releases)
- [Changelog](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/CHANGELOG.md)
- [Commits](https://github.com/OpenZeppelin/openzeppelin-contracts/compare/v4.7.2...v4.7.3)

---
updated-dependencies:
- dependency-name: "@openzeppelin/contracts"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 (#1294)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.0-beta1 to 5.0.0-rc0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.0-beta1...v5.0.0-rc0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* deps: Update cosmos-sdk to `v0.46.1` (#1300)

* Update cosmos-sdk to 0.46.1

* update gomod2nix.toml

* eth_sendTransaction returns internal trace on missing param (#1284)

* added test, used get method for from param

* gosec fixes

* adding nosec v1

* added test to python tests, removed testing lines

* fixing flake issues

* test-unit-cover

* changelog fix

* changelog 2

* fix gomod2nix

* integration tests

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* chore: Gofumpt (#1298)

* fumpt

* golangci

* Update keeper_test.go

* Update keeper_test.go

* Update handler_test.go

* Update rpc_pending_test.go

* lll

* line length limits

* Update CHANGELOG.md

* fixes for 19.0.1 (#1305)

* fixes for 19.0.1

* changelog

* changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.1.4 to 2.1.6 (#1318)

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.1.4 to 2.1.6

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.1.4 to 2.1.6.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.1.4...v2.1.6)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump eth-account in /tests/integration_tests (#1317)

Bumps [eth-account](https://github.com/ethereum/eth-account) from 0.5.7 to 0.5.9.
- [Release notes](https://github.com/ethereum/eth-account/releases)
- [Changelog](https://github.com/ethereum/eth-account/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/ethereum/eth-account/compare/v0.5.7...v0.5.9)

---
updated-dependencies:
- dependency-name: eth-account
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* test: add integration test for the rollback cmd (#1311)

* test the fixed rollback cmd

- check the rollback cmd works in integration tests

* Apply suggestions from code review

* upstream merged

* add changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: improve x/evm/types coverage (#1302)

* modifying x/evm/types tests v1

* modifying x/evm/types tests v2

* modifying x/evm/types test v3

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump google.golang.org/grpc from 1.48.0 to 1.49.0 (#1295)

* build(deps): bump google.golang.org/grpc from 1.48.0 to 1.49.0

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.48.0 to 1.49.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.48.0...v1.49.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Change the fallback priority mechanism to be based on gas price (#1289)

* Change the fallback priority mechanism to be based on gas price

* Update CHANGELOG.md

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/gomega from 1.20.1 to 1.20.2 (#1323)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.20.1 to 1.20.2.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.20.1...v1.20.2)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(rpc): add backend blocks tests (#1296)

* wip

* rename GetTendermintBlockByNumber to TendermintBlockByNumber

* rename GetTendermintBlockResultByNumber to TendermintBlockResultByNumber

* rename GetTendermintBlockByHash to TendermintBlockByHash

* rename BlockByNumber to EthBlockByNumber

* rename BlockByHash to EthBlockByHash

* rename GetBlockNumberByHash to BlockNumberFromTendermintByHash

* rename GetBlockNumber to BlockNumberFromTendermint

* rename GetEthereumMsgsFromTendermintBlock to EthMsgsFromTendermintBlock

* rename GetEthBlockFromTendermint to BlockFromTendermintBlock

* rename EthBlockFromTendermint to EthBlockFromTendermintBlock

* add TestEthBlockFromTendermintBlock with no transactions. Note that this endpoint is breaking when querying a block with transactions

* add block transaction count tests

* add TendermintBlockByHash test'

* add TestBlockNumberFromTendermint tests

* add HeaderByHash and HeaderByNumber tests

* add EthBlockFromTendermintBlock test

* add TestEthBlockByNumber tests

* Specificy that the endpoints are getting Etherum transactions in comments

* Refactor shared logic into GetBlockTransactionCount

* rename BlockFromTendermintBlock to RPCBlockFromTendermintBlock

* add CHangelog

* build(deps): bump github.com/spf13/viper from 1.12.0 to 1.13.0 (#1328)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/armon/go-metrics from 0.4.0 to 0.4.1 (#1337)

Bumps [github.com/armon/go-metrics](https://github.com/armon/go-metrics) from 0.4.0 to 0.4.1.
- [Release notes](https://github.com/armon/go-metrics/releases)
- [Commits](https://github.com/armon/go-metrics/compare/v0.4.0...v0.4.1)

---
updated-dependencies:
- dependency-name: github.com/armon/go-metrics
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update CODEOWNERS

* feat(eip712): Create LedgerPreprocessHook to reformat EIP-712 payloads (#1277)

* Create ReformatLedgerTx to reformat EIP-712 payloads

* Fix issue with public key; minor refactors

* Refactor naming; add test case

* Update preprocess_test

* Add tests and fix lint

* Refactor preprocess test

* Implement minor fix and add changelog entry

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.0-rc0 to 5.0.0-rc1 (#1313)

* build(deps): bump github.com/cosmos/ibc-go/v5

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.0-rc0 to 5.0.0-rc1.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.0-rc0...v5.0.0-rc1)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(evm): stateless custom precompiles (#1272)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* imp(evm): EVM interface

* fixes

* fix lint

* fix lint pt 2

* initial wiring for stateful contracts

* Apply suggestions from code review

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* changelog

* comments from review

* lint

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix: upload nix binary for macOS (#1327)

Solution:
- add a workflow to upload cache for macos

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore: update changelog from v0.19 (#1347)

* release: v0.17.0 changelog (#1153)

* release: v0.17.0 changelog

* rm newline

* update link

* changelog

* update

* build(deps): bump bufbuild/buf-setup-action from 1.7.0 to 1.8.0 (#1343)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.7.0...v1.8.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): estimate gas error response (#1340)

* format error on EstimateGas rpc call

* changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* !fix(erc712): support `MsgCreateValidator` (#1346)

* fix for create validator msg and tests

* changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 (#1345)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.0-rc1 to 5.0.0-rc2.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.0-rc1...v5.0.0-rc2)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* test(rpc): Ethereum JSONRPC Websocket (#1342)

* WIP! add Ethereum JSONRPC Websocket test

* move to test-rpc

* clean up

* fix batch request with websocket

* refactor

* build(deps): bump github.com/holiman/uint256 from 1.2.0 to 1.2.1 (#1350)

Bumps [github.com/holiman/uint256](https://github.com/holiman/uint256) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/holiman/uint256/releases)
- [Commits](https://github.com/holiman/uint256/compare/v1.2.0...v1.2.1)

---
updated-dependencies:
- dependency-name: github.com/holiman/uint256
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.1.6 to 2.2.0 (#1351)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.1.6 to 2.2.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.1.6...v2.2.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(rpc,server): concurrent gRPC queries (#1352)

* Problem: grpc query is not run concurrently

Solution:
- Initiate the GRPCClient introduced in [sdk 0.46](https://github.com/cosmos/cosmos-sdk/pull/11234).

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update server/start.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* wrap error

* Update server/start.go

* more complete copy

* fix grpc crash

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump actions/stale from 5 to 6 (#1357)

Bumps [actions/stale](https://github.com/actions/stale) from 5 to 6.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): fix gRPC query failure on legacy blocks (#1354)

* Problem: grpc query fail on legacy blocks

`BaseFee` and `EthCall`.

Solution:
- since grpc query handlers are used for all versions of the blocks, it need to be compatible with legacy formats.

debug

fix basefee fetch

Revert "debug"

This reverts commit 50ebaf697fc06b0d6e26abd8de8f89717e8a219d.

update gomod2nix

Update CHANGELOG.md

debug

fix panic

Revert "debug"

This reverts commit e08af04b0776bd390c42706cc9ec978e00bcb3bb.

* add upgrade integration test

* Update tests/integration_tests/configs/upgrade-test-package.nix

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump protobuf from 3.20.0 to 3.20.2 in /tests/integration_tests (#1358)

* build(deps): bump protobuf in /tests/integration_tests

Bumps [protobuf](https://github.com/protocolbuffers/protobuf) from 3.20.0 to 3.20.2.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/generate_changelog.py)
- [Commits](https://github.com/protocolbuffers/protobuf/compare/v3.20.0...v3.20.2)

---
updated-dependencies:
- dependency-name: protobuf
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* change lock file to remove infinite recursion

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: adisaran64 <adisaran64@berkeley.edu>

* deps: bump ibc-go to v5 (#1361)

* deps: bump ibc-go to v5

* changelog

* fix: `index-eth-tx` cmd fail on empty indexer db (#1362)

* fix: `index-eth-tx` cmd fail on empty indexer db

Solution:
- start from latest height is db is empty

* update gomod2nix

* Update CHANGELOG.md

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: skip fee check on tx simulation (#1364)

* fix: skip fee check on tx simulation

* fix: update fees_tests to account for sim. change

* build(deps): bump github.com/onsi/gomega from 1.20.2 to 1.21.1 (#1366)

* build(deps): bump github.com/onsi/gomega from 1.20.2 to 1.21.1

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.20.2 to 1.21.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.20.2...v1.21.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump google.golang.org/grpc from 1.49.0 to 1.50.0 (#1365)

* build(deps): bump google.golang.org/grpc from 1.49.0 to 1.50.0

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.49.0 to 1.50.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.49.0...v1.50.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests(rpc): Add account info unit tests  (#1339)

* tests(rpc): add GetCode pass test

* tests(rpc): add GetCode failing tests

* tests(rpc): wip StorageAt tests

* tests(rpc): add StorageAt tests

* wip

* wip balance tests

* add balance tests

* add TestGetTransactionCount

* fix TestGetProof

* WIP GetTransactionCount

* WIP GetTransactionCount with RegisterABCIQueryWithOptions

* remove TODO

* go mod tidy

* build(deps): bump apollo-server from 2.25.3 to 2.26.0 in /tests/solidity (#1376)

Bumps [apollo-server](https://github.com/apollographql/apollo-server/tree/HEAD/packages/apollo-server) from 2.25.3 to 2.26.0.
- [Release notes](https://github.com/apollographql/apollo-server/releases)
- [Changelog](https://github.com/apollographql/apollo-server/blob/apollo-server@2.26.0/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-server/commits/apollo-server@2.26.0/packages/apollo-server)

---
updated-dependencies:
- dependency-name: apollo-server
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/text from 0.3.7 to 0.3.8 (#1374)

* build(deps): bump golang.org/x/text from 0.3.7 to 0.3.8

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.7 to 0.3.8.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.3.7...v0.3.8)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update go2modnix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* imp(rpc) Add support for EVM RPC metrics (#1378)

* imp(rpc) Add support for EVM RPC metrics

- Support --metrics flag
- Add EVM rpc metrics server config

* Update as per PR feedback

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.2.0 to 2.3.0 (#1375)

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.2.0 to 2.3.0

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.2.0...v2.3.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update go2modnix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0 (#1373)

* build(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>

* fix(testutils): fix blank bank genesis params (#1379)

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.3.0 to 2.3.1 (#1383)

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.3.0 to 2.3.1

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump golang.org/x/text from 0.3.8 to 0.4.0 (#1387)

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.8 to 0.4.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.3.8...v0.4.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump technote-space/get-diff-action from 6.1.0 to 6.1.1 (#1385)

Bumps [technote-space/get-diff-action](https://github.com/technote-space/get-diff-action) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/technote-space/get-diff-action/releases)
- [Changelog](https://github.com/technote-space/get-diff-action/blob/main/.releasegarc)
- [Commits](https://github.com/technote-space/get-diff-action/compare/v6.1.0...v6.1.1)

---
updated-dependencies:
- dependency-name: technote-space/get-diff-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/gomega from 1.21.1 to 1.22.1 (#1372)

* build(deps): bump github.com/onsi/gomega from 1.21.1 to 1.22.1

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.21.1 to 1.22.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.21.1...v1.22.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update go2modnix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Bump SDK to 0.46.2 (#1386)

* bump sdk

* undo go.sum

* bump

* build(deps): bump cachix/cachix-action from 10 to 11 (#1371)

Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 10 to 11.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v10...v11)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump cachix/install-nix-action from 17 to 18 (#1380)

Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 17 to 18.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v17...v18)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump google.golang.org/grpc from 1.50.0 to 1.50.1 (#1382)

* build(deps): bump google.golang.org/grpc from 1.50.0 to 1.50.1

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.0 to 1.50.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.0...v1.50.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(server): Add query-only mode flag for gRPC (#1360)

* add grpc only mode flag

* add change log

* add tmNode nil check

* only flag to modes

* fix close for query mode

* fix hint

* keep grpc-only & json-rpc-only

* rm space

* mv apiSrv close

* mv cpuProfileCleanup

* mv tmNode stop

* disable indexer on query only

which need tm client on start

* update nix

* revert json-rpc-only change

* fix(evm): skip hash check when the code has been deleted (#1320)

* evm.InitGenesis skip codehash check when the code has been deleted in the evm state

* fix lint

* just ignore all the codehash check when the evm account code is empty

* update changelog

* nit

* add test

* add test

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* refactor: optimize AnteHandler gas consumption (#1388)

* refactor: antehandler order and params optimization

* removed additional individual params for the feemarket module

* typo fix

* Apply suggestions from code review - Fede

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* typo fix

* formatted using gofumpt

* typo fix - missed negate operator

* missed to negate conditions

* added unit tests for the new param getter methods

* updated changelog

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* moved to improvements

* Converted unit tests into table-driven tests

* added Require().Equal() to test case

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* [issue-#1389] add multisig tx support (#1390)

* [issue-#1389] add multisig tx support

* [issue-#1389] add changes in CHANGELOG improvements

* [issue-#1389] fix style issue

* [issue-#1389] fix style issue

* [issue-#1389] add tests

* imp(ante): refactor for increased `AnteHandler` performance (#1393)

* build(deps): bump bufbuild/buf-setup-action from 1.8.0 to 1.9.0 (#1394)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.8.0...v1.9.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* feat: format protobuf files (#1395)

* format protobuf files

* go mod tidy

* update gomod2nix

* ime(evm): improve code coverage for EVM keeper (#1396)

* [issue-1018] add new tests on evm module keeper

* [issue-1018] add more new tests on evm module keeper

* [issue-1018] add more new tests on evm module keeper (state_transition, statedb, utils)

* [issue-1018] add more new tests on evm module keeper (msg_server)

* [issue-1018] fix code style

* [issue-1018] add changes in CHANGELOG

* [issue-1018] add missing error check in grpc_query_test

* [issue-1018] fix failing tests

* [issue-1018] add changes based on review comments (grpc_query_test & abci_test)

* [issue-1018] add GenerateAddress in TestEthCall (grpc_query_test)

* [issue-1018] remove unnecessary SetupTest calls

* [issue-1018] refactor SetupTest calls (grpc_query_test & statedb_test)

* fix(evm,rpc): coinbase should not be the current one in traceTransaction execution (#1392)

* add proposer address

* make proto-all

* update nix

* fix test

* keep default proposerAddress

* add change doc

* refine GetProposerAddress with test

* include ProposerAddress for trace api

* fix eth call req

* wrap proposerAddress for eth call

* allow proto translates to sdk.ConsAddress

* Update rpc/backend/call_tx.go

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.46.2 to 0.46.3 (#1398)

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.46.2 to 0.46.3

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.46.2 to 0.46.3.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/v0.46.2...v0.46.3)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#1399)

* build(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.3.1 to 2.4.0 (#1400)

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.3.1 to 2.4.0

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.3.1 to 2.4.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.3.1...v2.4.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/spf13/cobra from 1.6.0 to 1.6.1 (#1403)

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.6.0...v1.6.1)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(websocket): websocket integration tests (#1355)

* skeleton websocket tests

* update websocket tests

* flake fixes

* ignore line break issues

* fix configuration file

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/onsi/gomega from 1.22.1 to 1.23.0 (#1406)

* build(deps): bump github.com/onsi/gomega from 1.22.1 to 1.23.0

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.22.1 to 1.23.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.22.1...v1.23.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.0 to 5.0.1 (#1412)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.0.1/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump cachix/cachix-action from 11 to 12 (#1411)

* build(deps): bump cachix/cachix-action from 11 to 12

Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 11 to 12.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v11...v12)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update gomod2nix

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* chore(docs): update SECURITY.md (#1410)

* chore(docs): update SECURITY.md

* Update SECURITY.md

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>

* Update SECURITY.md

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* deps: bump go to v1.19 (#1416)

* deps: bump go to v1.19

* deps: add dragonberry patch repalce in go.mod

* deps: add ival bump to v0.19.4

* deps: remove unrelated version bumps to adress in differnet PR

* go mod tidy

* add changelog

* fix typo in changelog

* chore(cli): apply google CLI Syntax for required and optional args (#1417)

* chore(cli): apply google CLI Syntax for required and optional args

* chore(cli): add changes in CHANGELOG

* chore(cli): fix link to PR in CHANGELOG

* chore(cli): fix args in feemarket

* chore(cli): update docs based on comments

* chore(ci): update linters (#1418)

* chore(ci): update linters

* skip md link

* backport: add v0.19.3 dragonberry changes to `main` and bump iavl to v0.19.4 (#1419)

* backport: v0.19.3 dragonberry changes and iavl bump

* add v0.19.3 changelog

* update gomod2nix

* fix linter

* use latest for golangci github workflow

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* release: v0.20.0-rc1 cherry pick and changelog (#1422)

* Revert "feat(eip712): Create LedgerPreprocessHook to reformat EIP-712 payloads (#1277)"

This reverts commit 723443abc747dd0d3d93d8e8f6133ceda7cf9dec.

* release: upadte changelog

* deps(sdk): bump to v0.46.4 (#1423) (#1426)

* deps(sdk): bump to v0.46.4

* deps(sdk): add IAVLDisableFastNode flag with false default

(cherry picked from commit 457e25aabf198624e8af0196a3cf84b4c6f77fa2)

Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>

* release: v0.20.0-rc2 upadte changelog (#1427)

* release: v0.20-rc3 changelog (#1517)

* deps(sdk): bump to v0.46.4 (#1423)

* deps(sdk): bump to v0.46.4

* deps(sdk): add IAVLDisableFastNode flag with false default

* imp: reduce integration test block time to 2s (#1428)

* build(deps): bump github.com/onsi/gomega from 1.23.0 to 1.24.0 (#1429)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): different result from `eth_getProof` comparing with Ethereum (#1431)

* align with eth_getProof

for more info, see https://eips.ethereum.org/EIPS/eip-1186

* add GetHexProofs

* add change doc

* keep default res

* fix lint

* add e2e test

* Apply suggestions from code review

* fix lint

* nix run -f ./nix gomod2nix

* Refactor EIP-712 signature verification (#1397)

* [WIP] EIP-712 Signature Refactor

* Debug and add ante tests

* Add tests for failure cases

* Add changelog entry

* Code cleanup

* Add tests for MsgDelegate and MsgWithdrawDelegationReward

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Code cleanup

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Minor codefix

* Update ethereum/eip712/encoding.go

* Minor code revision updates

* Refactor EIP712 unit tests to use test suite

* Address import cycle and implement minor refactors

* Fix lint issues

* Add EIP712 unit suite test function

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Add minor refactors; increase test coverage

* Correct ante_test for change in payload

* Add single-signer util and tests

* Update ethereum/eip712/encoding.go

* Update ethereum/eip712/encoding.go

* fix build

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: build test on mac by updating to python3.10 (#1437)

* build(deps): bump loader-utils from 1.4.0 to 1.4.1 in /tests/solidity (#1445)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(evm): improve performance of EstimateGas (#1444)

* imp(evm): improve performance of EstimateGas

* changelog

* fix(rpc): decode `finalized` block number (#1442)

* fix(rpc): decode 'finalized' block number

* changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/gomega from 1.24.0 to 1.24.1 (#1449)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.24.0 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.24.0...v1.24.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0 (#1439)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: unstable tx_priority test (#1440)

* fix unstable tx_priority test

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.1 to 5.1.0 (#1450)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.1.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#1454)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor(all): refactor errors import to use cosmossdk.io (#1456)

* refactor (errors) refactor errors import to use cosmossdk.io instead of cosmos-sdk/types/errors

* refactor (errors) refactor errors import in ethsecp256k1 file

* refactor (errors) add changes to changelog

* build(deps): bump alpine from 3.16.2 to 3.16.3 (#1453)

Bumps alpine from 3.16.2 to 3.16.3.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Empty KV gas config (#1460)

* update sdk version

* setup empty gas config

* fix lint

* fix integration tests

* add Ante unit test

* update changelog

* test: remove unused integration tests (#1462)

* fix: remove e2e github action (#1463)

* remove unused tests

* imp: remove e2e github action

* build(deps): bump loader-utils from 1.4.1 to 1.4.2 in /tests/solidity (#1464)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore (deps): Update geth version to v1.10.25 (#1413)

* build(deps): bump github.com/ethereum/go-ethereum

Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.10.19 to 1.10.25.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.19...v1.10.25)

---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* wip geth update

* fix geth init flag order

* add chainId to getTransaction. fix types comparison. update expected values on tests

* wip add tracer config

* tracers test

* update tests

* update to v1.10.25

* fix linter python

* ignore error

* fix lint

* additional changes from diff

* fix issues

* solve lint issues

* fix tests

* fix flake

* wrap types comparison in integration tests

* fix integration tests

* fix flake

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Add EIP-712 encoding support type for any array (#1430)

* Add EIP-712 encoding support type for any array

* Refactor implementation + add tests

* Refactor unpacking implementation; refactor test case

* Fix lint issue

* Add MsgExec test case

* Update comment for clarity

* Add changelog entry

* Refactor `sdkerrors` to `errorsmod`

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: extend geth config on integration tests (#1467)

* changing git config and adding tests

* removing print statements

* remove unneccessary imports

* fix flake

* remove geth setup test

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: Add unit tests for rpc client endpoints (#1409)

* test: add preliminary unit tests and additional mocks for chain_info, account_info and filters

* tests: added additional mocked client calls

* tests: bumped coverage of call_tx to 56% and chain_info to 77%

* tests: bumped call_tx coverage to 70.2% and added additional mock client calls

* tests: tx_info preliminary tests added for debugging.

* tests: added test coverage for sign_tx and additional mocks

* tests: tx_info test coverage bumped to 60.3%

* test: coverage for tracing_tests now at 72%

* tests: added fee makert query client mocks and bumped chain_info to 87.6% coverage.

* tests: failing Cosmos auth module account query.

* tests: added FeeMarket Params mock to call_tx_test

* cleanup some unused code

* tests: added helper function to test suite for signing a Tx and bumped coverage of tx_info to 71.2%

* test: commented GetAccount error case and bumped chain_info to 90.3% coverage

* test: cleanup of tests in node_info, sign_tx and account_info

* Clean up print

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Apply suggestions from code review

* fix import issues

Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Refactor to omit empty optionals from EIP-712 type generation (#1459)

* Refactor to omit empty values from type creation; add test for v1.vote

* Add test for createValidator with optional fields left blank

* Add changelog entry

* Update changelog entry

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: protogen scripts were not correctly implemented (#1466)

* Delete local copy of third party proto files

* Update protocgen script and buf yaml files to mirror cosmos-sdk

* Update makefile commands for proto-gen and proto-swagger-gen to correctly use docker

* Commit changed .pb.go files after updating the protogen scripts

* Adjust grep in proto-tools-installer script to look for correct gogoproto replacement

* address reviews - remove unnecessary ignore in buf.yaml and cosmos-sdk download in the protocgen script

* remove proto-update-deps from makefile as we don't store local copies of third party protofiles anymore

* Add changelog entry

* Update protoc-swagger-gen.sh

* Remove third party queries from swagger-ui config (for now)

* fix integrations tests

* fix dead changelog links (markdown-link-check)

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* added gas consumption test (#1474)

* build(deps): bump github.com/cosmos/cosmos-proto (#1475)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha7 to 1.0.0-alpha8.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha7...v1.0.0-alpha8)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: chain-id in grpc query is not initialized without abci event (#1405)

* fix: chain-id in grpc query is not initialized without abci event

Closes: #1404

Solution:
- pass the chain-id from caller.

* Update CHANGELOG.md

* only override if input is not empty

* add comment to chain id

* pass chain-id to state transition

* Update x/evm/keeper/grpc_query.go

* Apply suggestions from code review

* fix golang lint

* update gomod2nix.toml

* fix unit tests

* update gomod2nix

* api breaking changelog

* add unit tests, and fix TraceBlock by the way

* Update CHANGELOG.md

* test --grpc-only mode in integration tests

* remove tmp var

* Update tests/integration_tests/test_grpc_only.py

* Update x/evm/keeper/grpc_query_test.go

Co-authored-by: mmsqe <tqd0800210105@gmail.com>

* fix linters

* fix nil pointer in tests

* fix conflicts

* fix conflicts

* fixes

* fix lint

* fix unit test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(evm): Simplify Gas Math (#1452)

* fix math

* changelog

* imp(ante): refactor `AnteHandler` (#1455)

* fix(ante): block gas check

* refactor

* rename

* use gas wanted

* remove consume gas logic on ante handler

* comment

* c++

* move min gas price

* comment

* Update app/ante/eth.go

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix build

* fix integration test script

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: add additional gas consumption tests (#1477)

* split existing gas test

* added contract call test

* fix flake issues, update gomod2nix

* isort imports

* add stateful contract calls

* chore: update proto make commands (#1471)

* Update proto make commands to use cosmos docker image and add notes for possible problems

* Apply make proto-all with new docker container

* Remove stale DOCKER_BUF variable

* Revert to using the tendermintdev/sdk-proto-gen docker image

* remove '@' in proto-lint and proto-check-breaking for consistency with other commands

* Remove unnecessary go get from protocgen.sh (only works after adding --network host to docker run)

* Add --network host to docker run for compatibility on linux

* use cosmos/proto-builder docker image for proto-format because clang-format is not installed on tendermintdev/sdk-proto-gen

* update swagger docs after recent additions to evm.proto in #1413

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* Remove unbound labels from added custom tendermint metrics (#1434)

* Remove unbound labels from added custom tendermint metrics

* Add entry to changelog

* deps: bump SDK to v0.46.6 (#1486)

* deps: bump SDK to v0.46.6

* changelog

* Update CHANGELOG.md

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* fear(eip712): Add EIP-712 encoding for multiple messages of the same type (#1483)

* Add EIP-712 encoding for multiple messages of the same type

* Fix Protobuf encoding bug

* Add ante tests

* Refactor naming and minor implementation details

* Test empty transaction coverage

* Address revisions for code clarity

* Move aminoMessage type definition

* fix: enable `fixIssue172` flag for non-deterministic keyring test (#1447)

* enable fixIssue172 flag for test

for more info, https://github.com/btcsuite/btcutil/pull/182/files

* fix import

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(tests): Delete inconsistent test (#1481)

* Delete inconsistent test

* delete test

* build(deps): bump alpine from 3.16.3 to 3.17.0 (#1492)

Bumps alpine from 3.16.3 to 3.17.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#1490)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.1 to 1.51.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.1...v1.51.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1 (#1489)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: refactor imports naming for clarity (#1491)

* chore: refactor imports naming for clarity

* Merge main and fix conflicts

* fix: align empty account result for old blocks as ethereum (#1484)

* align result account as ethereum

* add test_get_transaction_count

* add change doc

* sync gomod2nix

* Apply suggestions from code review

* crosscheck with ws & geth

* sync gomod2nix

* Update rpc/backend/utils.go

* use session provider

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(ante): refactor AnteHandler (#1479)

* imp(ante): refactor AnteHandler

* fix test

* test

* Adjust deprecated sdkerrors import (#1493)

* refactor test files

* Apply suggestions from code review

Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* lint

* prioritization comment

* fix test

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* chore: Update linter and protogen configuration (#1478)

* add protolint yaml

* Update .protolint.yml with Evmos settings

* Add super-linter.yml for GH action

* Copy .markdownlint.yml settings from Evmos

* Sort proto imports

* address protolint error in all Protobuf files

* update Makefile to mirror Proto commands for Evmos

* remove unnecessary go get command in protocgen.sh when using cosmos docker image

* copy .clang-format from Evmos repo

* apply make proto-format

* Execute make proto-all after changes to config are complete

* address last linter comment

* fix(server): telemetry setup (#1497)

* fix(server): telemetry setup

* more fixes

* fix

* changelog

* update standalone process

* chore(evm) - Delete deprecated store migrations (#1498)

* (fix): Delete deprecated migrations

* Update x/evm/module.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(evm): Added Cancun and Shanghai blocks to ChainConfig (#1499)

* (refactor): Added Cancun and Shanghai blocks to ChainConfig

* (tests): Added test for invalid Shanghai and Cancun block

* (fix): ran proto linter

* Applied changes from code review

* Added CHANGELOG entry

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(app): add store listener to Ethermint app (#1501)

* add store listener to Ethermint app

* add changelog entry

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4 (#1502)

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.3 to 1.0.0-beta.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.3...math/v1.0.0-beta.4)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(app): register node service (#1505)

* fix(app): register node service

* changelog

* fix(cmd): add missing GetAuxToFeeCommand (#1504)

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* chore(feemarket): Delete deprecated migration logic (#1508)

* (refactor): Remove old migration code

* (fix): Lint and add CHANGELOG entry

* Remove simulation checks (#1507)

* Add cli rollback command

it's useful in app-hash mismatch situation.

* Update CHANGELOG.md

* (refactor): removed old sim tests logic

* (fix): removed tests from CI

* (fix): fix test.yml

* (fix): format and lint

* (fix): fix linter issue

* (fix): fix linter issues v2

* (fix): linter

* (fix): removed sim-test references

* Applied changes from code review

Co-authored-by: HuangYi <huang@crypto.com>

* chore: verify fees refactor (#1496)

* chore: verify fees refactor

* adjust call structure in rest of repo after splitting up DeductTxCostsFromUserBalance

* adjust test logic after splitting DeductTxCostsFromUserBalance up

* remove outdated TODO

* address PR comments - remove import name for evm keeper

* remove misleading comment

* address review comments - only handover boolean instead of context

* remove TODO

Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* json-rpc(filters) fix block hash on newBlock filter (#1503)

* tests(filters) add block hash check on newBlock filter

* tests(filters) fix linting errors

* fix(filters): fix newBlock filter response

* fix(filters): add changes on CHANGELOG file

* fix(ci): add gitleaks config (#1513)

* fix(ci): add gitleaks config to ignore init.sh

* make ci lint init.sh

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* tests(filters): add/improve integration tests for JSON-RPC methods (#1480)

* tests(filters) add block hash check on newBlock filter

* tests(filters) add getLogs test cases

* tests(filters) add eth_newFilter multiple filters test cases

* tests(filters) add eth_newFilter and eth_eth_uninstallFilter test case

* tests(filters) fix linting errors

* tests(filters) fix linting error on imports

* tests(filters) add test case: register filter before contract deploy

* tests(filters) refactor logs topics assertion

* tests(filters) add topics filter test cases

* tests(filters) fix linting errors

* tests(filters) remove unnecessary package.json file

* tests(filters) update based on PR comments

* tests(filters) separate getNewBlocks failing test to a separate PR

* tests(filters) add retry on send_tx to avoid Timeout error

* tests(filters) add logs by topic and block range test case

* update gomod2nix

* tests(filters) remove test elapsed time log

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* add dragonberry update changelog entry again

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Ramiro Carlucho <ramirocarlucho@gmail.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Devon Bear <itsdevbear@berachain.com>
Co-authored-by: v-homsi <110708931+v-homsi@users.noreply.github.com>

* chore(release): merge main to v0.20 release branch (#1518)

* deps(sdk): bump to v0.46.4 (#1423)

* deps(sdk): bump to v0.46.4

* deps(sdk): add IAVLDisableFastNode flag with false default

* imp: reduce integration test block time to 2s (#1428)

* build(deps): bump github.com/onsi/gomega from 1.23.0 to 1.24.0 (#1429)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): different result from `eth_getProof` comparing with Ethereum (#1431)

* align with eth_getProof

for more info, see https://eips.ethereum.org/EIPS/eip-1186

* add GetHexProofs

* add change doc

* keep default res

* fix lint

* add e2e test

* Apply suggestions from code review

* fix lint

* nix run -f ./nix gomod2nix

* Refactor EIP-712 signature verification (#1397)

* [WIP] EIP-712 Signature Refactor

* Debug and add ante tests

* Add tests for failure cases

* Add changelog entry

* Code cleanup

* Add tests for MsgDelegate and MsgWithdrawDelegationReward

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Code cleanup

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Minor codefix

* Update ethereum/eip712/encoding.go

* Minor code revision updates

* Refactor EIP712 unit tests to use test suite

* Address import cycle and implement minor refactors

* Fix lint issues

* Add EIP712 unit suite test function

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Add minor refactors; increase test coverage

* Correct ante_test for change in payload

* Add single-signer util and tests

* Update ethereum/eip712/encoding.go

* Update ethereum/eip712/encoding.go

* fix build

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: build test on mac by updating to python3.10 (#1437)

* build(deps): bump loader-utils from 1.4.0 to 1.4.1 in /tests/solidity (#1445)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(evm): improve performance of EstimateGas (#1444)

* imp(evm): improve performance of EstimateGas

* changelog

* fix(rpc): decode `finalized` block number (#1442)

* fix(rpc): decode 'finalized' block number

* changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/gomega from 1.24.0 to 1.24.1 (#1449)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.24.0 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.24.0...v1.24.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0 (#1439)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: unstable tx_priority test (#1440)

* fix unstable tx_priority test

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.1 to 5.1.0 (#1450)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.1.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#1454)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor(all): refactor errors import to use cosmossdk.io (#1456)

* refactor (errors) refactor errors import to use cosmossdk.io instead of cosmos-sdk/types/errors

* refactor (errors) refactor errors import in ethsecp256k1 file

* refactor (errors) add changes to changelog

* build(deps): bump alpine from 3.16.2 to 3.16.3 (#1453)

Bumps alpine from 3.16.2 to 3.16.3.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Empty KV gas config (#1460)

* update sdk version

* setup empty gas config

* fix lint

* fix integration tests

* add Ante unit test

* update changelog

* test: remove unused integration tests (#1462)

* fix: remove e2e github action (#1463)

* remove unused tests

* imp: remove e2e github action

* build(deps): bump loader-utils from 1.4.1 to 1.4.2 in /tests/solidity (#1464)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore (deps): Update geth version to v1.10.25 (#1413)

* build(deps): bump github.com/ethereum/go-ethereum

Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.10.19 to 1.10.25.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.19...v1.10.25)

---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* wip geth update

* fix geth init flag order

* add chainId to getTransaction. fix types comparison. update expected values on tests

* wip add tracer config

* tracers test

* update tests

* update to v1.10.25

* fix linter python

* ignore error

* fix lint

* additional changes from diff

* fix issues

* solve lint issues

* fix tests

* fix flake

* wrap types comparison in integration tests

* fix integration tests

* fix flake

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Add EIP-712 encoding support type for any array (#1430)

* Add EIP-712 encoding support type for any array

* Refactor implementation + add tests

* Refactor unpacking implementation; refactor test case

* Fix lint issue

* Add MsgExec test case

* Update comment for clarity

* Add changelog entry

* Refactor `sdkerrors` to `errorsmod`

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: extend geth config on integration tests (#1467)

* changing git config and adding tests

* removing print statements

* remove unneccessary imports

* fix flake

* remove geth setup test

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: Add unit tests for rpc client endpoints (#1409)

* test: add preliminary unit tests and additional mocks for chain_info, account_info and filters

* tests: added additional mocked client calls

* tests: bumped coverage of call_tx to 56% and chain_info to 77%

* tests: bumped call_tx coverage to 70.2% and added additional mock client calls

* tests: tx_info preliminary tests added for debugging.

* tests: added test coverage for sign_tx and additional mocks

* tests: tx_info test coverage bumped to 60.3%

* test: coverage for tracing_tests now at 72%

* tests: added fee makert query client mocks and bumped chain_info to 87.6% coverage.

* tests: failing Cosmos auth module account query.

* tests: added FeeMarket Params mock to call_tx_test

* cleanup some unused code

* tests: added helper function to test suite for signing a Tx and bumped coverage of tx_info to 71.2%

* test: commented GetAccount error case and bumped chain_info to 90.3% coverage

* test: cleanup of tests in node_info, sign_tx and account_info

* Clean up print

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Apply suggestions from code review

* fix import issues

Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Refactor to omit empty optionals from EIP-712 type generation (#1459)

* Refactor to omit empty values from type creation; add test for v1.vote

* Add test for createValidator with optional fields left blank

* Add changelog entry

* Update changelog entry

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: protogen scripts were not correctly implemented (#1466)

* Delete local copy of third party proto files

* Update protocgen script and buf yaml files to mirror cosmos-sdk

* Update makefile commands for proto-gen and proto-swagger-gen to correctly use docker

* Commit changed .pb.go files after updating the protogen scripts

* Adjust grep in proto-tools-installer script to look for correct gogoproto replacement

* address reviews - remove unnecessary ignore in buf.yaml and cosmos-sdk download in the protocgen script

* remove proto-update-deps from makefile as we don't store local copies of third party protofiles anymore

* Add changelog entry

* Update protoc-swagger-gen.sh

* Remove third party queries from swagger-ui config (for now)

* fix integrations tests

* fix dead changelog links (markdown-link-check)

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* added gas consumption test (#1474)

* build(deps): bump github.com/cosmos/cosmos-proto (#1475)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha7 to 1.0.0-alpha8.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha7...v1.0.0-alpha8)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: chain-id in grpc query is not initialized without abci event (#1405)

* fix: chain-id in grpc query is not initialized without abci event

Closes: #1404

Solution:
- pass the chain-id from caller.

* Update CHANGELOG.md

* only override if input is not empty

* add comment to chain id

* pass chain-id to state transition

* Update x/evm/keeper/grpc_query.go

* Apply suggestions from code review

* fix golang lint

* update gomod2nix.toml

* fix unit tests

* update gomod2nix

* api breaking changelog

* add unit tests, and fix TraceBlock by the way

* Update CHANGELOG.md

* test --grpc-only mode in integration tests

* remove tmp var

* Update tests/integration_tests/test_grpc_only.py

* Update x/evm/keeper/grpc_query_test.go

Co-authored-by: mmsqe <tqd0800210105@gmail.com>

* fix linters

* fix nil pointer in tests

* fix conflicts

* fix conflicts

* fixes

* fix lint

* fix unit test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(evm): Simplify Gas Math (#1452)

* fix math

* changelog

* imp(ante): refactor `AnteHandler` (#1455)

* fix(ante): block gas check

* refactor

* rename

* use gas wanted

* remove consume gas logic on ante handler

* comment

* c++

* move min gas price

* comment

* Update app/ante/eth.go

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix build

* fix integration test script

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: add additional gas consumption tests (#1477)

* split existing gas test

* added contract call test

* fix flake issues, update gomod2nix

* isort imports

* add stateful contract calls

* chore: update proto make commands (#1471)

* Update proto make commands to use cosmos docker image and add notes for possible problems

* Apply make proto-all with new docker container

* Remove stale DOCKER_BUF variable

* Revert to using the tendermintdev/sdk-proto-gen docker image

* remove '@' in proto-lint and proto-check-breaking for consistency with other commands

* Remove unnecessary go get from protocgen.sh (only works after adding --network host to docker run)

* Add --network host to docker run for compatibility on linux

* use cosmos/proto-builder docker image for proto-format because clang-format is not installed on tendermintdev/sdk-proto-gen

* update swagger docs after recent additions to evm.proto in #1413

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* Remove unbound labels from added custom tendermint metrics (#1434)

* Remove unbound labels from added custom tendermint metrics

* Add entry to changelog

* deps: bump SDK to v0.46.6 (#1486)

* deps: bump SDK to v0.46.6

* changelog

* Update CHANGELOG.md

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* fear(eip712): Add EIP-712 encoding for multiple messages of the same type (#1483)

* Add EIP-712 encoding for multiple messages of the same type

* Fix Protobuf encoding bug

* Add ante tests

* Refactor naming and minor implementation details

* Test empty transaction coverage

* Address revisions for code clarity

* Move aminoMessage type definition

* fix: enable `fixIssue172` flag for non-deterministic keyring test (#1447)

* enable fixIssue172 flag for test

for more info, https://github.com/btcsuite/btcutil/pull/182/files

* fix import

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(tests): Delete inconsistent test (#1481)

* Delete inconsistent test

* delete test

* build(deps): bump alpine from 3.16.3 to 3.17.0 (#1492)

Bumps alpine from 3.16.3 to 3.17.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#1490)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.1 to 1.51.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.1...v1.51.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1 (#1489)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: refactor imports naming for clarity (#1491)

* chore: refactor imports naming for clarity

* Merge main and fix conflicts

* fix: align empty account result for old blocks as ethereum (#1484)

* align result account as ethereum

* add test_get_transaction_count

* add change doc

* sync gomod2nix

* Apply suggestions from code review

* crosscheck with ws & geth

* sync gomod2nix

* Update rpc/backend/utils.go

* use session provider

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(ante): refactor AnteHandler (#1479)

* imp(ante): refactor AnteHandler

* fix test

* test

* Adjust deprecated sdkerrors import (#1493)

* refactor test files

* Apply suggestions from code review

Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* lint

* prioritization comment

* fix test

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* chore: Update linter and protogen configuration (#1478)

* add protolint yaml

* Update .protolint.yml with Evmos settings

* Add super-linter.yml for GH action

* Copy .markdownlint.yml settings from Evmos

* Sort proto imports

* address protolint error in all Protobuf files

* update Makefile to mirror Proto commands for Evmos

* remove unnecessary go get command in protocgen.sh when using cosmos docker image

* copy .clang-format from Evmos repo

* apply make proto-format

* Execute make proto-all after changes to config are complete

* address last linter comment

* fix(server): telemetry setup (#1497)

* fix(server): telemetry setup

* more fixes

* fix

* changelog

* update standalone process

* chore(evm) - Delete deprecated store migrations (#1498)

* (fix): Delete deprecated migrations

* Update x/evm/module.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(evm): Added Cancun and Shanghai blocks to ChainConfig (#1499)

* (refactor): Added Cancun and Shanghai blocks to ChainConfig

* (tests): Added test for invalid Shanghai and Cancun block

* (fix): ran proto linter

* Applied changes from code review

* Added CHANGELOG entry

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(app): add store listener to Ethermint app (#1501)

* add store listener to Ethermint app

* add changelog entry

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4 (#1502)

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.3 to 1.0.0-beta.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.3...math/v1.0.0-beta.4)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(app): register node service (#1505)

* fix(app): register node service

* changelog

* fix(cmd): add missing GetAuxToFeeCommand (#1504)

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* chore(feemarket): Delete deprecated migration logic (#1508)

* (refactor): Remove old migration code

* (fix): Lint and add CHANGELOG entry

* Remove simulation checks (#1507)

* Add cli rollback command

it's useful in app-hash mismatch situation.

* Update CHANGELOG.md

* (refactor): removed old sim tests logic

* (fix): removed tests from CI

* (fix): fix test.yml

* (fix): format and lint

* (fix): fix linter issue

* (fix): fix linter issues v2

* (fix): linter

* (fix): removed sim-test references

* Applied changes from code review

Co-authored-by: HuangYi <huang@crypto.com>

* chore: verify fees refactor (#1496)

* chore: verify fees refactor

* adjust call structure in rest of repo after splitting up DeductTxCostsFromUserBalance

* adjust test logic after splitting DeductTxCostsFromUserBalance up

* remove outdated TODO

* address PR comments - remove import name for evm keeper

* remove misleading comment

* address review comments - only handover boolean instead of context

* remove TODO

Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* json-rpc(filters) fix block hash on newBlock filter (#1503)

* tests(filters) add block hash check on newBlock filter

* tests(filters) fix linting errors

* fix(filters): fix newBlock filter response

* fix(filters): add changes on CHANGELOG file

* fix(ci): add gitleaks config (#1513)

* fix(ci): add gitleaks config to ignore init.sh

* make ci lint init.sh

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* tests(filters): add/improve integration tests for JSON-RPC methods (#1480)

* tests(filters) add block hash check on newBlock filter

* tests(filters) add getLogs test cases

* tests(filters) add eth_newFilter multiple filters test cases

* tests(filters) add eth_newFilter and eth_eth_uninstallFilter test case

* tests(filters) fix linting errors

* tests(filters) fix linting error on imports

* tests(filters) add test case: register filter before contract deploy

* tests(filters) refactor logs topics assertion

* tests(filters) add topics filter test cases

* tests(filters) fix linting errors

* tests(filters) remove unnecessary package.json file

* tests(filters) update based on PR comments

* tests(filters) separate getNewBlocks failing test to a separate PR

* tests(filters) add retry on send_tx to avoid Timeout error

* tests(filters) add logs by topic and block range test case

* update gomod2nix

* tests(filters) remove test elapsed time log

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Ramiro Carlucho <ramirocarlucho@gmail.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Devon Bear <itsdevbear@berachain.com>
Co-authored-by: v-homsi <110708931+v-homsi@users.noreply.github.com>
Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>

* chore: release `v0.20.0-rc3` (#1529)

* deps(sdk): bump to v0.46.4 (#1423)

* deps(sdk): bump to v0.46.4

* deps(sdk): add IAVLDisableFastNode flag with false default

* imp: reduce integration test block time to 2s (#1428)

* build(deps): bump github.com/onsi/gomega from 1.23.0 to 1.24.0 (#1429)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): different result from `eth_getProof` comparing with Ethereum (#1431)

* align with eth_getProof

for more info, see https://eips.ethereum.org/EIPS/eip-1186

* add GetHexProofs

* add change doc

* keep default res

* fix lint

* add e2e test

* Apply suggestions from code review

* fix lint

* nix run -f ./nix gomod2nix

* Refactor EIP-712 signature verification (#1397)

* [WIP] EIP-712 Signature Refactor

* Debug and add ante tests

* Add tests for failure cases

* Add changelog entry

* Code cleanup

* Add tests for MsgDelegate and MsgWithdrawDelegationReward

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Code cleanup

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Minor codefix

* Update ethereum/eip712/encoding.go

* Minor code revision updates

* Refactor EIP712 unit tests to use test suite

* Address import cycle and implement minor refactors

* Fix lint issues

* Add EIP712 unit suite test function

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Add minor refactors; increase test coverage

* Correct ante_test for change in payload

* Add single-signer util and tests

* Update ethereum/eip712/encoding.go

* Update ethereum/eip712/encoding.go

* fix build

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: build test on mac by updating to python3.10 (#1437)

* build(deps): bump loader-utils from 1.4.0 to 1.4.1 in /tests/solidity (#1445)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(evm): improve performance of EstimateGas (#1444)

* imp(evm): improve performance of EstimateGas

* changelog

* fix(rpc): decode `finalized` block number (#1442)

* fix(rpc): decode 'finalized' block number

* changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/gomega from 1.24.0 to 1.24.1 (#1449)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.24.0 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.24.0...v1.24.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0 (#1439)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: unstable tx_priority test (#1440)

* fix unstable tx_priority test

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.1 to 5.1.0 (#1450)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.1.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#1454)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor(all): refactor errors import to use cosmossdk.io (#1456)

* refactor (errors) refactor errors import to use cosmossdk.io instead of cosmos-sdk/types/errors

* refactor (errors) refactor errors import in ethsecp256k1 file

* refactor (errors) add changes to changelog

* build(deps): bump alpine from 3.16.2 to 3.16.3 (#1453)

Bumps alpine from 3.16.2 to 3.16.3.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Empty KV gas config (#1460)

* update sdk version

* setup empty gas config

* fix lint

* fix integration tests

* add Ante unit test

* update changelog

* test: remove unused integration tests (#1462)

* fix: remove e2e github action (#1463)

* remove unused tests

* imp: remove e2e github action

* build(deps): bump loader-utils from 1.4.1 to 1.4.2 in /tests/solidity (#1464)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore (deps): Update geth version to v1.10.25 (#1413)

* build(deps): bump github.com/ethereum/go-ethereum

Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.10.19 to 1.10.25.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.19...v1.10.25)

---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* wip geth update

* fix geth init flag order

* add chainId to getTransaction. fix types comparison. update expected values on tests

* wip add tracer config

* tracers test

* update tests

* update to v1.10.25

* fix linter python

* ignore error

* fix lint

* additional changes from diff

* fix issues

* solve lint issues

* fix tests

* fix flake

* wrap types comparison in integration tests

* fix integration tests

* fix flake

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Add EIP-712 encoding support type for any array (#1430)

* Add EIP-712 encoding support type for any array

* Refactor implementation + add tests

* Refactor unpacking implementation; refactor test case

* Fix lint issue

* Add MsgExec test case

* Update comment for clarity

* Add changelog entry

* Refactor `sdkerrors` to `errorsmod`

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: extend geth config on integration tests (#1467)

* changing git config and adding tests

* removing print statements

* remove unneccessary imports

* fix flake

* remove geth setup test

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: Add unit tests for rpc client endpoints (#1409)

* test: add preliminary unit tests and additional mocks for chain_info, account_info and filters

* tests: added additional mocked client calls

* tests: bumped coverage of call_tx to 56% and chain_info to 77%

* tests: bumped call_tx coverage to 70.2% and added additional mock client calls

* tests: tx_info preliminary tests added for debugging.

* tests: added test coverage for sign_tx and additional mocks

* tests: tx_info test coverage bumped to 60.3%

* test: coverage for tracing_tests now at 72%

* tests: added fee makert query client mocks and bumped chain_info to 87.6% coverage.

* tests: failing Cosmos auth module account query.

* tests: added FeeMarket Params mock to call_tx_test

* cleanup some unused code

* tests: added helper function to test suite for signing a Tx and bumped coverage of tx_info to 71.2%

* test: commented GetAccount error case and bumped chain_info to 90.3% coverage

* test: cleanup of tests in node_info, sign_tx and account_info

* Clean up print

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Apply suggestions from code review

* fix import issues

Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Refactor to omit empty optionals from EIP-712 type generation (#1459)

* Refactor to omit empty values from type creation; add test for v1.vote

* Add test for createValidator with optional fields left blank

* Add changelog entry

* Update changelog entry

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: protogen scripts were not correctly implemented (#1466)

* Delete local copy of third party proto files

* Update protocgen script and buf yaml files to mirror cosmos-sdk

* Update makefile commands for proto-gen and proto-swagger-gen to correctly use docker

* Commit changed .pb.go files after updating the protogen scripts

* Adjust grep in proto-tools-installer script to look for correct gogoproto replacement

* address reviews - remove unnecessary ignore in buf.yaml and cosmos-sdk download in the protocgen script

* remove proto-update-deps from makefile as we don't store local copies of third party protofiles anymore

* Add changelog entry

* Update protoc-swagger-gen.sh

* Remove third party queries from swagger-ui config (for now)

* fix integrations tests

* fix dead changelog links (markdown-link-check)

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* added gas consumption test (#1474)

* build(deps): bump github.com/cosmos/cosmos-proto (#1475)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha7 to 1.0.0-alpha8.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha7...v1.0.0-alpha8)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: chain-id in grpc query is not initialized without abci event (#1405)

* fix: chain-id in grpc query is not initialized without abci event

Closes: #1404

Solution:
- pass the chain-id from caller.

* Update CHANGELOG.md

* only override if input is not empty

* add comment to chain id

* pass chain-id to state transition

* Update x/evm/keeper/grpc_query.go

* Apply suggestions from code review

* fix golang lint

* update gomod2nix.toml

* fix unit tests

* update gomod2nix

* api breaking changelog

* add unit tests, and fix TraceBlock by the way

* Update CHANGELOG.md

* test --grpc-only mode in integration tests

* remove tmp var

* Update tests/integration_tests/test_grpc_only.py

* Update x/evm/keeper/grpc_query_test.go

Co-authored-by: mmsqe <tqd0800210105@gmail.com>

* fix linters

* fix nil pointer in tests

* fix conflicts

* fix conflicts

* fixes

* fix lint

* fix unit test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(evm): Simplify Gas Math (#1452)

* fix math

* changelog

* imp(ante): refactor `AnteHandler` (#1455)

* fix(ante): block gas check

* refactor

* rename

* use gas wanted

* remove consume gas logic on ante handler

* comment

* c++

* move min gas price

* comment

* Update app/ante/eth.go

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix build

* fix integration test script

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: add additional gas consumption tests (#1477)

* split existing gas test

* added contract call test

* fix flake issues, update gomod2nix

* isort imports

* add stateful contract calls

* chore: update proto make commands (#1471)

* Update proto make commands to use cosmos docker image and add notes for possible problems

* Apply make proto-all with new docker container

* Remove stale DOCKER_BUF variable

* Revert to using the tendermintdev/sdk-proto-gen docker image

* remove '@' in proto-lint and proto-check-breaking for consistency with other commands

* Remove unnecessary go get from protocgen.sh (only works after adding --network host to docker run)

* Add --network host to docker run for compatibility on linux

* use cosmos/proto-builder docker image for proto-format because clang-format is not installed on tendermintdev/sdk-proto-gen

* update swagger docs after recent additions to evm.proto in #1413

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* Remove unbound labels from added custom tendermint metrics (#1434)

* Remove unbound labels from added custom tendermint metrics

* Add entry to changelog

* deps: bump SDK to v0.46.6 (#1486)

* deps: bump SDK to v0.46.6

* changelog

* Update CHANGELOG.md

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* fear(eip712): Add EIP-712 encoding for multiple messages of the same type (#1483)

* Add EIP-712 encoding for multiple messages of the same type

* Fix Protobuf encoding bug

* Add ante tests

* Refactor naming and minor implementation details

* Test empty transaction coverage

* Address revisions for code clarity

* Move aminoMessage type definition

* fix: enable `fixIssue172` flag for non-deterministic keyring test (#1447)

* enable fixIssue172 flag for test

for more info, https://github.com/btcsuite/btcutil/pull/182/files

* fix import

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(tests): Delete inconsistent test (#1481)

* Delete inconsistent test

* delete test

* build(deps): bump alpine from 3.16.3 to 3.17.0 (#1492)

Bumps alpine from 3.16.3 to 3.17.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#1490)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.1 to 1.51.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.1...v1.51.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1 (#1489)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: refactor imports naming for clarity (#1491)

* chore: refactor imports naming for clarity

* Merge main and fix conflicts

* fix: align empty account result for old blocks as ethereum (#1484)

* align result account as ethereum

* add test_get_transaction_count

* add change doc

* sync gomod2nix

* Apply suggestions from code review

* crosscheck with ws & geth

* sync gomod2nix

* Update rpc/backend/utils.go

* use session provider

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(ante): refactor AnteHandler (#1479)

* imp(ante): refactor AnteHandler

* fix test

* test

* Adjust deprecated sdkerrors import (#1493)

* refactor test files

* Apply suggestions from code review

Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* lint

* prioritization comment

* fix test

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* chore: Update linter and protogen configuration (#1478)

* add protolint yaml

* Update .protolint.yml with Evmos settings

* Add super-linter.yml for GH action

* Copy .markdownlint.yml settings from Evmos

* Sort proto imports

* address protolint error in all Protobuf files

* update Makefile to mirror Proto commands for Evmos

* remove unnecessary go get command in protocgen.sh when using cosmos docker image

* copy .clang-format from Evmos repo

* apply make proto-format

* Execute make proto-all after changes to config are complete

* address last linter comment

* fix(server): telemetry setup (#1497)

* fix(server): telemetry setup

* more fixes

* fix

* changelog

* update standalone process

* chore(evm) - Delete deprecated store migrations (#1498)

* (fix): Delete deprecated migrations

* Update x/evm/module.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(evm): Added Cancun and Shanghai blocks to ChainConfig (#1499)

* (refactor): Added Cancun and Shanghai blocks to ChainConfig

* (tests): Added test for invalid Shanghai and Cancun block

* (fix): ran proto linter

* Applied changes from code review

* Added CHANGELOG entry

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(app): add store listener to Ethermint app (#1501)

* add store listener to Ethermint app

* add changelog entry

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4 (#1502)

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.3 to 1.0.0-beta.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.3...math/v1.0.0-beta.4)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(app): register node service (#1505)

* fix(app): register node service

* changelog

* fix(cmd): add missing GetAuxToFeeCommand (#1504)

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* chore(feemarket): Delete deprecated migration logic (#1508)

* (refactor): Remove old migration code

* (fix): Lint and add CHANGELOG entry

* Remove simulation checks (#1507)

* Add cli rollback command

it's useful in app-hash mismatch situation.

* Update CHANGELOG.md

* (refactor): removed old sim tests logic

* (fix): removed tests from CI

* (fix): fix test.yml

* (fix): format and lint

* (fix): fix linter issue

* (fix): fix linter issues v2

* (fix): linter

* (fix): removed sim-test references

* Applied changes from code review

Co-authored-by: HuangYi <huang@crypto.com>

* chore: verify fees refactor (#1496)

* chore: verify fees refactor

* adjust call structure in rest of repo after splitting up DeductTxCostsFromUserBalance

* adjust test logic after splitting DeductTxCostsFromUserBalance up

* remove outdated TODO

* address PR comments - remove import name for evm keeper

* remove misleading comment

* address review comments - only handover boolean instead of context

* remove TODO

Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* json-rpc(filters) fix block hash on newBlock filter (#1503)

* tests(filters) add block hash check on newBlock filter

* tests(filters) fix linting errors

* fix(filters): fix newBlock filter response

* fix(filters): add changes on CHANGELOG file

* fix(ci): add gitleaks config (#1513)

* fix(ci): add gitleaks config to ignore init.sh

* make ci lint init.sh

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* tests(filters): add/improve integration tests for JSON-RPC methods (#1480)

* tests(filters) add block hash check on newBlock filter

* tests(filters) add getLogs test cases

* tests(filters) add eth_newFilter multiple filters test cases

* tests(filters) add eth_newFilter and eth_eth_uninstallFilter test case

* tests(filters) fix linting errors

* tests(filters) fix linting error on imports

* tests(filters) add test case: register filter before contract deploy

* tests(filters) refactor logs topics assertion

* tests(filters) add topics filter test cases

* tests(filters) fix linting errors

* tests(filters) remove unnecessary package.json file

* tests(filters) update based on PR comments

* tests(filters) separate getNewBlocks failing test to a separate PR

* tests(filters) add retry on send_tx to avoid Timeout error

* tests(filters) add logs by topic and block range test case

* update gomod2nix

* tests(filters) remove test elapsed time log

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump minimist in /tests/integration_tests/hardhat (#1516)

Bumps [minimist](https://github.com/minimistjs/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/minimistjs/minimist/compare/v1.2.5...v1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(filters): add logs by topic test case (#1515)

* tests(filters) add logs by topic test case

* fix(logs): add getLogs http call in test

* tests(logs) add test case for getLogs by topic

* tests(logs) fix lint errors

* chore(all): markdownlint (#1522)

* build(deps): bump github.com/cosmos/cosmos-proto (#1525)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha8 to 1.0.0-beta.1.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha8...v1.0.0-beta.1)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump decode-uri-component in /tests/solidity (#1526)

Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: decode-uri-component
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(integration): block gas limit tests (#1500)

* added antehandler test

* add integration tests

* add back gas call test

* added integration tests v2

* linters

* Update tests/integration_tests/test_gas.py

* Update tests/integration_tests/test_gas.py

* update gomod2nix

* Update tests/integration_tests/test_gas.py

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* chore(ante): deprecate legacy EIP-712 signature verification via AnteHandler (#1521)

* fix: rename EIP-712 sig. verification to indicate Legacy status

* Add changelog entry

* Update changelog, refactor implementation, update comments

* Apply suggestions from code review

* address comments

* changelog

* Update CHANGELOG.md

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* feat(ci): add Golang dependency vulnerability check (#1528)

* feat(ci): add Golang dependency vulnerability check

* update

* check run

* c++

* chore(evm): add comment regarding RANDOM opcode (#1520)

* fix: add random field to BlockContext using block header hash

* add comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* update release date

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Ramiro Carlucho <ramirocarlucho@gmail.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Devon Bear <itsdevbear@berachain.com>
Co-authored-by: v-homsi <110708931+v-homsi@users.noreply.github.com>
Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>

* chore(release): v0.20-rc4 (#1546)

* deps(sdk): bump to v0.46.4 (#1423)

* deps(sdk): bump to v0.46.4

* deps(sdk): add IAVLDisableFastNode flag with false default

* imp: reduce integration test block time to 2s (#1428)

* build(deps): bump github.com/onsi/gomega from 1.23.0 to 1.24.0 (#1429)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(rpc): different result from `eth_getProof` comparing with Ethereum (#1431)

* align with eth_getProof

for more info, see https://eips.ethereum.org/EIPS/eip-1186

* add GetHexProofs

* add change doc

* keep default res

* fix lint

* add e2e test

* Apply suggestions from code review

* fix lint

* nix run -f ./nix gomod2nix

* Refactor EIP-712 signature verification (#1397)

* [WIP] EIP-712 Signature Refactor

* Debug and add ante tests

* Add tests for failure cases

* Add changelog entry

* Code cleanup

* Add tests for MsgDelegate and MsgWithdrawDelegationReward

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Code cleanup

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Minor codefix

* Update ethereum/eip712/encoding.go

* Minor code revision updates

* Refactor EIP712 unit tests to use test suite

* Address import cycle and implement minor refactors

* Fix lint issues

* Add EIP712 unit suite test function

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Update ethereum/eip712/encoding.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Add minor refactors; increase test coverage

* Correct ante_test for change in payload

* Add single-signer util and tests

* Update ethereum/eip712/encoding.go

* Update ethereum/eip712/encoding.go

* fix build

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: build test on mac by updating to python3.10 (#1437)

* build(deps): bump loader-utils from 1.4.0 to 1.4.1 in /tests/solidity (#1445)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp(evm): improve performance of EstimateGas (#1444)

* imp(evm): improve performance of EstimateGas

* changelog

* fix(rpc): decode `finalized` block number (#1442)

* fix(rpc): decode 'finalized' block number

* changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump github.com/onsi/gomega from 1.24.0 to 1.24.1 (#1449)

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.24.0 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.24.0...v1.24.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0 (#1439)

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: unstable tx_priority test (#1440)

* fix unstable tx_priority test

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

* Update tests/integration_tests/test_priority.py

Co-authored-by: yihuang <huang@crypto.com>

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.0.1 to 5.1.0 (#1450)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.1.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#1454)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor(all): refactor errors import to use cosmossdk.io (#1456)

* refactor (errors) refactor errors import to use cosmossdk.io instead of cosmos-sdk/types/errors

* refactor (errors) refactor errors import in ethsecp256k1 file

* refactor (errors) add changes to changelog

* build(deps): bump alpine from 3.16.2 to 3.16.3 (#1453)

Bumps alpine from 3.16.2 to 3.16.3.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Empty KV gas config (#1460)

* update sdk version

* setup empty gas config

* fix lint

* fix integration tests

* add Ante unit test

* update changelog

* test: remove unused integration tests (#1462)

* fix: remove e2e github action (#1463)

* remove unused tests

* imp: remove e2e github action

* build(deps): bump loader-utils from 1.4.1 to 1.4.2 in /tests/solidity (#1464)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore (deps): Update geth version to v1.10.25 (#1413)

* build(deps): bump github.com/ethereum/go-ethereum

Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.10.19 to 1.10.25.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.10.19...v1.10.25)

---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* wip geth update

* fix geth init flag order

* add chainId to getTransaction. fix types comparison. update expected values on tests

* wip add tracer config

* tracers test

* update tests

* update to v1.10.25

* fix linter python

* ignore error

* fix lint

* additional changes from diff

* fix issues

* solve lint issues

* fix tests

* fix flake

* wrap types comparison in integration tests

* fix integration tests

* fix flake

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Add EIP-712 encoding support type for any array (#1430)

* Add EIP-712 encoding support type for any array

* Refactor implementation + add tests

* Refactor unpacking implementation; refactor test case

* Fix lint issue

* Add MsgExec test case

* Update comment for clarity

* Add changelog entry

* Refactor `sdkerrors` to `errorsmod`

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: extend geth config on integration tests (#1467)

* changing git config and adding tests

* removing print statements

* remove unneccessary imports

* fix flake

* remove geth setup test

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: Add unit tests for rpc client endpoints (#1409)

* test: add preliminary unit tests and additional mocks for chain_info, account_info and filters

* tests: added additional mocked client calls

* tests: bumped coverage of call_tx to 56% and chain_info to 77%

* tests: bumped call_tx coverage to 70.2% and added additional mock client calls

* tests: tx_info preliminary tests added for debugging.

* tests: added test coverage for sign_tx and additional mocks

* tests: tx_info test coverage bumped to 60.3%

* test: coverage for tracing_tests now at 72%

* tests: added fee makert query client mocks and bumped chain_info to 87.6% coverage.

* tests: failing Cosmos auth module account query.

* tests: added FeeMarket Params mock to call_tx_test

* cleanup some unused code

* tests: added helper function to test suite for signing a Tx and bumped coverage of tx_info to 71.2%

* test: commented GetAccount error case and bumped chain_info to 90.3% coverage

* test: cleanup of tests in node_info, sign_tx and account_info

* Clean up print

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Apply suggestions from code review

* fix import issues

Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* Refactor to omit empty optionals from EIP-712 type generation (#1459)

* Refactor to omit empty values from type creation; add test for v1.vote

* Add test for createValidator with optional fields left blank

* Add changelog entry

* Update changelog entry

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix: protogen scripts were not correctly implemented (#1466)

* Delete local copy of third party proto files

* Update protocgen script and buf yaml files to mirror cosmos-sdk

* Update makefile commands for proto-gen and proto-swagger-gen to correctly use docker

* Commit changed .pb.go files after updating the protogen scripts

* Adjust grep in proto-tools-installer script to look for correct gogoproto replacement

* address reviews - remove unnecessary ignore in buf.yaml and cosmos-sdk download in the protocgen script

* remove proto-update-deps from makefile as we don't store local copies of third party protofiles anymore

* Add changelog entry

* Update protoc-swagger-gen.sh

* Remove third party queries from swagger-ui config (for now)

* fix integrations tests

* fix dead changelog links (markdown-link-check)

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* added gas consumption test (#1474)

* build(deps): bump github.com/cosmos/cosmos-proto (#1475)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha7 to 1.0.0-alpha8.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha7...v1.0.0-alpha8)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: chain-id in grpc query is not initialized without abci event (#1405)

* fix: chain-id in grpc query is not initialized without abci event

Closes: #1404

Solution:
- pass the chain-id from caller.

* Update CHANGELOG.md

* only override if input is not empty

* add comment to chain id

* pass chain-id to state transition

* Update x/evm/keeper/grpc_query.go

* Apply suggestions from code review

* fix golang lint

* update gomod2nix.toml

* fix unit tests

* update gomod2nix

* api breaking changelog

* add unit tests, and fix TraceBlock by the way

* Update CHANGELOG.md

* test --grpc-only mode in integration tests

* remove tmp var

* Update tests/integration_tests/test_grpc_only.py

* Update x/evm/keeper/grpc_query_test.go

Co-authored-by: mmsqe <tqd0800210105@gmail.com>

* fix linters

* fix nil pointer in tests

* fix conflicts

* fix conflicts

* fixes

* fix lint

* fix unit test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(evm): Simplify Gas Math (#1452)

* fix math

* changelog

* imp(ante): refactor `AnteHandler` (#1455)

* fix(ante): block gas check

* refactor

* rename

* use gas wanted

* remove consume gas logic on ante handler

* comment

* c++

* move min gas price

* comment

* Update app/ante/eth.go

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix build

* fix integration test script

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* tests: add additional gas consumption tests (#1477)

* split existing gas test

* added contract call test

* fix flake issues, update gomod2nix

* isort imports

* add stateful contract calls

* chore: update proto make commands (#1471)

* Update proto make commands to use cosmos docker image and add notes for possible problems

* Apply make proto-all with new docker container

* Remove stale DOCKER_BUF variable

* Revert to using the tendermintdev/sdk-proto-gen docker image

* remove '@' in proto-lint and proto-check-breaking for consistency with other commands

* Remove unnecessary go get from protocgen.sh (only works after adding --network host to docker run)

* Add --network host to docker run for compatibility on linux

* use cosmos/proto-builder docker image for proto-format because clang-format is not installed on tendermintdev/sdk-proto-gen

* update swagger docs after recent additions to evm.proto in #1413

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* Remove unbound labels from added custom tendermint metrics (#1434)

* Remove unbound labels from added custom tendermint metrics

* Add entry to changelog

* deps: bump SDK to v0.46.6 (#1486)

* deps: bump SDK to v0.46.6

* changelog

* Update CHANGELOG.md

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* fear(eip712): Add EIP-712 encoding for multiple messages of the same type (#1483)

* Add EIP-712 encoding for multiple messages of the same type

* Fix Protobuf encoding bug

* Add ante tests

* Refactor naming and minor implementation details

* Test empty transaction coverage

* Address revisions for code clarity

* Move aminoMessage type definition

* fix: enable `fixIssue172` flag for non-deterministic keyring test (#1447)

* enable fixIssue172 flag for test

for more info, https://github.com/btcsuite/btcutil/pull/182/files

* fix import

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* fix(tests): Delete inconsistent test (#1481)

* Delete inconsistent test

* delete test

* build(deps): bump alpine from 3.16.3 to 3.17.0 (#1492)

Bumps alpine from 3.16.3 to 3.17.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#1490)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.1 to 1.51.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.1...v1.51.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1 (#1489)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: refactor imports naming for clarity (#1491)

* chore: refactor imports naming for clarity

* Merge main and fix conflicts

* fix: align empty account result for old blocks as ethereum (#1484)

* align result account as ethereum

* add test_get_transaction_count

* add change doc

* sync gomod2nix

* Apply suggestions from code review

* crosscheck with ws & geth

* sync gomod2nix

* Update rpc/backend/utils.go

* use session provider

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* imp(ante): refactor AnteHandler (#1479)

* imp(ante): refactor AnteHandler

* fix test

* test

* Adjust deprecated sdkerrors import (#1493)

* refactor test files

* Apply suggestions from code review

Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* lint

* prioritization comment

* fix test

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* chore: Update linter and protogen configuration (#1478)

* add protolint yaml

* Update .protolint.yml with Evmos settings

* Add super-linter.yml for GH action

* Copy .markdownlint.yml settings from Evmos

* Sort proto imports

* address protolint error in all Protobuf files

* update Makefile to mirror Proto commands for Evmos

* remove unnecessary go get command in protocgen.sh when using cosmos docker image

* copy .clang-format from Evmos repo

* apply make proto-format

* Execute make proto-all after changes to config are complete

* address last linter comment

* fix(server): telemetry setup (#1497)

* fix(server): telemetry setup

* more fixes

* fix

* changelog

* update standalone process

* chore(evm) - Delete deprecated store migrations (#1498)

* (fix): Delete deprecated migrations

* Update x/evm/module.go

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix(evm): Added Cancun and Shanghai blocks to ChainConfig (#1499)

* (refactor): Added Cancun and Shanghai blocks to ChainConfig

* (tests): Added test for invalid Shanghai and Cancun block

* (fix): ran proto linter

* Applied changes from code review

* Added CHANGELOG entry

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* chore(app): add store listener to Ethermint app (#1501)

* add store listener to Ethermint app

* add changelog entry

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4 (#1502)

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.3 to 1.0.0-beta.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.3...math/v1.0.0-beta.4)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(app): register node service (#1505)

* fix(app): register node service

* changelog

* fix(cmd): add missing GetAuxToFeeCommand (#1504)

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* chore(feemarket): Delete deprecated migration logic (#1508)

* (refactor): Remove old migration code

* (fix): Lint and add CHANGELOG entry

* Remove simulation checks (#1507)

* Add cli rollback command

it's useful in app-hash mismatch situation.

* Update CHANGELOG.md

* (refactor): removed old sim tests logic

* (fix): removed tests from CI

* (fix): fix test.yml

* (fix): format and lint

* (fix): fix linter issue

* (fix): fix linter issues v2

* (fix): linter

* (fix): removed sim-test references

* Applied changes from code review

Co-authored-by: HuangYi <huang@crypto.com>

* chore: verify fees refactor (#1496)

* chore: verify fees refactor

* adjust call structure in rest of repo after splitting up DeductTxCostsFromUserBalance

* adjust test logic after splitting DeductTxCostsFromUserBalance up

* remove outdated TODO

* address PR comments - remove import name for evm keeper

* remove misleading comment

* address review comments - only handover boolean instead of context

* remove TODO

Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>

* json-rpc(filters) fix block hash on newBlock filter (#1503)

* tests(filters) add block hash check on newBlock filter

* tests(filters) fix linting errors

* fix(filters): fix newBlock filter response

* fix(filters): add changes on CHANGELOG file

* fix(ci): add gitleaks config (#1513)

* fix(ci): add gitleaks config to ignore init.sh

* make ci lint init.sh

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* tests(filters): add/improve integration tests for JSON-RPC methods (#1480)

* tests(filters) add block hash check on newBlock filter

* tests(filters) add getLogs test cases

* tests(filters) add eth_newFilter multiple filters test cases

* tests(filters) add eth_newFilter and eth_eth_uninstallFilter test case

* tests(filters) fix linting errors

* tests(filters) fix linting error on imports

* tests(filters) add test case: register filter before contract deploy

* tests(filters) refactor logs topics assertion

* tests(filters) add topics filter test cases

* tests(filters) fix linting errors

* tests(filters) remove unnecessary package.json file

* tests(filters) update based on PR comments

* tests(filters) separate getNewBlocks failing test to a separate PR

* tests(filters) add retry on send_tx to avoid Timeout error

* tests(filters) add logs by topic and block range test case

* update gomod2nix

* tests(filters) remove test elapsed time log

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump minimist in /tests/integration_tests/hardhat (#1516)

Bumps [minimist](https://github.com/minimistjs/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/minimistjs/minimist/compare/v1.2.5...v1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(filters): add logs by topic test case (#1515)

* tests(filters) add logs by topic test case

* fix(logs): add getLogs http call in test

* tests(logs) add test case for getLogs by topic

* tests(logs) fix lint errors

* chore(all): markdownlint (#1522)

* build(deps): bump github.com/cosmos/cosmos-proto (#1525)

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha8 to 1.0.0-beta.1.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha8...v1.0.0-beta.1)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump decode-uri-component in /tests/solidity (#1526)

Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: decode-uri-component
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tests(integration): block gas limit tests (#1500)

* added antehandler test

* add integration tests

* add back gas call test

* added integration tests v2

* linters

* Update tests/integration_tests/test_gas.py

* Update tests/integration_tests/test_gas.py

* update gomod2nix

* Update tests/integration_tests/test_gas.py

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* chore(ante): deprecate legacy EIP-712 signature verification via AnteHandler (#1521)

* fix: rename EIP-712 sig. verification to indicate Legacy status

* Add changelog entry

* Update changelog, refactor implementation, update comments

* Apply suggestions from code review

* address comments

* changelog

* Update CHANGELOG.md

Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* fix test

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>

* feat(ci): add Golang dependency vulnerability check (#1528)

* feat(ci): add Golang dependency vulnerability check

* update

* check run

* c++

* chore(evm): add comment regarding RANDOM opcode (#1520)

* fix: add random field to BlockContext using block header hash

* add comment

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* fix: Bump Go-Ethereum dependency to 1.10.26 (#1532)

* fix: Bump Go-Ethereum dependency to 1.10.26

* Add changelog entry

* build(deps): bump golang.org/x/text from 0.4.0 to 0.5.0 (#1534)

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.4.0...v0.5.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump qs from 6.5.2 to 6.5.3 in /tests/solidity (#1537)

Bumps [qs](https://github.com/ljharb/qs) from 6.5.2 to 6.5.3.
- [Release notes](https://github.com/ljharb/qs/releases)
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.5.2...v6.5.3)

---
updated-dependencies:
- dependency-name: qs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/net from 0.2.0 to 0.3.0 (#1535)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/net from 0.3.0 to 0.4.0 (#1542)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump technote-space/get-diff-action from 6.1.1 to 6.1.2 (#1541)

Bumps [technote-space/get-diff-action](https://github.com/technote-space/get-diff-action) from 6.1.1 to 6.1.2.
- [Release notes](https://github.com/technote-space/get-diff-action/releases)
- [Changelog](https://github.com/technote-space/get-diff-action/blob/main/.releasegarc)
- [Commits](https://github.com/technote-space/get-diff-action/compare/v6.1.1...v6.1.2)

---
updated-dependencies:
- dependency-name: technote-space/get-diff-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* imp (docs): Point to Evmos mempool docs for tx prioritization (#1536)

* Adjust priority tip docs to point to Evmos mempool docs

* remove some typos and out of place commas in feemarket concepts

* add missing "in"

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Skip undeterministic integration test (#1531)

* skip undeterministic integration test

* fix flake

* update gomod2nix

* Rename getEIP712Hash to Bytes to clarity method intent (#1539)

* Rename getEIP712Hash to Bytes to clarity method intent

* Update comments and revert unrelated code

* Fix variable naming in tests

* Fix to use raw data rather than hash from Go-Ethereum interface

* Update eip712_test to detect EIP-712 hash vs bytes

* Update TypedData conversion error message

Co-authored-by: Freddy Caceres <facs95@gmail.com>

* build(deps): bump certifi in /tests/integration_tests (#1545)

Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.9.24 to 2022.12.7.
- [Release notes](https://github.com/certifi/python-certifi/releases)
- [Commits](https://github.com/certifi/python-certifi/compare/2022.09.24...2022.12.07)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: improve error handling for EIP-712 encoding config init (#1543)

* Improve error handling for EIP-712 encoding config init

* changelog

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Adi Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Ramiro Carlucho <ramirocarlucho@gmail.com>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Devon Bear <itsdevbear@berachain.com>
Co-authored-by: v-homsi <110708931+v-homsi@users.noreply.github.com>
Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>

* Release `v0.20-rc5` (#1569)

* build(deps): bump github.com/cosmos/cosmos-sdk from 0.46.6 to 0.46.7 (#1551)

Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.46.6 to 0.46.7.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/v0.46.6...v0.46.7)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/cosmos/ibc-go/v5 from 5.1.0 to 5.2.0 (#1564)

Bumps [github.com/cosmos/ibc-go/v5](https://github.com/cosmos/ibc-go) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/cosmos/ibc-go/releases)
- [Changelog](https://github.com/cosmos/ibc-go/blob/v5.2.0/CHANGELOG.md)
- [Commits](https://github.com/cosmos/ibc-go/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: github.com/cosmos/ibc-go/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* make missing key error message during SendTransaction more verbose (#1563)

Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>

* debug(app): add flag to disable optimized build for remote debugging (#1549)

Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* Problem: personal_newAccount don't work (#1561)

fix the internal parameter.

* fix(ante): fix reCheckTx gas wanted (#1566)

* fix(abci): fix reCheckTx gas wanted'

* fix(ante): add changelog entry

* fix(cli): fix Ledger signature algorithm verification (#1550)

* fix: update Ledger default algorithm to `EthSecp256k1`

* fix ledger signing algo validation

* changelog

Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>

* update changelog

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: Freddy Caceres <facs95@gmail.com>

* test(ante): add test case for `gasWanted` on ReCheckTx mode (#1570) (#1571)

* fix(abci): fix reCheckTx gas wanted'

* fix(ante): add changelog entry

* fix(ante): add test case

(cherry picked from commit d3a60a02eacabb1e099fdcd406f89add3b588deb)

Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>

* update changelog (#1578)

* fix upgrade

* remove TxFeeChecker

* fix lint errors

* remove super linter

* nix open issue remove integration test

* semgrep fix

* ignore semgrep

* remove semgrep ignore

* run godmod2nix locally and ignore lint check

* fix lint error

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Loredana Cirstea <loredana.cirstea@gmail.com>
Co-authored-by: Thomas Nguy <81727899+thomas-nguy@users.noreply.github.com>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Nick DeLuca <nickdeluca08@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Co-authored-by: crypto-facs <84574577+crypto-facs@users.noreply.github.com>
Co-authored-by: Snyk bot <snyk-bot@snyk.io>
Co-authored-by: Adu <foriteration@gmail.com>
Co-authored-by: Freddy Caceres <freddy.caceres@crypto.com>
Co-authored-by: Federico Kunze Küllmer <federico.kunze94@gmail.com>
Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Aditya Saravanan <59209660+adisaran64@users.noreply.github.com>
Co-authored-by: adu-crypto <94821467+adu-crypto@users.noreply.github.com>
Co-authored-by: Victor Pham <me@victortrusty.dev>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: ramacarlucho <ramirocarlucho@gmail.com>
Co-authored-by: Jacob Gadikian <jacobgadikian@gmail.com>
Co-authored-by: Austin Chandra <austinchandra@berkeley.edu>
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Tuan Pham Anh <baabeetaa@gmail.com>
Co-authored-by: adisaran64 <adisaran64@berkeley.edu>
Co-authored-by: v-homsi <110708931+v-homsi@users.noreply.github.com>
Co-authored-by: Devon Bear <itsdevbear@berachain.com>
Co-authored-by: JayT106 <JayT106@users.noreply.github.com>
Co-authored-by: Tomas Guerra <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: 4rgon4ut <59182467+4rgon4ut@users.noreply.github.com>
Co-authored-by: Vladislav Varadinov <vlad@evmos.org>
Co-authored-by: MalteHerrmann <malteherrmann.mail@web.de>
2023-01-10 10:20:57 +05:30

21360 lines
735 KiB
YAML
Vendored

swagger: '2.0'
info:
title: Ethermint Chain - Legacy REST and gRPC Gateway docs
description: A REST interface for state queries, legacy transactions
version: 1.0.0
paths:
/ethermint/evm/v1/account/{address}:
get:
summary: Account queries an Ethereum account.
operationId: Account
responses:
'200':
description: A successful response.
schema:
type: object
properties:
balance:
type: string
description: balance is the balance of the EVM denomination.
code_hash:
type: string
description: code hash is the hex-formatted code bytes from the EOA.
nonce:
type: string
format: uint64
description: nonce is the account's sequence number.
description: >-
QueryAccountResponse is the response type for the Query/Account
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: address is the ethereum hex address to query the account for.
in: path
required: true
type: string
tags:
- Query
/ethermint/evm/v1/balances/{address}:
get:
summary: |-
Balance queries the balance of a the EVM denomination for a single
EthAccount.
operationId: Balance
responses:
'200':
description: A successful response.
schema:
type: object
properties:
balance:
type: string
description: balance is the balance of the EVM denomination.
description: >-
QueryBalanceResponse is the response type for the Query/Balance
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: address is the ethereum hex address to query the balance for.
in: path
required: true
type: string
tags:
- Query
/ethermint/evm/v1/base_fee:
get:
summary: >-
BaseFee queries the base fee of the parent block of the current block,
it's similar to feemarket module's method, but also checks london
hardfork status.
operationId: BaseFee
responses:
'200':
description: A successful response.
schema:
type: object
properties:
base_fee:
type: string
description: BaseFeeResponse returns the EIP1559 base fee.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
<<<<<<< HEAD
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
=======
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
>>>>>>> v0.20.0
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
tags:
- Query
/ethermint/evm/v1/codes/{address}:
get:
summary: Code queries the balance of all coins for a single account.
operationId: Code
responses:
'200':
description: A successful response.
schema:
type: object
properties:
code:
type: string
format: byte
description: code represents the code bytes from an ethereum address.
description: |-
QueryCodeResponse is the response type for the Query/Code RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: address is the ethereum hex address to query the code for.
in: path
required: true
type: string
tags:
- Query
/ethermint/evm/v1/cosmos_account/{address}:
get:
summary: CosmosAccount queries an Ethereum account's Cosmos Address.
operationId: CosmosAccount
responses:
'200':
description: A successful response.
schema:
type: object
properties:
cosmos_address:
type: string
description: cosmos_address is the cosmos address of the account.
sequence:
type: string
format: uint64
description: sequence is the account's sequence number.
account_number:
type: string
format: uint64
title: account_number is the account numbert
description: >-
QueryCosmosAccountResponse is the response type for the
Query/CosmosAccount
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: address is the ethereum hex address to query the account for.
in: path
required: true
type: string
tags:
- Query
/ethermint/evm/v1/estimate_gas:
get:
summary: EstimateGas implements the `eth_estimateGas` rpc api
operationId: EstimateGas
responses:
'200':
description: A successful response.
schema:
type: object
properties:
gas:
type: string
format: uint64
title: the estimated gas
title: EstimateGasResponse defines EstimateGas response
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: args
description: same json format as the json rpc api.
in: query
required: false
type: string
format: byte
- name: gas_cap
description: the default gas cap to be used.
in: query
required: false
type: string
format: uint64
- name: proposer_address
description: the proposer of the requested block.
in: query
required: false
type: string
format: byte
- name: chain_id
description: the eip155 chain id parsed from the requested block header.
in: query
required: false
type: string
format: int64
tags:
- Query
/ethermint/evm/v1/eth_call:
get:
summary: EthCall implements the `eth_call` rpc api
operationId: EthCall
responses:
'200':
description: A successful response.
schema:
type: object
properties:
hash:
type: string
title: >-
ethereum transaction hash in hex format. This hash differs
from the
Tendermint sha256 hash of the transaction bytes. See
https://github.com/tendermint/tendermint/issues/6539 for
reference
logs:
type: array
items:
type: object
properties:
address:
type: string
title: address of the contract that generated the event
topics:
type: array
items:
type: string
description: list of topics provided by the contract.
data:
type: string
format: byte
title: supplied by the contract, usually ABI-encoded
block_number:
type: string
format: uint64
title: block in which the transaction was included
tx_hash:
type: string
title: hash of the transaction
tx_index:
type: string
format: uint64
title: index of the transaction in the block
block_hash:
type: string
title: hash of the block in which the transaction was included
index:
type: string
format: uint64
title: index of the log in the block
removed:
type: boolean
description: >-
The Removed field is true if this log was reverted due
to a chain
reorganisation. You must pay attention to this field if
you receive logs
through a filter query.
description: >-
Log represents an protobuf compatible Ethereum Log that
defines a contract
log event. These events are generated by the LOG opcode and
stored/indexed by
the node.
description: >-
logs contains the transaction hash and the proto-compatible
ethereum
logs.
ret:
type: string
format: byte
title: >-
returned data from evm function (result or data supplied with
revert
opcode)
vm_error:
type: string
title: vm error is the error returned by vm execution
gas_used:
type: string
format: uint64
title: gas consumed by the transaction
description: MsgEthereumTxResponse defines the Msg/EthereumTx response type.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: args
description: same json format as the json rpc api.
in: query
required: false
type: string
format: byte
- name: gas_cap
description: the default gas cap to be used.
in: query
required: false
type: string
format: uint64
- name: proposer_address
description: the proposer of the requested block.
in: query
required: false
type: string
format: byte
- name: chain_id
description: the eip155 chain id parsed from the requested block header.
in: query
required: false
type: string
format: int64
tags:
- Query
/ethermint/evm/v1/params:
get:
summary: Params queries the parameters of x/evm module.
operationId: EvmParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
description: params define the evm module parameters.
type: object
properties:
evm_denom:
type: string
description: >-
evm denom represents the token denomination used to run
the EVM state
transitions.
enable_create:
type: boolean
title: >-
enable create toggles state transitions that use the
vm.Create function
enable_call:
type: boolean
title: >-
enable call toggles state transitions that use the vm.Call
function
extra_eips:
type: array
items:
type: string
format: int64
title: extra eips defines the additional EIPs for the vm.Config
chain_config:
title: >-
chain config defines the EVM chain configuration
parameters
type: object
properties:
homestead_block:
type: string
title: >-
Homestead switch block (nil no fork, 0 = already
homestead)
dao_fork_block:
type: string
title: TheDAO hard-fork switch block (nil no fork)
dao_fork_support:
type: boolean
title: >-
Whether the nodes supports or opposes the DAO
hard-fork
eip150_block:
type: string
title: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150
HF block (nil no fork)
eip150_hash:
type: string
title: >-
EIP150 HF hash (needed for header only clients as only
gas pricing changed)
eip155_block:
type: string
title: EIP155Block HF block
eip158_block:
type: string
title: EIP158 HF block
byzantium_block:
type: string
title: >-
Byzantium switch block (nil no fork, 0 = already on
byzantium)
constantinople_block:
type: string
title: >-
Constantinople switch block (nil no fork, 0 = already
activated)
petersburg_block:
type: string
title: Petersburg switch block (nil same as Constantinople)
istanbul_block:
type: string
title: >-
Istanbul switch block (nil no fork, 0 = already on
istanbul)
muir_glacier_block:
type: string
title: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 =
already activated)
berlin_block:
type: string
title: >-
Berlin switch block (nil = no fork, 0 = already on
berlin)
london_block:
type: string
title: >-
London switch block (nil = no fork, 0 = already on
london)
arrow_glacier_block:
type: string
title: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 =
already activated)
<<<<<<< HEAD
merge_fork_block:
type: string
title: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 =
already in merge proceedings)
=======
gray_glacier_block:
type: string
title: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 =
already activated)
merge_netsplit_block:
type: string
title: >-
Virtual fork after The Merge to use as a network
splitter
>>>>>>> v0.20.0
description: >-
ChainConfig defines the Ethereum ChainConfig parameters
using *sdk.Int values
instead of *big.Int.
allow_unprotected_txs:
type: boolean
description: >-
Allow unprotected transactions defines if replay-protected
<<<<<<< HEAD
(i.e non EIP155
=======
(i.e non EIP155
>>>>>>> v0.20.0
signed) transactions can be executed on the state machine.
title: Params defines the EVM module parameters
description: >-
QueryParamsResponse defines the response type for querying x/evm
parameters.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
tags:
- Query
/ethermint/evm/v1/storage/{address}/{key}:
get:
summary: Storage queries the balance of all coins for a single account.
operationId: Storage
responses:
'200':
description: A successful response.
schema:
type: object
properties:
value:
type: string
description: >-
key defines the storage state value hash associated with the
given key.
description: >-
QueryStorageResponse is the response type for the Query/Storage
RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: >-
/ address is the ethereum hex address to query the storage state
for.
in: path
required: true
type: string
- name: key
description: key defines the key of the storage state
in: path
required: true
type: string
tags:
- Query
/ethermint/evm/v1/trace_block:
get:
summary: >-
TraceBlock implements the `debug_traceBlockByNumber` and
`debug_traceBlockByHash` rpc api
operationId: TraceBlock
responses:
'200':
description: A successful response.
schema:
type: object
properties:
data:
type: string
format: byte
title: QueryTraceBlockResponse defines TraceBlock response
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: trace_config.tracer
description: custom javascript tracer.
in: query
required: false
type: string
- name: trace_config.timeout
description: >-
overrides the default timeout of 5 seconds for JavaScript-based
tracing
calls.
in: query
required: false
type: string
- name: trace_config.reexec
description: number of blocks the tracer is willing to go back.
in: query
required: false
type: string
format: uint64
- name: trace_config.disable_stack
description: disable stack capture.
in: query
required: false
type: boolean
- name: trace_config.disable_storage
description: disable storage capture.
in: query
required: false
type: boolean
- name: trace_config.debug
description: print output during capture end.
in: query
required: false
type: boolean
- name: trace_config.limit
description: maximum length of output, but zero means unlimited.
in: query
required: false
type: integer
format: int32
- name: trace_config.overrides.homestead_block
description: Homestead switch block (nil no fork, 0 = already homestead).
in: query
required: false
type: string
- name: trace_config.overrides.dao_fork_block
description: TheDAO hard-fork switch block (nil no fork).
in: query
required: false
type: string
- name: trace_config.overrides.dao_fork_support
description: Whether the nodes supports or opposes the DAO hard-fork.
in: query
required: false
type: boolean
- name: trace_config.overrides.eip150_block
description: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil
no fork).
in: query
required: false
type: string
- name: trace_config.overrides.eip150_hash
description: >-
EIP150 HF hash (needed for header only clients as only gas pricing
changed).
in: query
required: false
type: string
- name: trace_config.overrides.eip155_block
description: EIP155Block HF block.
in: query
required: false
type: string
- name: trace_config.overrides.eip158_block
description: EIP158 HF block.
in: query
required: false
type: string
- name: trace_config.overrides.byzantium_block
description: Byzantium switch block (nil no fork, 0 = already on byzantium).
in: query
required: false
type: string
- name: trace_config.overrides.constantinople_block
description: Constantinople switch block (nil no fork, 0 = already activated).
in: query
required: false
type: string
- name: trace_config.overrides.petersburg_block
description: Petersburg switch block (nil same as Constantinople).
in: query
required: false
type: string
- name: trace_config.overrides.istanbul_block
description: Istanbul switch block (nil no fork, 0 = already on istanbul).
in: query
required: false
type: string
- name: trace_config.overrides.muir_glacier_block
description: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated).
in: query
required: false
type: string
- name: trace_config.overrides.berlin_block
description: Berlin switch block (nil = no fork, 0 = already on berlin).
in: query
required: false
type: string
- name: trace_config.overrides.london_block
description: London switch block (nil = no fork, 0 = already on london).
in: query
required: false
type: string
- name: trace_config.overrides.arrow_glacier_block
description: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated).
in: query
required: false
type: string
<<<<<<< HEAD
- name: trace_config.overrides.merge_fork_block
description: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already in
merge proceedings).
=======
- name: trace_config.overrides.gray_glacier_block
description: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated).
in: query
required: false
type: string
- name: trace_config.overrides.merge_netsplit_block
description: Virtual fork after The Merge to use as a network splitter.
>>>>>>> v0.20.0
in: query
required: false
type: string
- name: trace_config.enable_memory
description: enable memory capture.
in: query
required: false
type: boolean
- name: trace_config.enable_return_data
description: enable return data capture.
in: query
required: false
type: boolean
- name: trace_config.tracer_json_config
description: tracer config.
in: query
required: false
type: string
- name: block_number
description: block number.
in: query
required: false
type: string
format: int64
- name: block_hash
description: block hex hash.
in: query
required: false
type: string
- name: block_time
description: block time.
in: query
required: false
type: string
format: date-time
- name: proposer_address
description: the proposer of the requested block.
in: query
required: false
type: string
format: byte
- name: chain_id
description: the eip155 chain id parsed from the requested block header.
in: query
required: false
type: string
format: int64
tags:
- Query
/ethermint/evm/v1/trace_tx:
get:
summary: TraceTx implements the `debug_traceTransaction` rpc api
operationId: TraceTx
responses:
'200':
description: A successful response.
schema:
type: object
properties:
data:
type: string
format: byte
title: response serialized in bytes
title: QueryTraceTxResponse defines TraceTx response
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: msg.data.type_url
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a canonical
form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types that
they
expect it to use in the context of Any. However, for URLs which use
the
scheme `http`, `https`, or no scheme, one can optionally set up a
type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
in: query
required: false
type: string
- name: msg.data.value
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
in: query
required: false
type: string
format: byte
- name: msg.size
description: 'DEPRECATED: encoded storage size of the transaction.'
in: query
required: false
type: number
format: double
- name: msg.hash
description: transaction hash in hex format.
in: query
required: false
type: string
- name: msg.from
description: |-
ethereum signer address in hex format. This address value is checked
against the address derived from the signature (V, R, S) using the
secp256k1 elliptic curve.
in: query
required: false
type: string
- name: trace_config.tracer
description: custom javascript tracer.
in: query
required: false
type: string
- name: trace_config.timeout
description: >-
overrides the default timeout of 5 seconds for JavaScript-based
tracing
calls.
in: query
required: false
type: string
- name: trace_config.reexec
description: number of blocks the tracer is willing to go back.
in: query
required: false
type: string
format: uint64
- name: trace_config.disable_stack
description: disable stack capture.
in: query
required: false
type: boolean
- name: trace_config.disable_storage
description: disable storage capture.
in: query
required: false
type: boolean
- name: trace_config.debug
description: print output during capture end.
in: query
required: false
type: boolean
- name: trace_config.limit
description: maximum length of output, but zero means unlimited.
in: query
required: false
type: integer
format: int32
- name: trace_config.overrides.homestead_block
description: Homestead switch block (nil no fork, 0 = already homestead).
in: query
required: false
type: string
- name: trace_config.overrides.dao_fork_block
description: TheDAO hard-fork switch block (nil no fork).
in: query
required: false
type: string
- name: trace_config.overrides.dao_fork_support
description: Whether the nodes supports or opposes the DAO hard-fork.
in: query
required: false
type: boolean
- name: trace_config.overrides.eip150_block
description: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil
no fork).
in: query
required: false
type: string
- name: trace_config.overrides.eip150_hash
description: >-
EIP150 HF hash (needed for header only clients as only gas pricing
changed).
in: query
required: false
type: string
- name: trace_config.overrides.eip155_block
description: EIP155Block HF block.
in: query
required: false
type: string
- name: trace_config.overrides.eip158_block
description: EIP158 HF block.
in: query
required: false
type: string
- name: trace_config.overrides.byzantium_block
description: Byzantium switch block (nil no fork, 0 = already on byzantium).
in: query
required: false
type: string
- name: trace_config.overrides.constantinople_block
description: Constantinople switch block (nil no fork, 0 = already activated).
in: query
required: false
type: string
- name: trace_config.overrides.petersburg_block
description: Petersburg switch block (nil same as Constantinople).
in: query
required: false
type: string
- name: trace_config.overrides.istanbul_block
description: Istanbul switch block (nil no fork, 0 = already on istanbul).
in: query
required: false
type: string
- name: trace_config.overrides.muir_glacier_block
description: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated).
in: query
required: false
type: string
- name: trace_config.overrides.berlin_block
description: Berlin switch block (nil = no fork, 0 = already on berlin).
in: query
required: false
type: string
- name: trace_config.overrides.london_block
description: London switch block (nil = no fork, 0 = already on london).
in: query
required: false
type: string
- name: trace_config.overrides.arrow_glacier_block
description: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated).
in: query
required: false
type: string
<<<<<<< HEAD
- name: trace_config.overrides.merge_fork_block
description: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already in
merge proceedings).
=======
- name: trace_config.overrides.gray_glacier_block
description: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated).
in: query
required: false
type: string
- name: trace_config.overrides.merge_netsplit_block
description: Virtual fork after The Merge to use as a network splitter.
>>>>>>> v0.20.0
in: query
required: false
type: string
- name: trace_config.enable_memory
description: enable memory capture.
in: query
required: false
type: boolean
- name: trace_config.enable_return_data
description: enable return data capture.
in: query
required: false
type: boolean
- name: trace_config.tracer_json_config
description: tracer config.
in: query
required: false
type: string
- name: block_number
description: block number of requested transaction.
in: query
required: false
type: string
format: int64
- name: block_hash
description: block hex hash of requested transaction.
in: query
required: false
type: string
- name: block_time
description: block time of requested transaction.
in: query
required: false
type: string
format: date-time
- name: proposer_address
description: the proposer of the requested block.
in: query
required: false
type: string
format: byte
- name: chain_id
description: the eip155 chain id parsed from the requested block header.
in: query
required: false
type: string
format: int64
tags:
- Query
/ethermint/evm/v1/validator_account/{cons_address}:
get:
summary: >-
ValidatorAccount queries an Ethereum account's from a validator
consensus
Address.
operationId: ValidatorAccount
responses:
'200':
description: A successful response.
schema:
type: object
properties:
account_address:
type: string
description: >-
account_address is the cosmos address of the account in bech32
format.
sequence:
type: string
format: uint64
description: sequence is the account's sequence number.
account_number:
type: string
format: uint64
title: account_number is the account number
description: |-
QueryValidatorAccountResponse is the response type for the
Query/ValidatorAccount RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: cons_address
description: cons_address is the validator cons address to query the account for.
in: path
required: true
type: string
tags:
- Query
<<<<<<< HEAD
/cosmos/auth/v1beta1/accounts:
get:
summary: Accounts returns all the existing accounts
operationId: Accounts
responses:
'200':
description: A successful response.
schema:
type: object
properties:
accounts:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
title: accounts are the existing accounts
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryAccountsResponse is the response type for the Query/Accounts
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/auth/v1beta1/accounts/{address}:
get:
summary: Account returns account details based on address.
operationId: AuthAccount
responses:
'200':
description: A successful response.
schema:
type: object
properties:
account:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in
the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default
use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last
'/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
description: >-
QueryAccountResponse is the response type for the Query/Account
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: address
description: address defines the address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/auth/v1beta1/params:
get:
summary: Params queries all parameters.
operationId: AuthParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
max_memo_characters:
type: string
format: uint64
tx_sig_limit:
type: string
format: uint64
tx_size_cost_per_byte:
type: string
format: uint64
sig_verify_cost_ed25519:
type: string
format: uint64
sig_verify_cost_secp256k1:
type: string
format: uint64
description: >-
QueryParamsResponse is the response type for the Query/Params RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
tags:
- Query
/cosmos/bank/v1beta1/balances/{address}:
get:
summary: AllBalances queries the balance of all coins for a single account.
operationId: AllBalances
responses:
'200':
description: A successful response.
schema:
type: object
properties:
balances:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: balances is the balances of all the coins.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryAllBalancesResponse is the response type for the
Query/AllBalances RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: address
description: address is the address to query balances for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/bank/v1beta1/balances/{address}/{denom}:
get:
summary: Balance queries the balance of a single coin for a single account.
operationId: BankBalance
responses:
'200':
description: A successful response.
schema:
type: object
properties:
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
QueryBalanceResponse is the response type for the Query/Balance
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: address
description: address is the address to query balances for.
in: path
required: true
type: string
- name: denom
description: denom is the coin denom to query balances for.
in: path
required: true
type: string
tags:
- Query
/cosmos/bank/v1beta1/denoms_metadata:
get:
summary: >-
DenomsMetadata queries the client metadata for all registered coin
denominations.
operationId: DenomsMetadata
responses:
'200':
description: A successful response.
schema:
type: object
properties:
metadatas:
type: array
items:
type: object
properties:
description:
type: string
denom_units:
type: array
items:
type: object
properties:
denom:
type: string
description: >-
denom represents the string name of the given
denom unit (e.g uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: >-
aliases is a list of string aliases for the given
denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
title: >-
denom_units represents the list of DenomUnit's for a
given coin
base:
type: string
description: >-
base represents the base denom (should be the DenomUnit
with exponent = 0).
display:
type: string
description: |-
display indicates the suggested denom that should be
displayed in clients.
name:
type: string
title: 'name defines the name of the token (eg: Cosmos Atom)'
symbol:
type: string
description: >-
symbol is the token symbol usually shown on exchanges
(eg: ATOM). This can
be the same as the display.
description: |-
Metadata represents a struct that describes
a basic token.
description: >-
metadata provides the client information for all the
registered tokens.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryDenomsMetadataResponse is the response type for the
Query/DenomsMetadata RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/bank/v1beta1/denoms_metadata/{denom}:
get:
summary: DenomsMetadata queries the client metadata of a given coin denomination.
operationId: DenomMetadata
responses:
'200':
description: A successful response.
schema:
type: object
properties:
metadata:
type: object
properties:
description:
type: string
denom_units:
type: array
items:
type: object
properties:
denom:
type: string
description: >-
denom represents the string name of the given denom
unit (e.g uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: >-
aliases is a list of string aliases for the given
denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
title: >-
denom_units represents the list of DenomUnit's for a given
coin
base:
type: string
description: >-
base represents the base denom (should be the DenomUnit
with exponent = 0).
display:
type: string
description: |-
display indicates the suggested denom that should be
displayed in clients.
name:
type: string
title: 'name defines the name of the token (eg: Cosmos Atom)'
symbol:
type: string
description: >-
symbol is the token symbol usually shown on exchanges (eg:
ATOM). This can
be the same as the display.
description: |-
Metadata represents a struct that describes
a basic token.
description: >-
QueryDenomMetadataResponse is the response type for the
Query/DenomMetadata RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: denom
description: denom is the coin denom to query the metadata for.
in: path
required: true
type: string
tags:
- Query
/cosmos/bank/v1beta1/params:
get:
summary: Params queries the parameters of x/bank module.
operationId: BankParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
type: object
properties:
send_enabled:
type: array
items:
type: object
properties:
denom:
type: string
enabled:
type: boolean
description: >-
SendEnabled maps coin denom to a send_enabled status
(whether a denom is
sendable).
default_send_enabled:
type: boolean
description: Params defines the parameters for the bank module.
description: >-
QueryParamsResponse defines the response type for querying x/bank
parameters.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/bank/v1beta1/supply:
get:
summary: TotalSupply queries the total supply of all coins.
operationId: TotalSupply
responses:
'200':
description: A successful response.
schema:
type: object
properties:
supply:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
title: supply is the supply of the coins
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryTotalSupplyResponse is the response type for the
Query/TotalSupply RPC
method
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/bank/v1beta1/supply/{denom}:
get:
summary: SupplyOf queries the supply of a single coin.
operationId: SupplyOf
responses:
'200':
description: A successful response.
schema:
type: object
properties:
amount:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
QuerySupplyOfResponse is the response type for the Query/SupplyOf
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: denom
description: denom is the coin denom to query balances for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/community_pool:
get:
summary: CommunityPool queries the community pool coins.
operationId: CommunityPool
responses:
'200':
description: A successful response.
schema:
type: object
properties:
pool:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
description: pool defines community pool's coins.
description: >-
QueryCommunityPoolResponse is the response type for the
Query/CommunityPool
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards:
get:
summary: |-
DelegationTotalRewards queries the total rewards accrued by a each
validator.
operationId: DelegationTotalRewards
responses:
'200':
description: A successful response.
schema:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
validator_address:
type: string
reward:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a
decimal amount.
NOTE: The amount field is an Dec which implements the
custom method
signatures required by gogoproto.
description: |-
DelegationDelegatorReward represents the properties
of a delegator's delegation reward.
description: rewards defines all the rewards accrued by a delegator.
total:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
description: total defines the sum of all the rewards.
description: |-
QueryDelegationTotalRewardsResponse is the response type for the
Query/DelegationTotalRewards RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: delegator_address
description: delegator_address defines the delegator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}:
get:
summary: DelegationRewards queries the total rewards accrued by a delegation.
operationId: DelegationRewards
responses:
'200':
description: A successful response.
schema:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
description: rewards defines the rewards accrued by a delegation.
description: |-
QueryDelegationRewardsResponse is the response type for the
Query/DelegationRewards RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: delegator_address
description: delegator_address defines the delegator address to query for.
in: path
required: true
type: string
- name: validator_address
description: validator_address defines the validator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/delegators/{delegator_address}/validators:
get:
summary: DelegatorValidators queries the validators of a delegator.
operationId: DistDelegatorValidators
responses:
'200':
description: A successful response.
schema:
type: object
properties:
validators:
type: array
items:
type: string
description: >-
validators defines the validators a delegator is delegating
for.
description: |-
QueryDelegatorValidatorsResponse is the response type for the
Query/DelegatorValidators RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: delegator_address
description: delegator_address defines the delegator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address:
get:
summary: DelegatorWithdrawAddress queries withdraw address of a delegator.
operationId: DelegatorWithdrawAddress
responses:
'200':
description: A successful response.
schema:
type: object
properties:
withdraw_address:
type: string
description: withdraw_address defines the delegator address to query for.
description: |-
QueryDelegatorWithdrawAddressResponse is the response type for the
Query/DelegatorWithdrawAddress RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: delegator_address
description: delegator_address defines the delegator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/params:
get:
summary: Params queries params of the distribution module.
operationId: DistributionParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
community_tax:
type: string
base_proposer_reward:
type: string
bonus_proposer_reward:
type: string
withdraw_addr_enabled:
type: boolean
description: >-
QueryParamsResponse is the response type for the Query/Params RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/distribution/v1beta1/validators/{validator_address}/commission:
get:
summary: ValidatorCommission queries accumulated commission for a validator.
operationId: ValidatorCommission
responses:
'200':
description: A successful response.
schema:
type: object
properties:
commission:
description: commission defines the commision the validator received.
type: object
properties:
commission:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a
decimal amount.
NOTE: The amount field is an Dec which implements the
custom method
signatures required by gogoproto.
title: |-
QueryValidatorCommissionResponse is the response type for the
Query/ValidatorCommission RPC method
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: validator_address
description: validator_address defines the validator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards:
get:
summary: ValidatorOutstandingRewards queries rewards of a validator address.
operationId: ValidatorOutstandingRewards
responses:
'200':
description: A successful response.
schema:
type: object
properties:
rewards:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a
decimal amount.
NOTE: The amount field is an Dec which implements the
custom method
signatures required by gogoproto.
description: >-
ValidatorOutstandingRewards represents outstanding
(un-withdrawn) rewards
for a validator inexpensive to track, allows simple sanity
checks.
description: >-
QueryValidatorOutstandingRewardsResponse is the response type for
the
Query/ValidatorOutstandingRewards RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: validator_address
description: validator_address defines the validator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/distribution/v1beta1/validators/{validator_address}/slashes:
get:
summary: ValidatorSlashes queries slash events of a validator.
operationId: ValidatorSlashes
responses:
'200':
description: A successful response.
schema:
type: object
properties:
slashes:
type: array
items:
type: object
properties:
validator_period:
type: string
format: uint64
fraction:
type: string
description: >-
ValidatorSlashEvent represents a validator slash event.
Height is implicit within the store key.
This is needed to calculate appropriate amount of staking
tokens
for delegations which are withdrawn after a slash has
occurred.
description: slashes defines the slashes the validator received.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryValidatorSlashesResponse is the response type for the
Query/ValidatorSlashes RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
parameters:
- name: validator_address
description: validator_address defines the validator address to query for.
in: path
required: true
type: string
- name: starting_height
description: >-
starting_height defines the optional starting height to query the
slashes.
in: query
required: false
type: string
format: uint64
- name: ending_height
description: >-
starting_height defines the optional ending height to query the
slashes.
in: query
required: false
type: string
format: uint64
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/mint/v1beta1/annual_provisions:
get:
summary: AnnualProvisions current minting annual provisions value.
operationId: AnnualProvisions
responses:
'200':
description: A successful response.
schema:
type: object
properties:
annual_provisions:
type: string
format: byte
description: >-
annual_provisions is the current minting annual provisions
value.
description: |-
QueryAnnualProvisionsResponse is the response type for the
Query/AnnualProvisions RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/mint/v1beta1/inflation:
get:
summary: Inflation returns the current minting inflation value.
operationId: Inflation
responses:
'200':
description: A successful response.
schema:
type: object
properties:
inflation:
type: string
format: byte
description: inflation is the current minting inflation value.
description: >-
QueryInflationResponse is the response type for the
Query/Inflation RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/mint/v1beta1/params:
get:
summary: Params returns the total set of minting parameters.
operationId: MintParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
mint_denom:
type: string
title: type of coin to mint
inflation_rate_change:
type: string
title: maximum annual change in inflation rate
inflation_max:
type: string
title: maximum inflation rate
inflation_min:
type: string
title: minimum inflation rate
goal_bonded:
type: string
title: goal of percent bonded atoms
blocks_per_year:
type: string
format: uint64
title: expected blocks per year
description: >-
QueryParamsResponse is the response type for the Query/Params RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
value:
type: string
format: byte
tags:
- Query
/cosmos/gov/v1beta1/params/{params_type}:
get:
summary: Params queries all parameters of the gov module.
operationId: GovParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
voting_params:
description: voting_params defines the parameters related to voting.
type: object
properties:
voting_period:
type: string
description: Length of the voting period.
deposit_params:
description: deposit_params defines the parameters related to deposit.
type: object
properties:
min_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: Minimum deposit for a proposal to enter voting period.
max_deposit_period:
type: string
description: >-
Maximum period for Atom holders to deposit on a proposal.
Initial value: 2
months.
tally_params:
description: tally_params defines the parameters related to tally.
type: object
properties:
quorum:
type: string
format: byte
description: >-
Minimum percentage of total stake needed to vote for a
result to be
considered valid.
threshold:
type: string
format: byte
description: >-
Minimum proportion of Yes votes for proposal to pass.
Default value: 0.5.
veto_threshold:
type: string
format: byte
description: >-
Minimum value of Veto votes to Total votes ratio for
proposal to be
vetoed. Default value: 1/3.
description: >-
QueryParamsResponse is the response type for the Query/Params RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: params_type
description: >-
params_type defines which parameters to query for, can be one of
"voting",
"tallying" or "deposit".
in: path
required: true
type: string
tags:
- Query
/cosmos/gov/v1beta1/proposals:
get:
summary: Proposals queries all proposals based on given status.
operationId: Proposals
responses:
'200':
description: A successful response.
schema:
type: object
properties:
proposals:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
content:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the
type of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's
path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the
binary all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available
in the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the
regular
representation of the deserialized, embedded message,
with an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message
[google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
status:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: >-
ProposalStatus enumerates the valid statuses of a
proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
final_tally_result:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: >-
TallyResult defines a standard tally for a governance
proposal.
submit_time:
type: string
format: date-time
deposit_end_time:
type: string
format: date-time
total_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an
amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
voting_start_time:
type: string
format: date-time
voting_end_time:
type: string
format: date-time
description: >-
Proposal defines the core field members of a governance
proposal.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryProposalsResponse is the response type for the
Query/Proposals RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_status
description: |-
proposal_status defines the status of the proposals.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
in: query
required: false
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
- name: voter
description: voter defines the voter address for the proposals.
in: query
required: false
type: string
- name: depositor
description: depositor defines the deposit addresses from the proposals.
in: query
required: false
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}:
get:
summary: Proposal queries proposal details based on ProposalID.
operationId: Proposal
responses:
'200':
description: A successful response.
schema:
type: object
properties:
proposal:
type: object
properties:
proposal_id:
type: string
format: uint64
content:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type
of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
status:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: >-
ProposalStatus enumerates the valid statuses of a
proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
final_tally_result:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: >-
TallyResult defines a standard tally for a governance
proposal.
submit_time:
type: string
format: date-time
deposit_end_time:
type: string
format: date-time
total_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
voting_start_time:
type: string
format: date-time
voting_end_time:
type: string
format: date-time
description: >-
Proposal defines the core field members of a governance
proposal.
description: >-
QueryProposalResponse is the response type for the Query/Proposal
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits:
get:
summary: Deposits queries all deposits of a single proposal.
operationId: Deposits
responses:
'200':
description: A successful response.
schema:
type: object
properties:
deposits:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
depositor:
type: string
amount:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an
amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: >-
Deposit defines an amount deposited by an account address to
an active
proposal.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryDepositsResponse is the response type for the Query/Deposits
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}:
get:
summary: >-
Deposit queries single deposit information based proposalID,
depositAddr.
operationId: Deposit
responses:
'200':
description: A successful response.
schema:
type: object
properties:
deposit:
type: object
properties:
proposal_id:
type: string
format: uint64
depositor:
type: string
amount:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: >-
Deposit defines an amount deposited by an account address to
an active
proposal.
description: >-
QueryDepositResponse is the response type for the Query/Deposit
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
- name: depositor
description: depositor defines the deposit addresses from the proposals.
in: path
required: true
type: string
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}/tally:
get:
summary: TallyResult queries the tally of a proposal vote.
operationId: TallyResult
responses:
'200':
description: A successful response.
schema:
type: object
properties:
tally:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: >-
TallyResult defines a standard tally for a governance
proposal.
description: >-
QueryTallyResultResponse is the response type for the Query/Tally
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}/votes:
get:
summary: Votes queries votes of a given proposal.
operationId: Votes
responses:
'200':
description: A successful response.
schema:
type: object
properties:
votes:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
voter:
type: string
option:
description: >-
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.
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
options:
type: array
items:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a
given governance proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: >-
WeightedVoteOption defines a unit of vote for vote
split.
description: >-
Vote defines a vote on a governance proposal.
A Vote consists of a proposal ID, the voter, and the vote
option.
description: votes defined the queried votes.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryVotesResponse is the response type for the Query/Votes RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}:
get:
summary: Vote queries voted information based on proposalID, voterAddr.
operationId: Vote
responses:
'200':
description: A successful response.
schema:
type: object
properties:
vote:
type: object
properties:
proposal_id:
type: string
format: uint64
voter:
type: string
option:
description: >-
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.
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
options:
type: array
items:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a
given governance proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: >-
WeightedVoteOption defines a unit of vote for vote
split.
description: >-
Vote defines a vote on a governance proposal.
A Vote consists of a proposal ID, the voter, and the vote
option.
description: >-
QueryVoteResponse is the response type for the Query/Vote RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: proposal_id
description: proposal_id defines the unique id of the proposal.
in: path
required: true
type: string
format: uint64
- name: voter
description: voter defines the oter address for the proposals.
in: path
required: true
type: string
tags:
- Query
/cosmos/staking/v1beta1/delegations/{delegator_addr}:
get:
summary: >-
DelegatorDelegations queries all delegations of a given delegator
address.
operationId: DelegatorDelegations
responses:
'200':
description: A successful response.
schema:
type: object
properties:
delegation_responses:
type: array
items:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of
the delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of
the validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that
it contains a
balance in addition to shares which is more suitable for
client responses.
description: >-
delegation_responses defines all the delegations' info of a
delegator.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryDelegatorDelegationsResponse is response type for the
Query/DelegatorDelegations RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations:
get:
summary: Redelegations queries redelegations of given address.
operationId: Redelegations
responses:
'200':
description: A successful response.
schema:
type: object
properties:
redelegation_responses:
type: array
items:
type: object
properties:
redelegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of
the delegator.
validator_src_address:
type: string
description: >-
validator_src_address is the validator redelegation
source operator address.
validator_dst_address:
type: string
description: >-
validator_dst_address is the validator redelegation
destination operator address.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the
redelegation took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for
redelegation completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance
when redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of
destination-validator shares created by
redelegation.
description: >-
RedelegationEntry defines a redelegation object
with relevant metadata.
description: entries are the redelegation entries.
description: >-
Redelegation contains the list of a particular
delegator's redelegating bonds
from a particular source validator to a particular
destination validator.
entries:
type: array
items:
type: object
properties:
redelegation_entry:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the
redelegation took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for
redelegation completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance
when redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of
destination-validator shares created by
redelegation.
description: >-
RedelegationEntry defines a redelegation object
with relevant metadata.
balance:
type: string
description: >-
RedelegationEntryResponse is equivalent to a
RedelegationEntry except that it
contains a balance in addition to shares which is more
suitable for client
responses.
description: >-
RedelegationResponse is equivalent to a Redelegation except
that its entries
contain a balance in addition to shares which is more
suitable for client
responses.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryRedelegationsResponse is response type for the
Query/Redelegations RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
- name: src_validator_addr
description: src_validator_addr defines the validator address to redelegate from.
in: query
required: false
type: string
- name: dst_validator_addr
description: dst_validator_addr defines the validator address to redelegate to.
in: query
required: false
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations:
get:
summary: >-
DelegatorUnbondingDelegations queries all unbonding delegations of a
given
delegator address.
operationId: DelegatorUnbondingDelegations
responses:
'200':
description: A successful response.
schema:
type: object
properties:
unbonding_responses:
type: array
items:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding
took place.
completion_time:
type: string
format: date-time
description: >-
completion_time is the unix time for unbonding
completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially
scheduled to receive at completion.
balance:
type: string
description: >-
balance defines the tokens to receive at
completion.
description: >-
UnbondingDelegationEntry defines an unbonding object
with relevant metadata.
description: entries are the unbonding delegation entries.
description: >-
UnbondingDelegation stores all of a single delegator's
unbonding bonds
for a single validator in an time-ordered list.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryUnbondingDelegatorDelegationsResponse is response type for
the
Query/UnbondingDelegatorDelegations RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators:
get:
summary: |-
DelegatorValidators queries all validators info for given delegator
address.
operationId: DelegatorValidators
responses:
'200':
description: A successful response.
schema:
type: object
properties:
validators:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the
type of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's
path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the
binary all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available
in the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the
regular
representation of the deserialized, embedded message,
with an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message
[google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed
from bonded status or not.
status:
description: >-
status is the validator status
(bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: >-
tokens define the delegated tokens (incl.
self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: >-
description defines the description terms for the
validator.
type: object
properties:
moniker:
type: string
description: >-
moniker defines a human-readable name for the
validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex.
UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for
security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at
which this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for
the validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission
rates to be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to
delegators, as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate
which validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily
increase of the validator commission, as a
fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared
minimum self delegation.
description: >-
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.
description: validators defines the the validators' info of a delegator.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryDelegatorValidatorsResponse is response type for the
Query/DelegatorValidators RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}:
get:
summary: |-
DelegatorValidator queries validator info for given delegator validator
pair.
operationId: DelegatorValidator
responses:
'200':
description: A successful response.
schema:
type: object
properties:
validator:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type
of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from
bonded status or not.
status:
description: >-
status is the validator status
(bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: >-
tokens define the delegated tokens (incl.
self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: >-
description defines the description terms for the
validator.
type: object
properties:
moniker:
type: string
description: >-
moniker defines a human-readable name for the
validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex.
UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for
security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at
which this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates
to be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators,
as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase
of the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared
minimum self delegation.
description: >-
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.
description: |-
QueryDelegatorValidatorResponse response type for the
Query/DelegatorValidator RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/staking/v1beta1/historical_info/{height}:
get:
summary: HistoricalInfo queries the historical info for given height.
operationId: HistoricalInfo
responses:
'200':
description: A successful response.
schema:
type: object
properties:
hist:
description: hist defines the historical info at the given height.
type: object
properties:
header:
type: object
properties:
version:
title: basic block info
type: object
properties:
block:
type: string
format: uint64
app:
type: string
format: uint64
description: >-
Consensus captures the consensus rules for processing
a block in the blockchain,
including all blockchain data structures and the rules
of the application's
state transition machine.
chain_id:
type: string
height:
type: string
format: int64
time:
type: string
format: date-time
last_block_id:
title: prev block info
type: object
properties:
hash:
type: string
format: byte
part_set_header:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
last_commit_hash:
type: string
format: byte
title: hashes of block data
data_hash:
type: string
format: byte
validators_hash:
type: string
format: byte
title: hashes from the app output from the prev block
next_validators_hash:
type: string
format: byte
consensus_hash:
type: string
format: byte
app_hash:
type: string
format: byte
last_results_hash:
type: string
format: byte
evidence_hash:
type: string
format: byte
title: consensus info
proposer_address:
type: string
format: byte
description: Header defines the structure of a Tendermint block header.
valset:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the
validator's operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the
type of the serialized
protocol buffer message. This string must
contain at least
one "/" character. The last segment of the URL's
path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name
should be in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the
binary all types that they
expect it to use in the context of Any. However,
for URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message
definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup
results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently
available in the official
protobuf release, and it is not used for type
URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of
the above specified type.
description: >-
`Any` contains an arbitrary serialized protocol
buffer message along with a
URL that describes the type of the serialized
message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods
of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will
by default use
'type.googleapis.com/full.type.name' as the type URL
and the unpack
methods only use the fully qualified type name after
the last '/'
in the type URL, for example "foo.bar.com/x/y.z"
will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the
regular
representation of the deserialized, embedded
message, with an
additional field `@type` which contains the type
URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to
the `@type`
field. Example (for message
[google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed
from bonded status or not.
status:
description: >-
status is the validator status
(bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: >-
tokens define the delegated tokens (incl.
self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: >-
description defines the description terms for the
validator.
type: object
properties:
moniker:
type: string
description: >-
moniker defines a human-readable name for the
validator.
identity:
type: string
description: >-
identity defines an optional identity signature
(ex. UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for
security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height
at which this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time
for the validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission
rates to be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to
delegators, as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate
which validator can ever charge, as a
fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily
increase of the validator commission, as a
fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate
was changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared
minimum self delegation.
description: >-
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.
description: >-
QueryHistoricalInfoResponse is response type for the
Query/HistoricalInfo RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: height
description: height defines at which height to query the historical info.
in: path
required: true
type: string
format: int64
tags:
- Query
/cosmos/staking/v1beta1/params:
get:
summary: Parameters queries the staking parameters.
operationId: StakingParams
responses:
'200':
description: A successful response.
schema:
type: object
properties:
params:
description: params holds all the parameters of this module.
type: object
properties:
unbonding_time:
type: string
description: unbonding_time is the time duration of unbonding.
max_validators:
type: integer
format: int64
description: max_validators is the maximum number of validators.
max_entries:
type: integer
format: int64
description: >-
max_entries is the max entries for either unbonding
delegation or redelegation (per pair/trio).
historical_entries:
type: integer
format: int64
description: >-
historical_entries is the number of historical entries to
persist.
bond_denom:
type: string
description: bond_denom defines the bondable coin denomination.
description: >-
QueryParamsResponse is response type for the Query/Params RPC
method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
tags:
- Query
/cosmos/staking/v1beta1/pool:
get:
summary: Pool queries the pool info.
operationId: Pool
responses:
'200':
description: A successful response.
schema:
type: object
properties:
pool:
description: pool defines the pool info.
type: object
properties:
not_bonded_tokens:
type: string
bonded_tokens:
type: string
description: QueryPoolResponse is response type for the Query/Pool RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
tags:
- Query
/cosmos/staking/v1beta1/validators:
get:
summary: Validators queries all validators that match the given status.
operationId: Validators
responses:
'200':
description: A successful response.
schema:
type: object
properties:
validators:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the
type of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's
path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the
binary all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available
in the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the
regular
representation of the deserialized, embedded message,
with an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message
[google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed
from bonded status or not.
status:
description: >-
status is the validator status
(bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: >-
tokens define the delegated tokens (incl.
self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: >-
description defines the description terms for the
validator.
type: object
properties:
moniker:
type: string
description: >-
moniker defines a human-readable name for the
validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex.
UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for
security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at
which this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for
the validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission
rates to be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to
delegators, as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate
which validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily
increase of the validator commission, as a
fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared
minimum self delegation.
description: >-
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.
description: validators contains all the queried validators.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryValidatorsResponse is response type for the Query/Validators
RPC method
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: status
description: status enables to query for validators matching a given status.
in: query
required: false
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/validators/{validator_addr}:
get:
summary: Validator queries validator info for given validator address.
operationId: Validator
responses:
'200':
description: A successful response.
schema:
type: object
properties:
validator:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type
of the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be
in a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can
optionally set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results
based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty
scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the
above specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any
values in the form
of utility functions or additional generated methods of
the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and
the unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will
yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a
custom JSON
representation, that representation will be embedded
adding a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from
bonded status or not.
status:
description: >-
status is the validator status
(bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: >-
tokens define the delegated tokens (incl.
self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: >-
description defines the description terms for the
validator.
type: object
properties:
moniker:
type: string
description: >-
moniker defines a human-readable name for the
validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex.
UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for
security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at
which this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates
to be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators,
as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase
of the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared
minimum self delegation.
description: >-
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.
title: >-
QueryValidatorResponse is response type for the Query/Validator
RPC method
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/staking/v1beta1/validators/{validator_addr}/delegations:
get:
summary: ValidatorDelegations queries delegate info for given validator.
operationId: ValidatorDelegations
responses:
'200':
description: A successful response.
schema:
type: object
properties:
delegation_responses:
type: array
items:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of
the delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of
the validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that
it contains a
balance in addition to shares which is more suitable for
client responses.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: |-
QueryValidatorDelegationsResponse is response type for the
Query/ValidatorDelegations RPC method
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}:
get:
summary: Delegation queries delegate info for given validator delegator pair.
operationId: Delegation
responses:
'200':
description: A successful response.
schema:
type: object
properties:
delegation_response:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the
custom method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that it
contains a
balance in addition to shares which is more suitable for
client responses.
description: >-
QueryDelegationResponse is response type for the Query/Delegation
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation:
get:
summary: |-
UnbondingDelegation queries unbonding info for given validator delegator
pair.
operationId: UnbondingDelegation
responses:
'200':
description: A successful response.
schema:
type: object
properties:
unbond:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding
took place.
completion_time:
type: string
format: date-time
description: >-
completion_time is the unix time for unbonding
completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially
scheduled to receive at completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object
with relevant metadata.
description: entries are the unbonding delegation entries.
description: >-
UnbondingDelegation stores all of a single delegator's
unbonding bonds
for a single validator in an time-ordered list.
description: >-
QueryDelegationResponse is response type for the
Query/UnbondingDelegation
RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
- name: delegator_addr
description: delegator_addr defines the delegator address to query for.
in: path
required: true
type: string
tags:
- Query
/cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations:
get:
summary: >-
ValidatorUnbondingDelegations queries unbonding delegations of a
validator.
operationId: ValidatorUnbondingDelegations
responses:
'200':
description: A successful response.
schema:
type: object
properties:
unbonding_responses:
type: array
items:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding
took place.
completion_time:
type: string
format: date-time
description: >-
completion_time is the unix time for unbonding
completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially
scheduled to receive at completion.
balance:
type: string
description: >-
balance defines the tokens to receive at
completion.
description: >-
UnbondingDelegationEntry defines an unbonding object
with relevant metadata.
description: entries are the unbonding delegation entries.
description: >-
UnbondingDelegation stores all of a single delegator's
unbonding bonds
for a single validator in an time-ordered list.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryValidatorUnbondingDelegationsResponse is response type for
the
Query/ValidatorUnbondingDelegations RPC method.
default:
description: An unexpected error response.
schema:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
parameters:
- name: validator_addr
description: validator_addr defines the validator address to query for.
in: path
required: true
type: string
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
- name: pagination.reverse
description: >-
reverse is set to true if results are to be returned in the
descending order.
in: query
required: false
type: boolean
tags:
- Query
=======
>>>>>>> v0.20.0
definitions:
ethermint.evm.v1.ChainConfig:
type: object
properties:
homestead_block:
type: string
title: Homestead switch block (nil no fork, 0 = already homestead)
dao_fork_block:
type: string
title: TheDAO hard-fork switch block (nil no fork)
dao_fork_support:
type: boolean
title: Whether the nodes supports or opposes the DAO hard-fork
eip150_block:
type: string
title: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil no
fork)
eip150_hash:
type: string
title: >-
EIP150 HF hash (needed for header only clients as only gas pricing
changed)
eip155_block:
type: string
title: EIP155Block HF block
eip158_block:
type: string
title: EIP158 HF block
byzantium_block:
type: string
title: Byzantium switch block (nil no fork, 0 = already on byzantium)
constantinople_block:
type: string
title: Constantinople switch block (nil no fork, 0 = already activated)
petersburg_block:
type: string
title: Petersburg switch block (nil same as Constantinople)
istanbul_block:
type: string
title: Istanbul switch block (nil no fork, 0 = already on istanbul)
muir_glacier_block:
type: string
title: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated)
berlin_block:
type: string
title: Berlin switch block (nil = no fork, 0 = already on berlin)
london_block:
type: string
title: London switch block (nil = no fork, 0 = already on london)
arrow_glacier_block:
type: string
title: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated)
<<<<<<< HEAD
merge_fork_block:
type: string
title: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already in merge
proceedings)
=======
gray_glacier_block:
type: string
title: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated)
merge_netsplit_block:
type: string
title: Virtual fork after The Merge to use as a network splitter
>>>>>>> v0.20.0
description: >-
ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int
values
instead of *big.Int.
ethermint.evm.v1.EstimateGasResponse:
type: object
properties:
gas:
type: string
format: uint64
title: the estimated gas
title: EstimateGasResponse defines EstimateGas response
ethermint.evm.v1.Log:
type: object
properties:
address:
type: string
title: address of the contract that generated the event
topics:
type: array
items:
type: string
description: list of topics provided by the contract.
data:
type: string
format: byte
title: supplied by the contract, usually ABI-encoded
block_number:
type: string
format: uint64
title: block in which the transaction was included
tx_hash:
type: string
title: hash of the transaction
tx_index:
type: string
format: uint64
title: index of the transaction in the block
block_hash:
type: string
title: hash of the block in which the transaction was included
index:
type: string
format: uint64
title: index of the log in the block
removed:
type: boolean
description: >-
The Removed field is true if this log was reverted due to a chain
reorganisation. You must pay attention to this field if you receive
logs
through a filter query.
description: >-
Log represents an protobuf compatible Ethereum Log that defines a contract
log event. These events are generated by the LOG opcode and stored/indexed
by
the node.
ethermint.evm.v1.MsgEthereumTx:
type: object
properties:
data:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up a
type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
title: inner transaction data
size:
type: number
format: double
title: 'DEPRECATED: encoded storage size of the transaction'
hash:
type: string
title: transaction hash in hex format
from:
type: string
title: |-
ethereum signer address in hex format. This address value is checked
against the address derived from the signature (V, R, S) using the
secp256k1 elliptic curve
description: MsgEthereumTx encapsulates an Ethereum transaction as an SDK message.
ethermint.evm.v1.MsgEthereumTxResponse:
type: object
properties:
hash:
type: string
title: |-
ethereum transaction hash in hex format. This hash differs from the
Tendermint sha256 hash of the transaction bytes. See
https://github.com/tendermint/tendermint/issues/6539 for reference
logs:
type: array
items:
type: object
properties:
address:
type: string
title: address of the contract that generated the event
topics:
type: array
items:
type: string
description: list of topics provided by the contract.
data:
type: string
format: byte
title: supplied by the contract, usually ABI-encoded
block_number:
type: string
format: uint64
title: block in which the transaction was included
tx_hash:
type: string
title: hash of the transaction
tx_index:
type: string
format: uint64
title: index of the transaction in the block
block_hash:
type: string
title: hash of the block in which the transaction was included
index:
type: string
format: uint64
title: index of the log in the block
removed:
type: boolean
description: >-
The Removed field is true if this log was reverted due to a
chain
reorganisation. You must pay attention to this field if you
receive logs
through a filter query.
description: >-
Log represents an protobuf compatible Ethereum Log that defines a
contract
log event. These events are generated by the LOG opcode and
stored/indexed by
the node.
description: |-
logs contains the transaction hash and the proto-compatible ethereum
logs.
ret:
type: string
format: byte
title: |-
returned data from evm function (result or data supplied with revert
opcode)
vm_error:
type: string
title: vm error is the error returned by vm execution
gas_used:
type: string
format: uint64
title: gas consumed by the transaction
description: MsgEthereumTxResponse defines the Msg/EthereumTx response type.
ethermint.evm.v1.Params:
type: object
properties:
evm_denom:
type: string
description: |-
evm denom represents the token denomination used to run the EVM state
transitions.
enable_create:
type: boolean
title: >-
enable create toggles state transitions that use the vm.Create
function
enable_call:
type: boolean
title: enable call toggles state transitions that use the vm.Call function
extra_eips:
type: array
items:
type: string
format: int64
title: extra eips defines the additional EIPs for the vm.Config
chain_config:
title: chain config defines the EVM chain configuration parameters
type: object
properties:
homestead_block:
type: string
title: Homestead switch block (nil no fork, 0 = already homestead)
dao_fork_block:
type: string
title: TheDAO hard-fork switch block (nil no fork)
dao_fork_support:
type: boolean
title: Whether the nodes supports or opposes the DAO hard-fork
eip150_block:
type: string
title: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil
no fork)
eip150_hash:
type: string
title: >-
EIP150 HF hash (needed for header only clients as only gas pricing
changed)
eip155_block:
type: string
title: EIP155Block HF block
eip158_block:
type: string
title: EIP158 HF block
byzantium_block:
type: string
title: Byzantium switch block (nil no fork, 0 = already on byzantium)
constantinople_block:
type: string
title: Constantinople switch block (nil no fork, 0 = already activated)
petersburg_block:
type: string
title: Petersburg switch block (nil same as Constantinople)
istanbul_block:
type: string
title: Istanbul switch block (nil no fork, 0 = already on istanbul)
muir_glacier_block:
type: string
title: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated)
berlin_block:
type: string
title: Berlin switch block (nil = no fork, 0 = already on berlin)
london_block:
type: string
title: London switch block (nil = no fork, 0 = already on london)
arrow_glacier_block:
type: string
title: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated)
<<<<<<< HEAD
merge_fork_block:
type: string
title: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already in
merge proceedings)
=======
gray_glacier_block:
type: string
title: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated)
merge_netsplit_block:
type: string
title: Virtual fork after The Merge to use as a network splitter
>>>>>>> v0.20.0
description: >-
ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int
values
instead of *big.Int.
allow_unprotected_txs:
type: boolean
description: >-
Allow unprotected transactions defines if replay-protected (i.e non
<<<<<<< HEAD
EIP155
=======
EIP155
>>>>>>> v0.20.0
signed) transactions can be executed on the state machine.
title: Params defines the EVM module parameters
ethermint.evm.v1.QueryAccountResponse:
type: object
properties:
balance:
type: string
description: balance is the balance of the EVM denomination.
code_hash:
type: string
description: code hash is the hex-formatted code bytes from the EOA.
nonce:
type: string
format: uint64
description: nonce is the account's sequence number.
description: >-
QueryAccountResponse is the response type for the Query/Account RPC
method.
ethermint.evm.v1.QueryBalanceResponse:
type: object
properties:
balance:
type: string
description: balance is the balance of the EVM denomination.
description: >-
QueryBalanceResponse is the response type for the Query/Balance RPC
method.
ethermint.evm.v1.QueryBaseFeeResponse:
type: object
properties:
base_fee:
type: string
description: BaseFeeResponse returns the EIP1559 base fee.
ethermint.evm.v1.QueryCodeResponse:
type: object
properties:
code:
type: string
format: byte
description: code represents the code bytes from an ethereum address.
description: |-
QueryCodeResponse is the response type for the Query/Code RPC
method.
ethermint.evm.v1.QueryCosmosAccountResponse:
type: object
properties:
cosmos_address:
type: string
description: cosmos_address is the cosmos address of the account.
sequence:
type: string
format: uint64
description: sequence is the account's sequence number.
account_number:
type: string
format: uint64
title: account_number is the account numbert
description: >-
QueryCosmosAccountResponse is the response type for the
Query/CosmosAccount
RPC method.
ethermint.evm.v1.QueryParamsResponse:
type: object
properties:
params:
description: params define the evm module parameters.
type: object
properties:
evm_denom:
type: string
description: >-
evm denom represents the token denomination used to run the EVM
state
transitions.
enable_create:
type: boolean
title: >-
enable create toggles state transitions that use the vm.Create
function
enable_call:
type: boolean
title: >-
enable call toggles state transitions that use the vm.Call
function
extra_eips:
type: array
items:
type: string
format: int64
title: extra eips defines the additional EIPs for the vm.Config
chain_config:
title: chain config defines the EVM chain configuration parameters
type: object
properties:
homestead_block:
type: string
title: Homestead switch block (nil no fork, 0 = already homestead)
dao_fork_block:
type: string
title: TheDAO hard-fork switch block (nil no fork)
dao_fork_support:
type: boolean
title: Whether the nodes supports or opposes the DAO hard-fork
eip150_block:
type: string
title: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block
(nil no fork)
eip150_hash:
type: string
title: >-
EIP150 HF hash (needed for header only clients as only gas
pricing changed)
eip155_block:
type: string
title: EIP155Block HF block
eip158_block:
type: string
title: EIP158 HF block
byzantium_block:
type: string
title: Byzantium switch block (nil no fork, 0 = already on byzantium)
constantinople_block:
type: string
title: >-
Constantinople switch block (nil no fork, 0 = already
activated)
petersburg_block:
type: string
title: Petersburg switch block (nil same as Constantinople)
istanbul_block:
type: string
title: Istanbul switch block (nil no fork, 0 = already on istanbul)
muir_glacier_block:
type: string
title: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated)
berlin_block:
type: string
title: Berlin switch block (nil = no fork, 0 = already on berlin)
london_block:
type: string
title: London switch block (nil = no fork, 0 = already on london)
arrow_glacier_block:
type: string
title: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated)
<<<<<<< HEAD
merge_fork_block:
type: string
title: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already
in merge proceedings)
=======
gray_glacier_block:
type: string
title: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated)
merge_netsplit_block:
type: string
title: Virtual fork after The Merge to use as a network splitter
>>>>>>> v0.20.0
description: >-
ChainConfig defines the Ethereum ChainConfig parameters using
*sdk.Int values
instead of *big.Int.
allow_unprotected_txs:
type: boolean
description: >-
Allow unprotected transactions defines if replay-protected (i.e
<<<<<<< HEAD
non EIP155
=======
non EIP155
>>>>>>> v0.20.0
signed) transactions can be executed on the state machine.
title: Params defines the EVM module parameters
description: >-
QueryParamsResponse defines the response type for querying x/evm
parameters.
ethermint.evm.v1.QueryStorageResponse:
type: object
properties:
value:
type: string
description: >-
key defines the storage state value hash associated with the given
key.
description: |-
QueryStorageResponse is the response type for the Query/Storage RPC
method.
ethermint.evm.v1.QueryTraceBlockResponse:
type: object
properties:
data:
type: string
format: byte
title: QueryTraceBlockResponse defines TraceBlock response
ethermint.evm.v1.QueryTraceTxResponse:
type: object
properties:
data:
type: string
format: byte
title: response serialized in bytes
title: QueryTraceTxResponse defines TraceTx response
ethermint.evm.v1.QueryValidatorAccountResponse:
type: object
properties:
account_address:
type: string
description: account_address is the cosmos address of the account in bech32 format.
sequence:
type: string
format: uint64
description: sequence is the account's sequence number.
account_number:
type: string
format: uint64
title: account_number is the account number
description: |-
QueryValidatorAccountResponse is the response type for the
Query/ValidatorAccount RPC method.
ethermint.evm.v1.TraceConfig:
type: object
properties:
tracer:
type: string
title: custom javascript tracer
timeout:
type: string
title: >-
overrides the default timeout of 5 seconds for JavaScript-based
tracing
calls
reexec:
type: string
format: uint64
title: number of blocks the tracer is willing to go back
disable_stack:
type: boolean
title: disable stack capture
disable_storage:
type: boolean
title: disable storage capture
debug:
type: boolean
title: print output during capture end
limit:
type: integer
format: int32
title: maximum length of output, but zero means unlimited
overrides:
title: >-
Chain overrides, can be used to execute a trace using future fork
rules
type: object
properties:
homestead_block:
type: string
title: Homestead switch block (nil no fork, 0 = already homestead)
dao_fork_block:
type: string
title: TheDAO hard-fork switch block (nil no fork)
dao_fork_support:
type: boolean
title: Whether the nodes supports or opposes the DAO hard-fork
eip150_block:
type: string
title: >-
EIP150 implements the Gas price changes
(https://github.com/ethereum/EIPs/issues/150) EIP150 HF block (nil
no fork)
eip150_hash:
type: string
title: >-
EIP150 HF hash (needed for header only clients as only gas pricing
changed)
eip155_block:
type: string
title: EIP155Block HF block
eip158_block:
type: string
title: EIP158 HF block
byzantium_block:
type: string
title: Byzantium switch block (nil no fork, 0 = already on byzantium)
constantinople_block:
type: string
title: Constantinople switch block (nil no fork, 0 = already activated)
petersburg_block:
type: string
title: Petersburg switch block (nil same as Constantinople)
istanbul_block:
type: string
title: Istanbul switch block (nil no fork, 0 = already on istanbul)
muir_glacier_block:
type: string
title: >-
Eip-2384 (bomb delay) switch block (nil no fork, 0 = already
activated)
berlin_block:
type: string
title: Berlin switch block (nil = no fork, 0 = already on berlin)
london_block:
type: string
title: London switch block (nil = no fork, 0 = already on london)
arrow_glacier_block:
type: string
title: >-
Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already
activated)
<<<<<<< HEAD
merge_fork_block:
type: string
title: >-
EIP-3675 (TheMerge) switch block (nil = no fork, 0 = already in
merge proceedings)
=======
gray_glacier_block:
type: string
title: >-
EIP-5133 (bomb delay) switch block (nil = no fork, 0 = already
activated)
merge_netsplit_block:
type: string
title: Virtual fork after The Merge to use as a network splitter
>>>>>>> v0.20.0
description: >-
ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int
values
instead of *big.Int.
enable_memory:
type: boolean
title: enable memory capture
enable_return_data:
type: boolean
title: enable return data capture
tracer_json_config:
type: string
title: tracer config
description: TraceConfig holds extra parameters to trace functions.
google.protobuf.Any:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a canonical
form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types that
they
expect it to use in the context of Any. However, for URLs which use
the
scheme `http`, `https`, or no scheme, one can optionally set up a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along with
a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the form
of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
grpc.gateway.runtime.Error:
type: object
properties:
error:
type: string
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up
a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might
be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
<<<<<<< HEAD
cosmos.auth.v1beta1.Params:
type: object
properties:
max_memo_characters:
type: string
format: uint64
tx_sig_limit:
type: string
format: uint64
tx_size_cost_per_byte:
type: string
format: uint64
sig_verify_cost_ed25519:
type: string
format: uint64
sig_verify_cost_secp256k1:
type: string
format: uint64
description: Params defines the parameters for the auth module.
cosmos.auth.v1beta1.QueryAccountResponse:
type: object
properties:
account:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up a
type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
description: >-
QueryAccountResponse is the response type for the Query/Account RPC
method.
cosmos.auth.v1beta1.QueryAccountsResponse:
type: object
properties:
accounts:
type: array
items:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up
a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might
be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
title: accounts are the existing accounts
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryAccountsResponse is the response type for the Query/Accounts RPC
method.
cosmos.auth.v1beta1.QueryParamsResponse:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
max_memo_characters:
type: string
format: uint64
tx_sig_limit:
type: string
format: uint64
tx_size_cost_per_byte:
type: string
format: uint64
sig_verify_cost_ed25519:
type: string
format: uint64
sig_verify_cost_secp256k1:
type: string
format: uint64
description: QueryParamsResponse is the response type for the Query/Params RPC method.
cosmos.base.query.v1beta1.PageRequest:
type: object
properties:
key:
type: string
format: byte
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
offset:
type: string
format: uint64
description: |-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key should
be set.
limit:
type: string
format: uint64
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
count_total:
type: boolean
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in UIs.
count_total is only respected when offset is used. It is ignored when
key
is set.
reverse:
type: boolean
description: >-
reverse is set to true if results are to be returned in the descending
order.
description: |-
message SomeRequest {
Foo some_parameter = 1;
PageRequest pagination = 2;
}
title: |-
PageRequest is to be embedded in gRPC request messages for efficient
pagination. Ex:
cosmos.base.query.v1beta1.PageResponse:
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: |-
total is total number of results available if PageRequest.count_total
was set, its value is undefined otherwise
description: |-
PageResponse is to be embedded in gRPC response messages where the
corresponding request message has used PageRequest.
message SomeResponse {
repeated Bar results = 1;
PageResponse page = 2;
}
cosmos.bank.v1beta1.DenomUnit:
type: object
properties:
denom:
type: string
description: denom represents the string name of the given denom unit (e.g uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: aliases is a list of string aliases for the given denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
cosmos.bank.v1beta1.Metadata:
type: object
properties:
description:
type: string
denom_units:
type: array
items:
type: object
properties:
denom:
type: string
description: >-
denom represents the string name of the given denom unit (e.g
uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: aliases is a list of string aliases for the given denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
title: denom_units represents the list of DenomUnit's for a given coin
base:
type: string
description: >-
base represents the base denom (should be the DenomUnit with exponent
= 0).
display:
type: string
description: |-
display indicates the suggested denom that should be
displayed in clients.
name:
type: string
title: 'name defines the name of the token (eg: Cosmos Atom)'
symbol:
type: string
description: >-
symbol is the token symbol usually shown on exchanges (eg: ATOM). This
can
be the same as the display.
description: |-
Metadata represents a struct that describes
a basic token.
cosmos.bank.v1beta1.Params:
type: object
properties:
send_enabled:
type: array
items:
type: object
properties:
denom:
type: string
enabled:
type: boolean
description: >-
SendEnabled maps coin denom to a send_enabled status (whether a
denom is
sendable).
default_send_enabled:
type: boolean
description: Params defines the parameters for the bank module.
cosmos.bank.v1beta1.QueryAllBalancesResponse:
type: object
properties:
balances:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: balances is the balances of all the coins.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryAllBalancesResponse is the response type for the Query/AllBalances
RPC
method.
cosmos.bank.v1beta1.QueryBalanceResponse:
type: object
properties:
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: >-
QueryBalanceResponse is the response type for the Query/Balance RPC
method.
cosmos.bank.v1beta1.QueryDenomMetadataResponse:
type: object
properties:
metadata:
type: object
properties:
description:
type: string
denom_units:
type: array
items:
type: object
properties:
denom:
type: string
description: >-
denom represents the string name of the given denom unit
(e.g uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: aliases is a list of string aliases for the given denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
title: denom_units represents the list of DenomUnit's for a given coin
base:
type: string
description: >-
base represents the base denom (should be the DenomUnit with
exponent = 0).
display:
type: string
description: |-
display indicates the suggested denom that should be
displayed in clients.
name:
type: string
title: 'name defines the name of the token (eg: Cosmos Atom)'
symbol:
type: string
description: >-
symbol is the token symbol usually shown on exchanges (eg: ATOM).
This can
be the same as the display.
description: |-
Metadata represents a struct that describes
a basic token.
description: >-
QueryDenomMetadataResponse is the response type for the
Query/DenomMetadata RPC
method.
cosmos.bank.v1beta1.QueryDenomsMetadataResponse:
type: object
properties:
metadatas:
type: array
items:
type: object
properties:
description:
type: string
denom_units:
type: array
items:
type: object
properties:
denom:
type: string
description: >-
denom represents the string name of the given denom unit
(e.g uatom).
exponent:
type: integer
format: int64
description: >-
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:
type: array
items:
type: string
title: aliases is a list of string aliases for the given denom
description: |-
DenomUnit represents a struct that describes a given
denomination unit of the basic token.
title: denom_units represents the list of DenomUnit's for a given coin
base:
type: string
description: >-
base represents the base denom (should be the DenomUnit with
exponent = 0).
display:
type: string
description: |-
display indicates the suggested denom that should be
displayed in clients.
name:
type: string
title: 'name defines the name of the token (eg: Cosmos Atom)'
symbol:
type: string
description: >-
symbol is the token symbol usually shown on exchanges (eg:
ATOM). This can
be the same as the display.
description: |-
Metadata represents a struct that describes
a basic token.
description: >-
metadata provides the client information for all the registered
tokens.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryDenomsMetadataResponse is the response type for the
Query/DenomsMetadata RPC
method.
cosmos.bank.v1beta1.QueryParamsResponse:
type: object
properties:
params:
type: object
properties:
send_enabled:
type: array
items:
type: object
properties:
denom:
type: string
enabled:
type: boolean
description: >-
SendEnabled maps coin denom to a send_enabled status (whether a
denom is
sendable).
default_send_enabled:
type: boolean
description: Params defines the parameters for the bank module.
description: >-
QueryParamsResponse defines the response type for querying x/bank
parameters.
cosmos.bank.v1beta1.QuerySupplyOfResponse:
type: object
properties:
amount:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: >-
QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC
method.
cosmos.bank.v1beta1.QueryTotalSupplyResponse:
type: object
properties:
supply:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
title: supply is the supply of the coins
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryTotalSupplyResponse is the response type for the Query/TotalSupply
RPC
method
cosmos.bank.v1beta1.SendEnabled:
type: object
properties:
denom:
type: string
enabled:
type: boolean
description: |-
SendEnabled maps coin denom to a send_enabled status (whether a denom is
sendable).
cosmos.base.v1beta1.Coin:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
cosmos.base.v1beta1.DecCoin:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
cosmos.distribution.v1beta1.DelegationDelegatorReward:
type: object
properties:
validator_address:
type: string
reward:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: |-
DelegationDelegatorReward represents the properties
of a delegator's delegation reward.
cosmos.distribution.v1beta1.Params:
type: object
properties:
community_tax:
type: string
base_proposer_reward:
type: string
bonus_proposer_reward:
type: string
withdraw_addr_enabled:
type: boolean
description: Params defines the set of params for the distribution module.
cosmos.distribution.v1beta1.QueryCommunityPoolResponse:
type: object
properties:
pool:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: pool defines community pool's coins.
description: >-
QueryCommunityPoolResponse is the response type for the
Query/CommunityPool
RPC method.
cosmos.distribution.v1beta1.QueryDelegationRewardsResponse:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: rewards defines the rewards accrued by a delegation.
description: |-
QueryDelegationRewardsResponse is the response type for the
Query/DelegationRewards RPC method.
cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
validator_address:
type: string
reward:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
description: |-
DelegationDelegatorReward represents the properties
of a delegator's delegation reward.
description: rewards defines all the rewards accrued by a delegator.
total:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: total defines the sum of all the rewards.
description: |-
QueryDelegationTotalRewardsResponse is the response type for the
Query/DelegationTotalRewards RPC method.
cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse:
type: object
properties:
validators:
type: array
items:
type: string
description: validators defines the validators a delegator is delegating for.
description: |-
QueryDelegatorValidatorsResponse is the response type for the
Query/DelegatorValidators RPC method.
cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse:
type: object
properties:
withdraw_address:
type: string
description: withdraw_address defines the delegator address to query for.
description: |-
QueryDelegatorWithdrawAddressResponse is the response type for the
Query/DelegatorWithdrawAddress RPC method.
cosmos.distribution.v1beta1.QueryParamsResponse:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
community_tax:
type: string
base_proposer_reward:
type: string
bonus_proposer_reward:
type: string
withdraw_addr_enabled:
type: boolean
description: QueryParamsResponse is the response type for the Query/Params RPC method.
cosmos.distribution.v1beta1.QueryValidatorCommissionResponse:
type: object
properties:
commission:
description: commission defines the commision the validator received.
type: object
properties:
commission:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
title: |-
QueryValidatorCommissionResponse is the response type for the
Query/ValidatorCommission RPC method
cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse:
type: object
properties:
rewards:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
DecCoin defines a token with a denomination and a decimal
amount.
NOTE: The amount field is an Dec which implements the custom
method
signatures required by gogoproto.
description: >-
ValidatorOutstandingRewards represents outstanding (un-withdrawn)
rewards
for a validator inexpensive to track, allows simple sanity checks.
description: |-
QueryValidatorOutstandingRewardsResponse is the response type for the
Query/ValidatorOutstandingRewards RPC method.
cosmos.distribution.v1beta1.QueryValidatorSlashesResponse:
type: object
properties:
slashes:
type: array
items:
type: object
properties:
validator_period:
type: string
format: uint64
fraction:
type: string
description: |-
ValidatorSlashEvent represents a validator slash event.
Height is implicit within the store key.
This is needed to calculate appropriate amount of staking tokens
for delegations which are withdrawn after a slash has occurred.
description: slashes defines the slashes the validator received.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryValidatorSlashesResponse is the response type for the
Query/ValidatorSlashes RPC method.
cosmos.distribution.v1beta1.ValidatorAccumulatedCommission:
type: object
properties:
commission:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: |-
ValidatorAccumulatedCommission represents accumulated commission
for a validator kept as a running counter, can be withdrawn at any time.
cosmos.distribution.v1beta1.ValidatorOutstandingRewards:
type: object
properties:
rewards:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
DecCoin defines a token with a denomination and a decimal amount.
NOTE: The amount field is an Dec which implements the custom method
signatures required by gogoproto.
description: |-
ValidatorOutstandingRewards represents outstanding (un-withdrawn) rewards
for a validator inexpensive to track, allows simple sanity checks.
cosmos.distribution.v1beta1.ValidatorSlashEvent:
type: object
properties:
validator_period:
type: string
format: uint64
fraction:
type: string
description: |-
ValidatorSlashEvent represents a validator slash event.
Height is implicit within the store key.
This is needed to calculate appropriate amount of staking tokens
for delegations which are withdrawn after a slash has occurred.
cosmos.mint.v1beta1.Params:
type: object
properties:
mint_denom:
type: string
title: type of coin to mint
inflation_rate_change:
type: string
title: maximum annual change in inflation rate
inflation_max:
type: string
title: maximum inflation rate
inflation_min:
type: string
title: minimum inflation rate
goal_bonded:
type: string
title: goal of percent bonded atoms
blocks_per_year:
type: string
format: uint64
title: expected blocks per year
description: Params holds parameters for the mint module.
cosmos.mint.v1beta1.QueryAnnualProvisionsResponse:
type: object
properties:
annual_provisions:
type: string
format: byte
description: annual_provisions is the current minting annual provisions value.
description: |-
QueryAnnualProvisionsResponse is the response type for the
Query/AnnualProvisions RPC method.
cosmos.mint.v1beta1.QueryInflationResponse:
type: object
properties:
inflation:
type: string
format: byte
description: inflation is the current minting inflation value.
description: |-
QueryInflationResponse is the response type for the Query/Inflation RPC
method.
cosmos.mint.v1beta1.QueryParamsResponse:
type: object
properties:
params:
description: params defines the parameters of the module.
type: object
properties:
mint_denom:
type: string
title: type of coin to mint
inflation_rate_change:
type: string
title: maximum annual change in inflation rate
inflation_max:
type: string
title: maximum inflation rate
inflation_min:
type: string
title: minimum inflation rate
goal_bonded:
type: string
title: goal of percent bonded atoms
blocks_per_year:
type: string
format: uint64
title: expected blocks per year
description: QueryParamsResponse is the response type for the Query/Params RPC method.
cosmos.gov.v1beta1.Deposit:
type: object
properties:
proposal_id:
type: string
format: uint64
depositor:
type: string
amount:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: |-
Deposit defines an amount deposited by an account address to an active
proposal.
cosmos.gov.v1beta1.DepositParams:
type: object
properties:
min_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: Minimum deposit for a proposal to enter voting period.
max_deposit_period:
type: string
description: >-
Maximum period for Atom holders to deposit on a proposal. Initial
value: 2
months.
description: DepositParams defines the params for deposits on governance proposals.
cosmos.gov.v1beta1.Proposal:
type: object
properties:
proposal_id:
type: string
format: uint64
content:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up a
type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
status:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: |-
ProposalStatus enumerates the valid statuses of a proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
final_tally_result:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: TallyResult defines a standard tally for a governance proposal.
submit_time:
type: string
format: date-time
deposit_end_time:
type: string
format: date-time
total_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
voting_start_time:
type: string
format: date-time
voting_end_time:
type: string
format: date-time
description: Proposal defines the core field members of a governance proposal.
cosmos.gov.v1beta1.ProposalStatus:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: |-
ProposalStatus enumerates the valid statuses of a proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
cosmos.gov.v1beta1.QueryDepositResponse:
type: object
properties:
deposit:
type: object
properties:
proposal_id:
type: string
format: uint64
depositor:
type: string
amount:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: |-
Deposit defines an amount deposited by an account address to an active
proposal.
description: >-
QueryDepositResponse is the response type for the Query/Deposit RPC
method.
cosmos.gov.v1beta1.QueryDepositsResponse:
type: object
properties:
deposits:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
depositor:
type: string
amount:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
Deposit defines an amount deposited by an account address to an
active
proposal.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryDepositsResponse is the response type for the Query/Deposits RPC
method.
cosmos.gov.v1beta1.QueryParamsResponse:
type: object
properties:
voting_params:
description: voting_params defines the parameters related to voting.
type: object
properties:
voting_period:
type: string
description: Length of the voting period.
deposit_params:
description: deposit_params defines the parameters related to deposit.
type: object
properties:
min_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: Minimum deposit for a proposal to enter voting period.
max_deposit_period:
type: string
description: >-
Maximum period for Atom holders to deposit on a proposal. Initial
value: 2
months.
tally_params:
description: tally_params defines the parameters related to tally.
type: object
properties:
quorum:
type: string
format: byte
description: >-
Minimum percentage of total stake needed to vote for a result to
be
considered valid.
threshold:
type: string
format: byte
description: >-
Minimum proportion of Yes votes for proposal to pass. Default
value: 0.5.
veto_threshold:
type: string
format: byte
description: >-
Minimum value of Veto votes to Total votes ratio for proposal to
be
vetoed. Default value: 1/3.
description: QueryParamsResponse is the response type for the Query/Params RPC method.
cosmos.gov.v1beta1.QueryProposalResponse:
type: object
properties:
proposal:
type: object
properties:
proposal_id:
type: string
format: uint64
content:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might
be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
status:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: |-
ProposalStatus enumerates the valid statuses of a proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
final_tally_result:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: TallyResult defines a standard tally for a governance proposal.
submit_time:
type: string
format: date-time
deposit_end_time:
type: string
format: date-time
total_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
voting_start_time:
type: string
format: date-time
voting_end_time:
type: string
format: date-time
description: Proposal defines the core field members of a governance proposal.
description: >-
QueryProposalResponse is the response type for the Query/Proposal RPC
method.
cosmos.gov.v1beta1.QueryProposalsResponse:
type: object
properties:
proposals:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
content:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in
the form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default
use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last
'/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
status:
type: string
enum:
- PROPOSAL_STATUS_UNSPECIFIED
- PROPOSAL_STATUS_DEPOSIT_PERIOD
- PROPOSAL_STATUS_VOTING_PERIOD
- PROPOSAL_STATUS_PASSED
- PROPOSAL_STATUS_REJECTED
- PROPOSAL_STATUS_FAILED
default: PROPOSAL_STATUS_UNSPECIFIED
description: |-
ProposalStatus enumerates the valid statuses of a proposal.
- PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status.
- PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
period.
- PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
period.
- PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
passed.
- PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
been rejected.
- PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
failed.
final_tally_result:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: TallyResult defines a standard tally for a governance proposal.
submit_time:
type: string
format: date-time
deposit_end_time:
type: string
format: date-time
total_deposit:
type: array
items:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
voting_start_time:
type: string
format: date-time
voting_end_time:
type: string
format: date-time
description: Proposal defines the core field members of a governance proposal.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryProposalsResponse is the response type for the Query/Proposals RPC
method.
cosmos.gov.v1beta1.QueryTallyResultResponse:
type: object
properties:
tally:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: TallyResult defines a standard tally for a governance proposal.
description: >-
QueryTallyResultResponse is the response type for the Query/Tally RPC
method.
cosmos.gov.v1beta1.QueryVoteResponse:
type: object
properties:
vote:
type: object
properties:
proposal_id:
type: string
format: uint64
voter:
type: string
option:
description: >-
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.
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
options:
type: array
items:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a given
governance proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: WeightedVoteOption defines a unit of vote for vote split.
description: |-
Vote defines a vote on a governance proposal.
A Vote consists of a proposal ID, the voter, and the vote option.
description: QueryVoteResponse is the response type for the Query/Vote RPC method.
cosmos.gov.v1beta1.QueryVotesResponse:
type: object
properties:
votes:
type: array
items:
type: object
properties:
proposal_id:
type: string
format: uint64
voter:
type: string
option:
description: >-
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.
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
options:
type: array
items:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a given
governance proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: WeightedVoteOption defines a unit of vote for vote split.
description: |-
Vote defines a vote on a governance proposal.
A Vote consists of a proposal ID, the voter, and the vote option.
description: votes defined the queried votes.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: QueryVotesResponse is the response type for the Query/Votes RPC method.
cosmos.gov.v1beta1.TallyParams:
type: object
properties:
quorum:
type: string
format: byte
description: |-
Minimum percentage of total stake needed to vote for a result to be
considered valid.
threshold:
type: string
format: byte
description: >-
Minimum proportion of Yes votes for proposal to pass. Default value:
0.5.
veto_threshold:
type: string
format: byte
description: |-
Minimum value of Veto votes to Total votes ratio for proposal to be
vetoed. Default value: 1/3.
description: TallyParams defines the params for tallying votes on governance proposals.
cosmos.gov.v1beta1.TallyResult:
type: object
properties:
'yes':
type: string
abstain:
type: string
'no':
type: string
no_with_veto:
type: string
description: TallyResult defines a standard tally for a governance proposal.
cosmos.gov.v1beta1.Vote:
type: object
properties:
proposal_id:
type: string
format: uint64
voter:
type: string
option:
description: >-
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.
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
options:
type: array
items:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a given
governance proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: WeightedVoteOption defines a unit of vote for vote split.
description: |-
Vote defines a vote on a governance proposal.
A Vote consists of a proposal ID, the voter, and the vote option.
cosmos.gov.v1beta1.VoteOption:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a given governance
proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
cosmos.gov.v1beta1.VotingParams:
type: object
properties:
voting_period:
type: string
description: Length of the voting period.
description: VotingParams defines the params for voting on governance proposals.
cosmos.gov.v1beta1.WeightedVoteOption:
type: object
properties:
option:
type: string
enum:
- VOTE_OPTION_UNSPECIFIED
- VOTE_OPTION_YES
- VOTE_OPTION_ABSTAIN
- VOTE_OPTION_NO
- VOTE_OPTION_NO_WITH_VETO
default: VOTE_OPTION_UNSPECIFIED
description: >-
VoteOption enumerates the valid vote options for a given governance
proposal.
- VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
- VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
- VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
- VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
- VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
weight:
type: string
description: WeightedVoteOption defines a unit of vote for vote split.
cosmos.staking.v1beta1.BondStatus:
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
description: |-
BondStatus is the status of a validator.
- BOND_STATUS_UNSPECIFIED: UNSPECIFIED defines an invalid validator status.
- BOND_STATUS_UNBONDED: UNBONDED defines a validator that is not bonded.
- BOND_STATUS_UNBONDING: UNBONDING defines a validator that is unbonding.
- BOND_STATUS_BONDED: BONDED defines a validator that is bonded.
cosmos.staking.v1beta1.Commission:
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be used for
creating a validator.
type: object
properties:
rate:
type: string
description: rate is the commission rate charged to delegators, as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which validator can
ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of the
validator commission, as a fraction.
update_time:
type: string
format: date-time
description: update_time is the last time the commission rate was changed.
description: Commission defines commission parameters for a given validator.
cosmos.staking.v1beta1.CommissionRates:
type: object
properties:
rate:
type: string
description: rate is the commission rate charged to delegators, as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which validator can ever
charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of the validator
commission, as a fraction.
description: >-
CommissionRates defines the initial commission rates to be used for
creating
a validator.
cosmos.staking.v1beta1.Delegation:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_address:
type: string
description: validator_address is the bech32-encoded address of the validator.
shares:
type: string
description: shares define the delegation shares received.
description: |-
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.
cosmos.staking.v1beta1.DelegationResponse:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_address:
type: string
description: validator_address is the bech32-encoded address of the validator.
shares:
type: string
description: shares define the delegation shares received.
description: |-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: |-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
description: |-
DelegationResponse is equivalent to Delegation except that it contains a
balance in addition to shares which is more suitable for client responses.
cosmos.staking.v1beta1.Description:
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort or
Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: security_contact defines an optional email for security contact.
details:
type: string
description: details define other optional details.
description: Description defines a validator description.
cosmos.staking.v1beta1.HistoricalInfo:
type: object
properties:
header:
type: object
properties:
version:
title: basic block info
type: object
properties:
block:
type: string
format: uint64
app:
type: string
format: uint64
description: >-
Consensus captures the consensus rules for processing a block in
the blockchain,
including all blockchain data structures and the rules of the
application's
state transition machine.
chain_id:
type: string
height:
type: string
format: int64
time:
type: string
format: date-time
last_block_id:
title: prev block info
type: object
properties:
hash:
type: string
format: byte
part_set_header:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
last_commit_hash:
type: string
format: byte
title: hashes of block data
data_hash:
type: string
format: byte
validators_hash:
type: string
format: byte
title: hashes from the app output from the prev block
next_validators_hash:
type: string
format: byte
consensus_hash:
type: string
format: byte
app_hash:
type: string
format: byte
last_results_hash:
type: string
format: byte
evidence_hash:
type: string
format: byte
title: consensus info
proposer_address:
type: string
format: byte
description: Header defines the structure of a Tendermint block header.
valset:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in
the form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default
use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last
'/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort
or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be
used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of
the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum
self delegation.
description: >-
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.
description: >-
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).
cosmos.staking.v1beta1.Params:
type: object
properties:
unbonding_time:
type: string
description: unbonding_time is the time duration of unbonding.
max_validators:
type: integer
format: int64
description: max_validators is the maximum number of validators.
max_entries:
type: integer
format: int64
description: >-
max_entries is the max entries for either unbonding delegation or
redelegation (per pair/trio).
historical_entries:
type: integer
format: int64
description: historical_entries is the number of historical entries to persist.
bond_denom:
type: string
description: bond_denom defines the bondable coin denomination.
description: Params defines the parameters for the staking module.
cosmos.staking.v1beta1.Pool:
type: object
properties:
not_bonded_tokens:
type: string
bonded_tokens:
type: string
description: |-
Pool is used for tracking bonded and not-bonded token supply of the bond
denomination.
cosmos.staking.v1beta1.QueryDelegationResponse:
type: object
properties:
delegation_response:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that it contains
a
balance in addition to shares which is more suitable for client
responses.
description: >-
QueryDelegationResponse is response type for the Query/Delegation RPC
method.
cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse:
type: object
properties:
delegation_responses:
type: array
items:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that it
contains a
balance in addition to shares which is more suitable for client
responses.
description: delegation_responses defines all the delegations' info of a delegator.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryDelegatorDelegationsResponse is response type for the
Query/DelegatorDelegations RPC method.
cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse:
type: object
properties:
unbonding_responses:
type: array
items:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding took
place.
completion_time:
type: string
format: date-time
description: completion_time is the unix time for unbonding completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially scheduled to
receive at completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object with
relevant metadata.
description: entries are the unbonding delegation entries.
description: >-
UnbondingDelegation stores all of a single delegator's unbonding
bonds
for a single validator in an time-ordered list.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryUnbondingDelegatorDelegationsResponse is response type for the
Query/UnbondingDelegatorDelegations RPC method.
cosmos.staking.v1beta1.QueryDelegatorValidatorResponse:
type: object
properties:
validator:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's operator;
bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might
be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort or
Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be
used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of the
validator commission, as a fraction.
update_time:
type: string
format: date-time
description: update_time is the last time the commission rate was changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum self
delegation.
description: >-
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.
description: |-
QueryDelegatorValidatorResponse response type for the
Query/DelegatorValidator RPC method.
cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse:
type: object
properties:
validators:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in
the form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default
use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last
'/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort
or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be
used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of
the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum
self delegation.
description: >-
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.
description: validators defines the the validators' info of a delegator.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryDelegatorValidatorsResponse is response type for the
Query/DelegatorValidators RPC method.
cosmos.staking.v1beta1.QueryHistoricalInfoResponse:
type: object
properties:
hist:
description: hist defines the historical info at the given height.
type: object
properties:
header:
type: object
properties:
version:
title: basic block info
type: object
properties:
block:
type: string
format: uint64
app:
type: string
format: uint64
description: >-
Consensus captures the consensus rules for processing a block
in the blockchain,
including all blockchain data structures and the rules of the
application's
state transition machine.
chain_id:
type: string
height:
type: string
format: int64
time:
type: string
format: date-time
last_block_id:
title: prev block info
type: object
properties:
hash:
type: string
format: byte
part_set_header:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
last_commit_hash:
type: string
format: byte
title: hashes of block data
data_hash:
type: string
format: byte
validators_hash:
type: string
format: byte
title: hashes from the app output from the prev block
next_validators_hash:
type: string
format: byte
consensus_hash:
type: string
format: byte
app_hash:
type: string
format: byte
last_results_hash:
type: string
format: byte
evidence_hash:
type: string
format: byte
title: consensus info
proposer_address:
type: string
format: byte
description: Header defines the structure of a Tendermint block header.
valset:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of
the serialized
protocol buffer message. This string must contain at
least
one "/" character. The last segment of the URL's path
must represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in
a canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary
all types that they
expect it to use in the context of Any. However, for
URLs which use the
scheme `http`, `https`, or no scheme, one can optionally
set up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based
on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in
the official
protobuf release, and it is not used for type URLs
beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer
message along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values
in the form
of utility functions or additional generated methods of the
Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by
default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the
last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield
type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with
an
additional field `@type` which contains the type URL.
Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom
JSON
representation, that representation will be embedded adding
a field
`value` which holds the custom JSON in addition to the
`@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from
bonded status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a
validator's delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex.
UPort or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which
this validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to
be used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators,
as a fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase
of the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum
self delegation.
description: >-
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.
description: >-
QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo
RPC
method.
cosmos.staking.v1beta1.QueryParamsResponse:
type: object
properties:
params:
description: params holds all the parameters of this module.
type: object
properties:
unbonding_time:
type: string
description: unbonding_time is the time duration of unbonding.
max_validators:
type: integer
format: int64
description: max_validators is the maximum number of validators.
max_entries:
type: integer
format: int64
description: >-
max_entries is the max entries for either unbonding delegation or
redelegation (per pair/trio).
historical_entries:
type: integer
format: int64
description: historical_entries is the number of historical entries to persist.
bond_denom:
type: string
description: bond_denom defines the bondable coin denomination.
description: QueryParamsResponse is response type for the Query/Params RPC method.
cosmos.staking.v1beta1.QueryPoolResponse:
type: object
properties:
pool:
description: pool defines the pool info.
type: object
properties:
not_bonded_tokens:
type: string
bonded_tokens:
type: string
description: QueryPoolResponse is response type for the Query/Pool RPC method.
cosmos.staking.v1beta1.QueryRedelegationsResponse:
type: object
properties:
redelegation_responses:
type: array
items:
type: object
properties:
redelegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_src_address:
type: string
description: >-
validator_src_address is the validator redelegation source
operator address.
validator_dst_address:
type: string
description: >-
validator_dst_address is the validator redelegation
destination operator address.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the
redelegation took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for redelegation
completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when
redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator
shares created by redelegation.
description: >-
RedelegationEntry defines a redelegation object with
relevant metadata.
description: entries are the redelegation entries.
description: >-
Redelegation contains the list of a particular delegator's
redelegating bonds
from a particular source validator to a particular destination
validator.
entries:
type: array
items:
type: object
properties:
redelegation_entry:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the
redelegation took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for redelegation
completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when
redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator
shares created by redelegation.
description: >-
RedelegationEntry defines a redelegation object with
relevant metadata.
balance:
type: string
description: >-
RedelegationEntryResponse is equivalent to a RedelegationEntry
except that it
contains a balance in addition to shares which is more
suitable for client
responses.
description: >-
RedelegationResponse is equivalent to a Redelegation except that its
entries
contain a balance in addition to shares which is more suitable for
client
responses.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: >-
QueryRedelegationsResponse is response type for the Query/Redelegations
RPC
method.
cosmos.staking.v1beta1.QueryUnbondingDelegationResponse:
type: object
properties:
unbond:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_address:
type: string
description: validator_address is the bech32-encoded address of the validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding took
place.
completion_time:
type: string
format: date-time
description: completion_time is the unix time for unbonding completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially scheduled to
receive at completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object with
relevant metadata.
description: entries are the unbonding delegation entries.
description: |-
UnbondingDelegation stores all of a single delegator's unbonding bonds
for a single validator in an time-ordered list.
description: |-
QueryDelegationResponse is response type for the Query/UnbondingDelegation
RPC method.
cosmos.staking.v1beta1.QueryValidatorDelegationsResponse:
type: object
properties:
delegation_responses:
type: array
items:
type: object
properties:
delegation:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
shares:
type: string
description: shares define the delegation shares received.
description: >-
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.
balance:
type: object
properties:
denom:
type: string
amount:
type: string
description: >-
Coin defines a token with a denomination and an amount.
NOTE: The amount field is an Int which implements the custom
method
signatures required by gogoproto.
description: >-
DelegationResponse is equivalent to Delegation except that it
contains a
balance in addition to shares which is more suitable for client
responses.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: |-
QueryValidatorDelegationsResponse is response type for the
Query/ValidatorDelegations RPC method
cosmos.staking.v1beta1.QueryValidatorResponse:
type: object
properties:
validator:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's operator;
bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might
be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort or
Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be
used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of the
validator commission, as a fraction.
update_time:
type: string
format: date-time
description: update_time is the last time the commission rate was changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum self
delegation.
description: >-
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.
title: QueryValidatorResponse is response type for the Query/Validator RPC method
cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse:
type: object
properties:
unbonding_responses:
type: array
items:
type: object
properties:
delegator_address:
type: string
description: >-
delegator_address is the bech32-encoded address of the
delegator.
validator_address:
type: string
description: >-
validator_address is the bech32-encoded address of the
validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height is the height which the unbonding took
place.
completion_time:
type: string
format: date-time
description: completion_time is the unix time for unbonding completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially scheduled to
receive at completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object with
relevant metadata.
description: entries are the unbonding delegation entries.
description: >-
UnbondingDelegation stores all of a single delegator's unbonding
bonds
for a single validator in an time-ordered list.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
description: |-
QueryValidatorUnbondingDelegationsResponse is response type for the
Query/ValidatorUnbondingDelegations RPC method.
cosmos.staking.v1beta1.QueryValidatorsResponse:
type: object
properties:
validators:
type: array
items:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's
operator; bech encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all
types that they
expect it to use in the context of Any. However, for URLs
which use the
scheme `http`, `https`, or no scheme, one can optionally set
up a type
server that maps type URLs to message definitions as
follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a
[google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on
the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning
with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme)
might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above
specified type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message
along with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in
the form
of utility functions or additional generated methods of the Any
type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default
use
'type.googleapis.com/full.type.name' as the type URL and the
unpack
methods only use the fully qualified type name after the last
'/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a
field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort
or Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: >-
security_contact defines an optional email for security
contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the
validator to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be
used for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which
validator can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of
the validator commission, as a fraction.
update_time:
type: string
format: date-time
description: >-
update_time is the last time the commission rate was
changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum
self delegation.
description: >-
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.
description: validators contains all the queried validators.
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryValidatorsResponse is response type for the Query/Validators RPC
method
cosmos.staking.v1beta1.Redelegation:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_src_address:
type: string
description: >-
validator_src_address is the validator redelegation source operator
address.
validator_dst_address:
type: string
description: >-
validator_dst_address is the validator redelegation destination
operator address.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the redelegation took
place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for redelegation
completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when redelegation
started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator shares created
by redelegation.
description: >-
RedelegationEntry defines a redelegation object with relevant
metadata.
description: entries are the redelegation entries.
description: >-
Redelegation contains the list of a particular delegator's redelegating
bonds
from a particular source validator to a particular destination validator.
cosmos.staking.v1beta1.RedelegationEntry:
type: object
properties:
creation_height:
type: string
format: int64
description: creation_height defines the height which the redelegation took place.
completion_time:
type: string
format: date-time
description: completion_time defines the unix time for redelegation completion.
initial_balance:
type: string
description: initial_balance defines the initial balance when redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator shares created by
redelegation.
description: RedelegationEntry defines a redelegation object with relevant metadata.
cosmos.staking.v1beta1.RedelegationEntryResponse:
type: object
properties:
redelegation_entry:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the redelegation took
place.
completion_time:
type: string
format: date-time
description: completion_time defines the unix time for redelegation completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when redelegation
started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator shares created
by redelegation.
description: >-
RedelegationEntry defines a redelegation object with relevant
metadata.
balance:
type: string
description: >-
RedelegationEntryResponse is equivalent to a RedelegationEntry except that
it
contains a balance in addition to shares which is more suitable for client
responses.
cosmos.staking.v1beta1.RedelegationResponse:
type: object
properties:
redelegation:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_src_address:
type: string
description: >-
validator_src_address is the validator redelegation source
operator address.
validator_dst_address:
type: string
description: >-
validator_dst_address is the validator redelegation destination
operator address.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the redelegation
took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for redelegation
completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when
redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator shares
created by redelegation.
description: >-
RedelegationEntry defines a redelegation object with relevant
metadata.
description: entries are the redelegation entries.
description: >-
Redelegation contains the list of a particular delegator's
redelegating bonds
from a particular source validator to a particular destination
validator.
entries:
type: array
items:
type: object
properties:
redelegation_entry:
type: object
properties:
creation_height:
type: string
format: int64
description: >-
creation_height defines the height which the redelegation
took place.
completion_time:
type: string
format: date-time
description: >-
completion_time defines the unix time for redelegation
completion.
initial_balance:
type: string
description: >-
initial_balance defines the initial balance when
redelegation started.
shares_dst:
type: string
description: >-
shares_dst is the amount of destination-validator shares
created by redelegation.
description: >-
RedelegationEntry defines a redelegation object with relevant
metadata.
balance:
type: string
description: >-
RedelegationEntryResponse is equivalent to a RedelegationEntry
except that it
contains a balance in addition to shares which is more suitable for
client
responses.
description: >-
RedelegationResponse is equivalent to a Redelegation except that its
entries
contain a balance in addition to shares which is more suitable for client
responses.
cosmos.staking.v1beta1.UnbondingDelegation:
type: object
properties:
delegator_address:
type: string
description: delegator_address is the bech32-encoded address of the delegator.
validator_address:
type: string
description: validator_address is the bech32-encoded address of the validator.
entries:
type: array
items:
type: object
properties:
creation_height:
type: string
format: int64
description: creation_height is the height which the unbonding took place.
completion_time:
type: string
format: date-time
description: completion_time is the unix time for unbonding completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially scheduled to
receive at completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object with relevant
metadata.
description: entries are the unbonding delegation entries.
description: |-
UnbondingDelegation stores all of a single delegator's unbonding bonds
for a single validator in an time-ordered list.
cosmos.staking.v1beta1.UnbondingDelegationEntry:
type: object
properties:
creation_height:
type: string
format: int64
description: creation_height is the height which the unbonding took place.
completion_time:
type: string
format: date-time
description: completion_time is the unix time for unbonding completion.
initial_balance:
type: string
description: >-
initial_balance defines the tokens initially scheduled to receive at
completion.
balance:
type: string
description: balance defines the tokens to receive at completion.
description: >-
UnbondingDelegationEntry defines an unbonding object with relevant
metadata.
cosmos.staking.v1beta1.Validator:
type: object
properties:
operator_address:
type: string
description: >-
operator_address defines the address of the validator's operator; bech
encoded in JSON.
consensus_pubkey:
type: object
properties:
type_url:
type: string
description: >-
A URL/resource name that uniquely identifies the type of the
serialized
protocol buffer message. This string must contain at least
one "/" character. The last segment of the URL's path must
represent
the fully qualified name of the type (as in
`path/google.protobuf.Duration`). The name should be in a
canonical form
(e.g., leading "." is not accepted).
In practice, teams usually precompile into the binary all types
that they
expect it to use in the context of Any. However, for URLs which
use the
scheme `http`, `https`, or no scheme, one can optionally set up a
type
server that maps type URLs to message definitions as follows:
* If no scheme is provided, `https` is assumed.
* An HTTP GET on the URL must yield a [google.protobuf.Type][]
value in binary format, or produce an error.
* Applications are allowed to cache lookup results based on the
URL, or have them precompiled into a binary to avoid any
lookup. Therefore, binary compatibility needs to be preserved
on changes to types. (Use versioned type names to manage
breaking changes.)
Note: this functionality is not currently available in the
official
protobuf release, and it is not used for type URLs beginning with
type.googleapis.com.
Schemes other than `http`, `https` (or the empty scheme) might be
used with implementation specific semantics.
value:
type: string
format: byte
description: >-
Must be a valid serialized protocol buffer of the above specified
type.
description: >-
`Any` contains an arbitrary serialized protocol buffer message along
with a
URL that describes the type of the serialized message.
Protobuf library provides support to pack/unpack Any values in the
form
of utility functions or additional generated methods of the Any type.
Example 1: Pack and unpack a message in C++.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
Example 2: Pack and unpack a message in Java.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := ptypes.MarshalAny(foo)
...
foo := &pb.Foo{}
if err := ptypes.UnmarshalAny(any, foo); err != nil {
...
}
The pack methods provided by protobuf library will by default use
'type.googleapis.com/full.type.name' as the type URL and the unpack
methods only use the fully qualified type name after the last '/'
in the type URL, for example "foo.bar.com/x/y.z" will yield type
name "y.z".
JSON
====
The JSON representation of an `Any` value uses the regular
representation of the deserialized, embedded message, with an
additional field `@type` which contains the type URL. Example:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
If the embedded message type is well-known and has a custom JSON
representation, that representation will be embedded adding a field
`value` which holds the custom JSON in addition to the `@type`
field. Example (for message [google.protobuf.Duration][]):
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
jailed:
type: boolean
description: >-
jailed defined whether the validator has been jailed from bonded
status or not.
status:
description: status is the validator status (bonded/unbonding/unbonded).
type: string
enum:
- BOND_STATUS_UNSPECIFIED
- BOND_STATUS_UNBONDED
- BOND_STATUS_UNBONDING
- BOND_STATUS_BONDED
default: BOND_STATUS_UNSPECIFIED
tokens:
type: string
description: tokens define the delegated tokens (incl. self-delegation).
delegator_shares:
type: string
description: >-
delegator_shares defines total shares issued to a validator's
delegators.
description:
description: description defines the description terms for the validator.
type: object
properties:
moniker:
type: string
description: moniker defines a human-readable name for the validator.
identity:
type: string
description: >-
identity defines an optional identity signature (ex. UPort or
Keybase).
website:
type: string
description: website defines an optional website link.
security_contact:
type: string
description: security_contact defines an optional email for security contact.
details:
type: string
description: details define other optional details.
unbonding_height:
type: string
format: int64
description: >-
unbonding_height defines, if unbonding, the height at which this
validator has begun unbonding.
unbonding_time:
type: string
format: date-time
description: >-
unbonding_time defines, if unbonding, the min time for the validator
to complete unbonding.
commission:
description: commission defines the commission parameters.
type: object
properties:
commission_rates:
description: >-
commission_rates defines the initial commission rates to be used
for creating a validator.
type: object
properties:
rate:
type: string
description: >-
rate is the commission rate charged to delegators, as a
fraction.
max_rate:
type: string
description: >-
max_rate defines the maximum commission rate which validator
can ever charge, as a fraction.
max_change_rate:
type: string
description: >-
max_change_rate defines the maximum daily increase of the
validator commission, as a fraction.
update_time:
type: string
format: date-time
description: update_time is the last time the commission rate was changed.
min_self_delegation:
type: string
description: >-
min_self_delegation is the validator's self declared minimum self
delegation.
description: >-
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.
tendermint.types.BlockID:
type: object
properties:
hash:
type: string
format: byte
part_set_header:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
title: BlockID
tendermint.types.Header:
type: object
properties:
version:
title: basic block info
type: object
properties:
block:
type: string
format: uint64
app:
type: string
format: uint64
description: >-
Consensus captures the consensus rules for processing a block in the
blockchain,
including all blockchain data structures and the rules of the
application's
state transition machine.
chain_id:
type: string
height:
type: string
format: int64
time:
type: string
format: date-time
last_block_id:
title: prev block info
type: object
properties:
hash:
type: string
format: byte
part_set_header:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
last_commit_hash:
type: string
format: byte
title: hashes of block data
data_hash:
type: string
format: byte
validators_hash:
type: string
format: byte
title: hashes from the app output from the prev block
next_validators_hash:
type: string
format: byte
consensus_hash:
type: string
format: byte
app_hash:
type: string
format: byte
last_results_hash:
type: string
format: byte
evidence_hash:
type: string
format: byte
title: consensus info
proposer_address:
type: string
format: byte
description: Header defines the structure of a Tendermint block header.
tendermint.types.PartSetHeader:
type: object
properties:
total:
type: integer
format: int64
hash:
type: string
format: byte
title: PartsetHeader
tendermint.version.Consensus:
type: object
properties:
block:
type: string
format: uint64
app:
type: string
format: uint64
description: >-
Consensus captures the consensus rules for processing a block in the
blockchain,
including all blockchain data structures and the rules of the
application's
state transition machine.
=======
>>>>>>> v0.20.0