gRPC
Cosmos Hub (ATOM) gRPC API
NOWNodes provides access to the Cosmos Hub gRPC API. Cosmos Hub is built with Gaia, Cosmos SDK and IBC-Go, so the endpoint exposes protobuf query services for chain state, accounts, balances, staking, governance, transactions and IBC.
Endpoint
atom-grpc.nownodes.ioAuthentication
api-key: YOUR_API_KEYProto repositories
https://github.com/cosmos/gaiahttps://github.com/cosmos/cosmos-sdkhttps://github.com/cosmos/ibc-gohttps://github.com/cometbft/cometbftRelevant proto/API directories
https://github.com/cosmos/gaia/tree/main/protohttps://github.com/cosmos/cosmos-sdk/tree/main/protohttps://github.com/cosmos/cosmos-sdk/tree/main/apihttps://github.com/cosmos/ibc-go/tree/main/protohttps://github.com/cometbft/cometbft/tree/main/protoClone
git clone https://github.com/cosmos/gaia.git
git clone https://github.com/cosmos/cosmos-sdk.git
git clone https://github.com/cosmos/ibc-go.git
git clone https://github.com/cometbft/cometbft.gitUse dependency versions referenced by the Gaia release deployed on the server.
Discover available services
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
'atom-grpc.nownodes.io' \list
Describe a service
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
'atom-grpc.nownodes.io' \describe cosmos.bank.v1beta1.Query
Describe one method
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
'atom-grpc.nownodes.io' \describe cosmos.bank.v1beta1.Query.Balance
General request syntax
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d 'REQUEST_JSON' \
'atom-grpc.nownodes.io' \ SERVICE/METHODAll response examples are representative protobuf JSON. Amounts, heights, timestamps, hashes, pagination values and module parameters vary by request and chain state.
cosmos.base.tendermint.v1beta1.Service
Node, block, validator-set and ABCI queries.
Methods
GetNodeInfo
Full method
cosmos.base.tendermint.v1beta1.Service/GetNodeInfoRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetNodeInfoExample response
{
"defaultNodeInfo": {
"protocolVersion": {
"p2p": "8",
"block": "11",
"app": "0"
},
"defaultNodeId": "NODE_ID",
"network": "cosmoshub-4",
"version": "0.38.x",
"moniker": "node"
},
"applicationVersion": {
"name": "gaia",
"appName": "gaiad",
"version": "vXX.X.X",
"cosmosSdkVersion": "v0.53.x"
}
}GetSyncing
Full method
cosmos.base.tendermint.v1beta1.Service/GetSyncingRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetSyncingExample response
{
"syncing": false
}GetLatestBlock
Full method
cosmos.base.tendermint.v1beta1.Service/GetLatestBlockRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetLatestBlockExample response
{
"sdkBlock": {
"header": {
"chainId": "cosmoshub-4",
"height": "25000000",
"time": "2026-07-15T08:00:00Z"
},
"data": {
"txs": []
}
}
}GetBlockByHeight
Full method
cosmos.base.tendermint.v1beta1.Service/GetBlockByHeightRequest
{
"height": "25000000"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"height":"25000000"}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetBlockByHeightExample response
{
"sdkBlock": {
"header": {
"chainId": "cosmoshub-4",
"height": "25000000",
"time": "2026-07-15T08:00:00Z"
},
"data": {
"txs": []
}
}
}GetLatestValidatorSet
Full method
cosmos.base.tendermint.v1beta1.Service/GetLatestValidatorSetRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetLatestValidatorSetExample response
{
"validators": [
{
"address": "BASE64_CONSENSUS_ADDRESS",
"pubKey": {
"@type": "/cosmos.crypto.ed25519.PubKey",
"key": "BASE64_KEY"
},
"votingPower": "1000000",
"proposerPriority": "0"
}
],
"pagination": {
"nextKey": "",
"total": "1"
},
"blockHeight": "25000000"
}GetValidatorSetByHeight
Full method
cosmos.base.tendermint.v1beta1.Service/GetValidatorSetByHeightRequest
{
"height": "25000000",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"height":"25000000","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetValidatorSetByHeightExample response
{
"validators": [
{
"address": "BASE64_CONSENSUS_ADDRESS",
"pubKey": {
"@type": "/cosmos.crypto.ed25519.PubKey",
"key": "BASE64_KEY"
},
"votingPower": "1000000",
"proposerPriority": "0"
}
],
"pagination": {
"nextKey": "",
"total": "1"
},
"blockHeight": "25000000"
}ABCIQuery
Full method
cosmos.base.tendermint.v1beta1.Service/ABCIQueryRequest
{
"path": "/store/bank/key",
"data": "BASE64_QUERY_DATA",
"height": "0",
"prove": false
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"path":"/store/bank/key","data":"BASE64_QUERY_DATA","height":"0","prove":false}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/ABCIQueryExample response
{
"code": 0,
"log": "",
"info": "",
"index": "0",
"key": "BASE64_KEY",
"value": "BASE64_VALUE",
"proofOps": null,
"height": "25000000",
"codespace": ""
}GetLatestBlockResults
Full method
cosmos.base.tendermint.v1beta1.Service/GetLatestBlockResultsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetLatestBlockResultsExample response
{
"height": "25000000",
"txResults": [],
"finalizeBlockEvents": [],
"validatorUpdates": [],
"consensusParamUpdates": null
}GetBlockResults
Full method
cosmos.base.tendermint.v1beta1.Service/GetBlockResultsRequest
{
"height": "25000000"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"height":"25000000"}' \
'atom-grpc.nownodes.io' \
cosmos.base.tendermint.v1beta1.Service/GetBlockResultsExample response
{
"height": "25000000",
"txResults": [],
"finalizeBlockEvents": [],
"validatorUpdates": [],
"consensusParamUpdates": null
}cosmos.auth.v1beta1.Query
Accounts and authentication parameters.
Methods
Accounts
Full method
cosmos.auth.v1beta1.Query/AccountsRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AccountsExample response
{
"accounts": [
{
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "cosmos1ADDRESS",
"pubKey": null,
"accountNumber": "1",
"sequence": "0"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}Account
Full method
cosmos.auth.v1beta1.Query/AccountRequest
{
"address": "cosmos1ADDRESS"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AccountExample response
{
"account": {
"@type": "/cosmos.auth.v1beta1.BaseAccount",
"address": "cosmos1ADDRESS",
"pubKey": null,
"accountNumber": "1",
"sequence": "0"
}
}AccountAddressByID
Full method
cosmos.auth.v1beta1.Query/AccountAddressByIDRequest
{
"id": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"id":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AccountAddressByIDExample response
{
"accountAddress": "cosmos1ADDRESS"
}Params
Full method
cosmos.auth.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/ParamsExample response
{
"params": {
"maxMemoCharacters": "256",
"txSigLimit": "7",
"txSizeCostPerByte": "10",
"sigVerifyCostEd25519": "590",
"sigVerifyCostSecp256k1": "1000"
}
}ModuleAccounts
Full method
cosmos.auth.v1beta1.Query/ModuleAccountsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/ModuleAccountsExample response
{
"accounts": [
{
"@type": "/cosmos.auth.v1beta1.ModuleAccount",
"baseAccount": {
"address": "cosmos1MODULE",
"accountNumber": "0",
"sequence": "0"
},
"name": "distribution",
"permissions": []
}
]
}ModuleAccountByName
Full method
cosmos.auth.v1beta1.Query/ModuleAccountByNameRequest
{
"name": "distribution"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"name":"distribution"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/ModuleAccountByNameExample response
{
"account": {
"@type": "/cosmos.auth.v1beta1.ModuleAccount",
"baseAccount": {
"address": "cosmos1MODULE"
},
"name": "distribution",
"permissions": []
}
}Bech32Prefix
Full method
cosmos.auth.v1beta1.Query/Bech32PrefixRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/Bech32PrefixExample response
{
"bech32Prefix": "cosmos"
}AddressBytesToString
Full method
cosmos.auth.v1beta1.Query/AddressBytesToStringRequest
{
"addressBytes": "BASE64_ADDRESS_BYTES"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"addressBytes":"BASE64_ADDRESS_BYTES"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AddressBytesToStringExample response
{
"addressString": "cosmos1ADDRESS"
}AddressStringToBytes
Full method
cosmos.auth.v1beta1.Query/AddressStringToBytesRequest
{
"addressString": "cosmos1ADDRESS"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"addressString":"cosmos1ADDRESS"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AddressStringToBytesExample response
{
"addressBytes": "BASE64_ADDRESS_BYTES"
}AccountInfo
Full method
cosmos.auth.v1beta1.Query/AccountInfoRequest
{
"address": "cosmos1ADDRESS"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS"}' \
'atom-grpc.nownodes.io' \
cosmos.auth.v1beta1.Query/AccountInfoExample response
{
"info": {
"address": "cosmos1ADDRESS",
"pubKey": null,
"accountNumber": "1",
"sequence": "0"
}
}cosmos.authz.v1beta1.Query
Authorization grants.
Methods
Grants
Full method
cosmos.authz.v1beta1.Query/GrantsRequest
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"msgTypeUrl": "/cosmos.bank.v1beta1.MsgSend"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"granter":"cosmos1GRANTER","grantee":"cosmos1GRANTEE","msgTypeUrl":"/cosmos.bank.v1beta1.MsgSend"}' \
'atom-grpc.nownodes.io' \
cosmos.authz.v1beta1.Query/GrantsExample response
{
"grants": [
{
"authorization": {
"@type": "/cosmos.authz.v1beta1.GenericAuthorization",
"msg": "/cosmos.bank.v1beta1.MsgSend"
},
"expiration": "2027-01-01T00:00:00Z"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}GranterGrants
Full method
cosmos.authz.v1beta1.Query/GranterGrantsRequest
{
"granter": "cosmos1GRANTER",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"granter":"cosmos1GRANTER","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.authz.v1beta1.Query/GranterGrantsExample response
{
"grants": [
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"authorization": {
"@type": "/cosmos.authz.v1beta1.GenericAuthorization",
"msg": "/cosmos.bank.v1beta1.MsgSend"
},
"expiration": "2027-01-01T00:00:00Z"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}GranteeGrants
Full method
cosmos.authz.v1beta1.Query/GranteeGrantsRequest
{
"grantee": "cosmos1GRANTEE",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"grantee":"cosmos1GRANTEE","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.authz.v1beta1.Query/GranteeGrantsExample response
{
"grants": [
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"authorization": {
"@type": "/cosmos.authz.v1beta1.GenericAuthorization",
"msg": "/cosmos.bank.v1beta1.MsgSend"
},
"expiration": "2027-01-01T00:00:00Z"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}cosmos.bank.v1beta1.Query
Balances, supply and denomination metadata.
Methods
Balance
Full method
cosmos.bank.v1beta1.Query/BalanceRequest
{
"address": "cosmos1ADDRESS",
"denom": "uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS","denom":"uatom"}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/BalanceExample response
{
"balance": {
"denom": "uatom",
"amount": "1234567"
}
}AllBalances
Full method
cosmos.bank.v1beta1.Query/AllBalancesRequest
{
"address": "cosmos1ADDRESS",
"pagination": {
"limit": "100"
},
"resolveDenom": false
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS","pagination":{"limit":"100"},"resolveDenom":false}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/AllBalancesExample response
{
"balances": [
{
"denom": "uatom",
"amount": "1234567"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}SpendableBalances
Full method
cosmos.bank.v1beta1.Query/SpendableBalancesRequest
{
"address": "cosmos1ADDRESS",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/SpendableBalancesExample response
{
"balances": [
{
"denom": "uatom",
"amount": "1200000"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}SpendableBalanceByDenom
Full method
cosmos.bank.v1beta1.Query/SpendableBalanceByDenomRequest
{
"address": "cosmos1ADDRESS",
"denom": "uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1ADDRESS","denom":"uatom"}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/SpendableBalanceByDenomExample response
{
"balance": {
"denom": "uatom",
"amount": "1200000"
}
}TotalSupply
Full method
cosmos.bank.v1beta1.Query/TotalSupplyRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/TotalSupplyExample response
{
"supply": [
{
"denom": "uatom",
"amount": "390000000000000"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}SupplyOf
Full method
cosmos.bank.v1beta1.Query/SupplyOfRequest
{
"denom": "uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denom":"uatom"}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/SupplyOfExample response
{
"amount": {
"denom": "uatom",
"amount": "390000000000000"
}
}Params
Full method
cosmos.bank.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/ParamsExample response
{
"params": {
"sendEnabled": [],
"defaultSendEnabled": true
}
}DenomMetadata
Full method
cosmos.bank.v1beta1.Query/DenomMetadataRequest
{
"denom": "uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denom":"uatom"}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/DenomMetadataExample response
{
"metadata": {
"description": "The native staking token of Cosmos Hub",
"denomUnits": [
{
"denom": "uatom",
"exponent": 0
},
{
"denom": "atom",
"exponent": 6
}
],
"base": "uatom",
"display": "atom",
"name": "Cosmos Hub Atom",
"symbol": "ATOM"
}
}DenomsMetadata
Full method
cosmos.bank.v1beta1.Query/DenomsMetadataRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/DenomsMetadataExample response
{
"metadatas": [
{
"base": "uatom",
"display": "atom",
"name": "Cosmos Hub Atom",
"symbol": "ATOM",
"denomUnits": [
{
"denom": "uatom",
"exponent": 0
},
{
"denom": "atom",
"exponent": 6
}
]
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}DenomOwners
Full method
cosmos.bank.v1beta1.Query/DenomOwnersRequest
{
"denom": "uatom",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denom":"uatom","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/DenomOwnersExample response
{
"denomOwners": [
{
"address": "cosmos1ADDRESS",
"balance": {
"denom": "uatom",
"amount": "1234567"
}
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}DenomOwnersByQuery
Full method
cosmos.bank.v1beta1.Query/DenomOwnersByQueryRequest
{
"denom": "uatom",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denom":"uatom","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/DenomOwnersByQueryExample response
{
"denomOwners": [
{
"address": "cosmos1ADDRESS",
"balance": {
"denom": "uatom",
"amount": "1234567"
}
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}SendEnabled
Full method
cosmos.bank.v1beta1.Query/SendEnabledRequest
{
"denoms": [
"uatom"
],
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denoms":["uatom"],"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/SendEnabledExample response
{
"sendEnabled": [
{
"denom": "uatom",
"enabled": true
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}cosmos.consensus.v1.Query
Consensus parameters.
Methods
Params
Full method
cosmos.consensus.v1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.consensus.v1.Query/ParamsExample response
{
"params": {
"block": {
"maxBytes": "22020096",
"maxGas": "-1"
},
"evidence": {
"maxAgeNumBlocks": "100000",
"maxAgeDuration": "172800s",
"maxBytes": "1048576"
},
"validator": {
"pubKeyTypes": [
"ed25519"
]
},
"version": {
"app": "0"
},
"abci": {
"voteExtensionsEnableHeight": "0"
}
}
}cosmos.distribution.v1beta1.Query
Rewards, commissions and community pool.
Methods
Params
Full method
cosmos.distribution.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/ParamsExample response
{
"params": {
"communityTax": "0.020000000000000000",
"baseProposerReward": "0.000000000000000000",
"bonusProposerReward": "0.000000000000000000",
"withdrawAddrEnabled": true
}
}ValidatorOutstandingRewards
Full method
cosmos.distribution.v1beta1.Query/ValidatorOutstandingRewardsRequest
{
"validatorAddress": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddress":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/ValidatorOutstandingRewardsExample response
{
"rewards": {
"rewards": [
{
"denom": "uatom",
"amount": "123.450000000000000000"
}
]
}
}ValidatorCommission
Full method
cosmos.distribution.v1beta1.Query/ValidatorCommissionRequest
{
"validatorAddress": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddress":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/ValidatorCommissionExample response
{
"commission": {
"commission": [
{
"denom": "uatom",
"amount": "12.340000000000000000"
}
]
}
}ValidatorSlashes
Full method
cosmos.distribution.v1beta1.Query/ValidatorSlashesRequest
{
"validatorAddress": "cosmosvaloper1VALIDATOR",
"startingHeight": "1",
"endingHeight": "25000000",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddress":"cosmosvaloper1VALIDATOR","startingHeight":"1","endingHeight":"25000000","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/ValidatorSlashesExample response
{
"slashes": [
{
"validatorPeriod": "1",
"fraction": "0.010000000000000000"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}DelegationRewards
Full method
cosmos.distribution.v1beta1.Query/DelegationRewardsRequest
{
"delegatorAddress": "cosmos1DELEGATOR",
"validatorAddress": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddress":"cosmos1DELEGATOR","validatorAddress":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/DelegationRewardsExample response
{
"rewards": [
{
"denom": "uatom",
"amount": "10.500000000000000000"
}
]
}DelegationTotalRewards
Full method
cosmos.distribution.v1beta1.Query/DelegationTotalRewardsRequest
{
"delegatorAddress": "cosmos1DELEGATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddress":"cosmos1DELEGATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/DelegationTotalRewardsExample response
{
"rewards": [
{
"validatorAddress": "cosmosvaloper1VALIDATOR",
"reward": [
{
"denom": "uatom",
"amount": "10.500000000000000000"
}
]
}
],
"total": [
{
"denom": "uatom",
"amount": "10.500000000000000000"
}
]
}DelegatorValidators
Full method
cosmos.distribution.v1beta1.Query/DelegatorValidatorsRequest
{
"delegatorAddress": "cosmos1DELEGATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddress":"cosmos1DELEGATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/DelegatorValidatorsExample response
{
"validators": [
"cosmosvaloper1VALIDATOR"
]
}DelegatorWithdrawAddress
Full method
cosmos.distribution.v1beta1.Query/DelegatorWithdrawAddressRequest
{
"delegatorAddress": "cosmos1DELEGATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddress":"cosmos1DELEGATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/DelegatorWithdrawAddressExample response
{
"withdrawAddress": "cosmos1WITHDRAW"
}CommunityPool
Full method
cosmos.distribution.v1beta1.Query/CommunityPoolRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.distribution.v1beta1.Query/CommunityPoolExample response
{
"pool": [
{
"denom": "uatom",
"amount": "1000000.000000000000000000"
}
]
}cosmos.evidence.v1beta1.Query
Submitted evidence.
Methods
Evidence
Full method
cosmos.evidence.v1beta1.Query/EvidenceRequest
{
"evidenceHash": "BASE64_EVIDENCE_HASH"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"evidenceHash":"BASE64_EVIDENCE_HASH"}' \
'atom-grpc.nownodes.io' \
cosmos.evidence.v1beta1.Query/EvidenceExample response
{
"evidence": {
"@type": "/cosmos.evidence.v1beta1.Equivocation",
"height": "100",
"time": "2026-01-01T00:00:00Z",
"power": "1000",
"consensusAddress": "cosmosvalcons1ADDRESS"
}
}AllEvidence
Full method
cosmos.evidence.v1beta1.Query/AllEvidenceRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.evidence.v1beta1.Query/AllEvidenceExample response
{
"evidence": [
{
"@type": "/cosmos.evidence.v1beta1.Equivocation",
"height": "100",
"power": "1000",
"consensusAddress": "cosmosvalcons1ADDRESS"
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}cosmos.feegrant.v1beta1.Query
Fee allowances.
Methods
Allowance
Full method
cosmos.feegrant.v1beta1.Query/AllowanceRequest
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"granter":"cosmos1GRANTER","grantee":"cosmos1GRANTEE"}' \
'atom-grpc.nownodes.io' \
cosmos.feegrant.v1beta1.Query/AllowanceExample response
{
"allowance": {
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"allowance": {
"@type": "/cosmos.feegrant.v1beta1.BasicAllowance",
"spendLimit": [
{
"denom": "uatom",
"amount": "1000000"
}
],
"expiration": "2027-01-01T00:00:00Z"
}
}
}Allowances
Full method
cosmos.feegrant.v1beta1.Query/AllowancesRequest
{
"grantee": "cosmos1GRANTEE",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"grantee":"cosmos1GRANTEE","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.feegrant.v1beta1.Query/AllowancesExample response
{
"allowances": [
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"allowance": {
"@type": "/cosmos.feegrant.v1beta1.BasicAllowance",
"spendLimit": [
{
"denom": "uatom",
"amount": "1000000"
}
]
}
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}AllowancesByGranter
Full method
cosmos.feegrant.v1beta1.Query/AllowancesByGranterRequest
{
"granter": "cosmos1GRANTER",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"granter":"cosmos1GRANTER","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.feegrant.v1beta1.Query/AllowancesByGranterExample response
{
"allowances": [
{
"granter": "cosmos1GRANTER",
"grantee": "cosmos1GRANTEE",
"allowance": {
"@type": "/cosmos.feegrant.v1beta1.BasicAllowance"
}
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}cosmos.gov.v1.Query
Governance proposals, votes, deposits and parameters.
Methods
Constitution
Full method
cosmos.gov.v1.Query/ConstitutionRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/ConstitutionExample response
{
"constitution": "Cosmos Hub governance constitution text"
}Proposal
Full method
cosmos.gov.v1.Query/ProposalRequest
{
"proposalId": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/ProposalExample response
{
"proposal": {
"id": "1",
"messages": [],
"status": "PROPOSAL_STATUS_VOTING_PERIOD",
"finalTallyResult": {
"yesCount": "0",
"abstainCount": "0",
"noCount": "0",
"noWithVetoCount": "0"
},
"submitTime": "2026-01-01T00:00:00Z",
"depositEndTime": "2026-01-15T00:00:00Z",
"totalDeposit": [
{
"denom": "uatom",
"amount": "1000000"
}
],
"votingStartTime": "2026-01-02T00:00:00Z",
"votingEndTime": "2026-01-16T00:00:00Z",
"metadata": "",
"title": "Proposal title",
"summary": "Proposal summary",
"proposer": "cosmos1PROPOSER"
}
}Proposals
Full method
cosmos.gov.v1.Query/ProposalsRequest
{
"proposalStatus": "PROPOSAL_STATUS_VOTING_PERIOD",
"voter": "",
"depositor": "",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalStatus":"PROPOSAL_STATUS_VOTING_PERIOD","voter":"","depositor":"","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/ProposalsExample response
{
"proposals": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Vote
Full method
cosmos.gov.v1.Query/VoteRequest
{
"proposalId": "1",
"voter": "cosmos1VOTER"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","voter":"cosmos1VOTER"}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/VoteExample response
{
"vote": {
"proposalId": "1",
"voter": "cosmos1VOTER",
"options": [
{
"option": "VOTE_OPTION_YES",
"weight": "1.000000000000000000"
}
],
"metadata": ""
}
}Votes
Full method
cosmos.gov.v1.Query/VotesRequest
{
"proposalId": "1",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/VotesExample response
{
"votes": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Params
Full method
cosmos.gov.v1.Query/ParamsRequest
{
"paramsType": "voting"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"paramsType":"voting"}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/ParamsExample response
{
"params": {
"minDeposit": [
{
"denom": "uatom",
"amount": "1000000"
}
],
"maxDepositPeriod": "1209600s",
"votingPeriod": "1209600s",
"quorum": "0.400000000000000000",
"threshold": "0.500000000000000000",
"vetoThreshold": "0.334000000000000000",
"minInitialDepositRatio": "0.000000000000000000",
"proposalCancelRatio": "0.500000000000000000",
"proposalCancelDest": "",
"expeditedVotingPeriod": "604800s",
"expeditedThreshold": "0.667000000000000000",
"expeditedMinDeposit": [
{
"denom": "uatom",
"amount": "5000000"
}
]
}
}Deposit
Full method
cosmos.gov.v1.Query/DepositRequest
{
"proposalId": "1",
"depositor": "cosmos1DEPOSITOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","depositor":"cosmos1DEPOSITOR"}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/DepositExample response
{
"deposit": {
"proposalId": "1",
"depositor": "cosmos1DEPOSITOR",
"amount": [
{
"denom": "uatom",
"amount": "1000000"
}
]
}
}Deposits
Full method
cosmos.gov.v1.Query/DepositsRequest
{
"proposalId": "1",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/DepositsExample response
{
"deposits": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}TallyResult
Full method
cosmos.gov.v1.Query/TallyResultRequest
{
"proposalId": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.gov.v1.Query/TallyResultExample response
{
"tally": {
"yesCount": "1000000",
"abstainCount": "0",
"noCount": "0",
"noWithVetoCount": "0"
}
}cosmos.group.v1.Query
Group, policy and group-proposal queries.
Methods
GroupInfo
Full method
cosmos.group.v1.Query/GroupInfoRequest
{
"groupId": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"groupId":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupInfoExample response
{
"info": {
"id": "1",
"admin": "cosmos1ADMIN",
"metadata": "",
"version": "1",
"totalWeight": "1.000000000000000000",
"createdAt": "2026-01-01T00:00:00Z"
}
}GroupPolicyInfo
Full method
cosmos.group.v1.Query/GroupPolicyInfoRequest
{
"address": "cosmos1GROUPPOLICY"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1GROUPPOLICY"}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupPolicyInfoExample response
{
"info": {
"address": "cosmos1GROUPPOLICY",
"groupId": "1",
"admin": "cosmos1ADMIN",
"metadata": "",
"version": "1",
"decisionPolicy": {
"@type": "/cosmos.group.v1.ThresholdDecisionPolicy",
"threshold": "1.000000000000000000",
"windows": {
"votingPeriod": "604800s",
"minExecutionPeriod": "0s"
}
},
"createdAt": "2026-01-01T00:00:00Z"
}
}GroupMembers
Full method
cosmos.group.v1.Query/GroupMembersRequest
{
"groupId": "1",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"groupId":"1","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupMembersExample response
{
"members": [
{
"groupId": "1",
"member": {
"address": "cosmos1MEMBER",
"weight": "1.000000000000000000",
"metadata": "",
"addedAt": "2026-01-01T00:00:00Z"
}
}
],
"pagination": {
"nextKey": "",
"total": "1"
}
}GroupsByAdmin
Full method
cosmos.group.v1.Query/GroupsByAdminRequest
{
"admin": "cosmos1ADMIN",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"admin":"cosmos1ADMIN","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupsByAdminExample response
{
"groups": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}GroupPoliciesByGroup
Full method
cosmos.group.v1.Query/GroupPoliciesByGroupRequest
{
"groupId": "1",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"groupId":"1","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupPoliciesByGroupExample response
{
"groupPolicies": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}GroupPoliciesByAdmin
Full method
cosmos.group.v1.Query/GroupPoliciesByAdminRequest
{
"admin": "cosmos1ADMIN",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"admin":"cosmos1ADMIN","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupPoliciesByAdminExample response
{
"groupPolicies": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Proposal
Full method
cosmos.group.v1.Query/ProposalRequest
{
"proposalId": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/ProposalExample response
{
"proposal": {
"id": "1",
"groupPolicyAddress": "cosmos1GROUPPOLICY",
"metadata": "",
"proposers": [
"cosmos1PROPOSER"
],
"submitTime": "2026-01-01T00:00:00Z",
"groupVersion": "1",
"groupPolicyVersion": "1",
"status": "PROPOSAL_STATUS_SUBMITTED",
"finalTallyResult": {
"yesCount": "0",
"abstainCount": "0",
"noCount": "0",
"noWithVetoCount": "0"
},
"votingPeriodEnd": "2026-01-08T00:00:00Z",
"executorResult": "PROPOSAL_EXECUTOR_RESULT_NOT_RUN",
"messages": [],
"title": "Title",
"summary": "Summary"
}
}ProposalsByGroupPolicy
Full method
cosmos.group.v1.Query/ProposalsByGroupPolicyRequest
{
"address": "cosmos1GROUPPOLICY",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1GROUPPOLICY","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/ProposalsByGroupPolicyExample response
{
"proposals": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}VoteByProposalVoter
Full method
cosmos.group.v1.Query/VoteByProposalVoterRequest
{
"proposalId": "1",
"voter": "cosmos1VOTER"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","voter":"cosmos1VOTER"}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/VoteByProposalVoterExample response
{
"vote": {
"proposalId": "1",
"voter": "cosmos1VOTER",
"option": "VOTE_OPTION_YES",
"metadata": "",
"submitTime": "2026-01-01T00:00:00Z"
}
}VotesByProposal
Full method
cosmos.group.v1.Query/VotesByProposalRequest
{
"proposalId": "1",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/VotesByProposalExample response
{
"votes": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}VotesByVoter
Full method
cosmos.group.v1.Query/VotesByVoterRequest
{
"voter": "cosmos1VOTER",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"voter":"cosmos1VOTER","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/VotesByVoterExample response
{
"votes": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}GroupsByMember
Full method
cosmos.group.v1.Query/GroupsByMemberRequest
{
"address": "cosmos1MEMBER",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"address":"cosmos1MEMBER","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/GroupsByMemberExample response
{
"groups": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}TallyResult
Full method
cosmos.group.v1.Query/TallyResultRequest
{
"proposalId": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"proposalId":"1"}' \
'atom-grpc.nownodes.io' \
cosmos.group.v1.Query/TallyResultExample response
{
"tally": {
"yesCount": "1.000000000000000000",
"abstainCount": "0.000000000000000000",
"noCount": "0.000000000000000000",
"noWithVetoCount": "0.000000000000000000"
}
}cosmos.mint.v1beta1.Query
Mint parameters and inflation.
Methods
Params
Full method
cosmos.mint.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.mint.v1beta1.Query/ParamsExample response
{
"params": {
"mintDenom": "uatom",
"inflationRateChange": "0.130000000000000000",
"inflationMax": "0.200000000000000000",
"inflationMin": "0.070000000000000000",
"goalBonded": "0.670000000000000000",
"blocksPerYear": "6311520"
}
}Inflation
Full method
cosmos.mint.v1beta1.Query/InflationRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.mint.v1beta1.Query/InflationExample response
{
"inflation": "0.100000000000000000"
}AnnualProvisions
Full method
cosmos.mint.v1beta1.Query/AnnualProvisionsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.mint.v1beta1.Query/AnnualProvisionsExample response
{
"annualProvisions": "30000000000000.000000000000000000"
}cosmos.params.v1beta1.Query
Legacy parameter subspace queries.
Methods
Params
Full method
cosmos.params.v1beta1.Query/ParamsRequest
{
"subspace": "staking",
"key": "MaxValidators"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"subspace":"staking","key":"MaxValidators"}' \
'atom-grpc.nownodes.io' \
cosmos.params.v1beta1.Query/ParamsExample response
{
"param": {
"subspace": "staking",
"key": "MaxValidators",
"value": "100"
}
}Subspaces
Full method
cosmos.params.v1beta1.Query/SubspacesRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.params.v1beta1.Query/SubspacesExample response
{
"subspaces": [
{
"subspace": "staking",
"keys": [
"MaxValidators",
"BondDenoms"
]
}
]
}cosmos.slashing.v1beta1.Query
Signing information and slashing parameters.
Methods
Params
Full method
cosmos.slashing.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.slashing.v1beta1.Query/ParamsExample response
{
"params": {
"signedBlocksWindow": "10000",
"minSignedPerWindow": "0.050000000000000000",
"downtimeJailDuration": "600s",
"slashFractionDoubleSign": "0.050000000000000000",
"slashFractionDowntime": "0.000100000000000000"
}
}SigningInfo
Full method
cosmos.slashing.v1beta1.Query/SigningInfoRequest
{
"consAddress": "cosmosvalcons1ADDRESS"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"consAddress":"cosmosvalcons1ADDRESS"}' \
'atom-grpc.nownodes.io' \
cosmos.slashing.v1beta1.Query/SigningInfoExample response
{
"valSigningInfo": {
"address": "cosmosvalcons1ADDRESS",
"startHeight": "1",
"indexOffset": "100",
"jailedUntil": "1970-01-01T00:00:00Z",
"tombstoned": false,
"missedBlocksCounter": "0"
}
}SigningInfos
Full method
cosmos.slashing.v1beta1.Query/SigningInfosRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.slashing.v1beta1.Query/SigningInfosExample response
{
"info": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}cosmos.staking.v1beta1.Query
Validators, delegations and staking parameters.
Methods
Validators
Full method
cosmos.staking.v1beta1.Query/ValidatorsRequest
{
"status": "BOND_STATUS_BONDED",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"status":"BOND_STATUS_BONDED","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/ValidatorsExample response
{
"validators": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Validator
Full method
cosmos.staking.v1beta1.Query/ValidatorRequest
{
"validatorAddr": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddr":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/ValidatorExample response
{
"validator": {
"operatorAddress": "cosmosvaloper1VALIDATOR",
"consensusPubkey": {
"@type": "/cosmos.crypto.ed25519.PubKey",
"key": "BASE64_KEY"
},
"jailed": false,
"status": "BOND_STATUS_BONDED",
"tokens": "1000000",
"delegatorShares": "1000000.000000000000000000",
"description": {
"moniker": "validator"
},
"unbondingHeight": "0",
"unbondingTime": "1970-01-01T00:00:00Z",
"commission": {
"commissionRates": {
"rate": "0.050000000000000000",
"maxRate": "0.200000000000000000",
"maxChangeRate": "0.010000000000000000"
},
"updateTime": "2026-01-01T00:00:00Z"
},
"minSelfDelegation": "1"
}
}ValidatorDelegations
Full method
cosmos.staking.v1beta1.Query/ValidatorDelegationsRequest
{
"validatorAddr": "cosmosvaloper1VALIDATOR",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddr":"cosmosvaloper1VALIDATOR","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/ValidatorDelegationsExample response
{
"delegationResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}ValidatorUnbondingDelegations
Full method
cosmos.staking.v1beta1.Query/ValidatorUnbondingDelegationsRequest
{
"validatorAddr": "cosmosvaloper1VALIDATOR",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"validatorAddr":"cosmosvaloper1VALIDATOR","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/ValidatorUnbondingDelegationsExample response
{
"unbondingResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Delegation
Full method
cosmos.staking.v1beta1.Query/DelegationRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"validatorAddr": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","validatorAddr":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/DelegationExample response
{
"delegationResponse": {
"delegation": {
"delegatorAddress": "cosmos1DELEGATOR",
"validatorAddress": "cosmosvaloper1VALIDATOR",
"shares": "1000000.000000000000000000"
},
"balance": {
"denom": "uatom",
"amount": "1000000"
}
}
}DelegatorDelegations
Full method
cosmos.staking.v1beta1.Query/DelegatorDelegationsRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/DelegatorDelegationsExample response
{
"delegationResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}UnbondingDelegation
Full method
cosmos.staking.v1beta1.Query/UnbondingDelegationRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"validatorAddr": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","validatorAddr":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/UnbondingDelegationExample response
{
"unbond": {
"delegatorAddress": "cosmos1DELEGATOR",
"validatorAddress": "cosmosvaloper1VALIDATOR",
"entries": []
}
}DelegatorUnbondingDelegations
Full method
cosmos.staking.v1beta1.Query/DelegatorUnbondingDelegationsRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/DelegatorUnbondingDelegationsExample response
{
"unbondingResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Redelegations
Full method
cosmos.staking.v1beta1.Query/RedelegationsRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"srcValidatorAddr": "cosmosvaloper1SRC",
"dstValidatorAddr": "cosmosvaloper1DST",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","srcValidatorAddr":"cosmosvaloper1SRC","dstValidatorAddr":"cosmosvaloper1DST","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/RedelegationsExample response
{
"redelegationResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}DelegatorValidators
Full method
cosmos.staking.v1beta1.Query/DelegatorValidatorsRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/DelegatorValidatorsExample response
{
"validators": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}DelegatorValidator
Full method
cosmos.staking.v1beta1.Query/DelegatorValidatorRequest
{
"delegatorAddr": "cosmos1DELEGATOR",
"validatorAddr": "cosmosvaloper1VALIDATOR"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"delegatorAddr":"cosmos1DELEGATOR","validatorAddr":"cosmosvaloper1VALIDATOR"}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/DelegatorValidatorExample response
{
"validator": {
"operatorAddress": "cosmosvaloper1VALIDATOR",
"status": "BOND_STATUS_BONDED",
"tokens": "1000000"
}
}HistoricalInfo
Full method
cosmos.staking.v1beta1.Query/HistoricalInfoRequest
{
"height": "25000000"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"height":"25000000"}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/HistoricalInfoExample response
{
"hist": {
"header": {
"chainId": "cosmoshub-4",
"height": "25000000"
},
"valset": []
}
}Pool
Full method
cosmos.staking.v1beta1.Query/PoolRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/PoolExample response
{
"pool": {
"notBondedTokens": "1000000",
"bondedTokens": "2000000"
}
}Params
Full method
cosmos.staking.v1beta1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.staking.v1beta1.Query/ParamsExample response
{
"params": {
"unbondingTime": "1814400s",
"maxValidators": 180,
"maxEntries": 7,
"historicalEntries": 10000,
"bondDenoms": [
"uatom"
],
"minCommissionRate": "0.050000000000000000"
}
}cosmos.tx.v1beta1.Service
Transaction simulation, lookup, search, encoding and broadcast.
Methods
Simulate
Full method
cosmos.tx.v1beta1.Service/SimulateRequest
{
"txBytes": "BASE64_TX_BYTES"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"txBytes":"BASE64_TX_BYTES"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/SimulateExample response
{
"gasInfo": {
"gasWanted": "200000",
"gasUsed": "150000"
},
"result": {
"data": "",
"log": "",
"events": [],
"msgResponses": []
}
}GetTx
Full method
cosmos.tx.v1beta1.Service/GetTxRequest
{
"hash": "TRANSACTION_HASH"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"hash":"TRANSACTION_HASH"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/GetTxExample response
{
"tx": {
"body": {
"messages": [],
"memo": "",
"timeoutHeight": "0",
"extensionOptions": [],
"nonCriticalExtensionOptions": []
},
"authInfo": {
"signerInfos": [],
"fee": {
"amount": [
{
"denom": "uatom",
"amount": "5000"
}
],
"gasLimit": "200000",
"payer": "",
"granter": ""
}
},
"signatures": []
},
"txResponse": {
"height": "25000000",
"txhash": "TRANSACTION_HASH",
"codespace": "",
"code": 0,
"data": "",
"rawLog": "",
"logs": [],
"info": "",
"gasWanted": "200000",
"gasUsed": "150000",
"tx": null,
"timestamp": "2026-07-15T08:00:00Z",
"events": []
}
}BroadcastTx
Full method
cosmos.tx.v1beta1.Service/BroadcastTxRequest
{
"txBytes": "BASE64_SIGNED_TX_BYTES",
"mode": "BROADCAST_MODE_SYNC"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"txBytes":"BASE64_SIGNED_TX_BYTES","mode":"BROADCAST_MODE_SYNC"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/BroadcastTxExample response
{
"txResponse": {
"height": "0",
"txhash": "TRANSACTION_HASH",
"codespace": "",
"code": 0,
"data": "",
"rawLog": "",
"logs": [],
"info": "",
"gasWanted": "0",
"gasUsed": "0",
"tx": null,
"timestamp": "",
"events": []
}
}GetTxsEvent
Full method
cosmos.tx.v1beta1.Service/GetTxsEventRequest
{
"events": [
"message.sender='cosmos1ADDRESS'"
],
"pagination": {
"limit": "100"
},
"orderBy": "ORDER_BY_DESC",
"page": "1",
"limit": "100"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"events":["message.sender='"'"'cosmos1ADDRESS'"'"'"],"pagination":{"limit":"100"},"orderBy":"ORDER_BY_DESC","page":"1","limit":"100"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/GetTxsEventExample response
{
"txs": [],
"txResponses": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"total": "0"
}GetBlockWithTxs
Full method
cosmos.tx.v1beta1.Service/GetBlockWithTxsRequest
{
"height": "25000000",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"height":"25000000","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/GetBlockWithTxsExample response
{
"txs": [],
"blockId": {
"hash": "BASE64_BLOCK_HASH",
"partSetHeader": {
"total": 1,
"hash": "BASE64_PARTS_HASH"
}
},
"block": {
"header": {
"chainId": "cosmoshub-4",
"height": "25000000"
}
},
"pagination": {
"nextKey": "",
"total": "0"
}
}TxDecode
Full method
cosmos.tx.v1beta1.Service/TxDecodeRequest
{
"txBytes": "BASE64_TX_BYTES"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"txBytes":"BASE64_TX_BYTES"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/TxDecodeExample response
{
"tx": {
"body": {
"messages": [],
"memo": ""
},
"authInfo": {
"signerInfos": [],
"fee": {
"amount": [],
"gasLimit": "0"
}
},
"signatures": []
}
}TxEncode
Full method
cosmos.tx.v1beta1.Service/TxEncodeRequest
{
"tx": {
"body": {
"messages": [],
"memo": ""
},
"authInfo": {
"signerInfos": [],
"fee": {
"amount": [],
"gasLimit": "0"
}
},
"signatures": []
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"tx":{"body":{"messages":[],"memo":""},"authInfo":{"signerInfos":[],"fee":{"amount":[],"gasLimit":"0"}},"signatures":[]}}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/TxEncodeExample response
{
"txBytes": "BASE64_TX_BYTES"
}TxEncodeAmino
Full method
cosmos.tx.v1beta1.Service/TxEncodeAminoRequest
{
"aminoJson": "AMINO_JSON_STRING"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"aminoJson":"AMINO_JSON_STRING"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/TxEncodeAminoExample response
{
"aminoBinary": "BASE64_AMINO_BINARY"
}TxDecodeAmino
Full method
cosmos.tx.v1beta1.Service/TxDecodeAminoRequest
{
"aminoBinary": "BASE64_AMINO_BINARY"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"aminoBinary":"BASE64_AMINO_BINARY"}' \
'atom-grpc.nownodes.io' \
cosmos.tx.v1beta1.Service/TxDecodeAminoExample response
{
"aminoJson": "AMINO_JSON_STRING"
}cosmos.upgrade.v1beta1.Query
Software upgrade plans and module versions.
Methods
CurrentPlan
Full method
cosmos.upgrade.v1beta1.Query/CurrentPlanRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.upgrade.v1beta1.Query/CurrentPlanExample response
{
"plan": {
"name": "upgrade-name",
"time": "0001-01-01T00:00:00Z",
"height": "26000000",
"info": ""
}
}AppliedPlan
Full method
cosmos.upgrade.v1beta1.Query/AppliedPlanRequest
{
"name": "upgrade-name"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"name":"upgrade-name"}' \
'atom-grpc.nownodes.io' \
cosmos.upgrade.v1beta1.Query/AppliedPlanExample response
{
"height": "26000000"
}UpgradedConsensusState
Full method
cosmos.upgrade.v1beta1.Query/UpgradedConsensusStateRequest
{
"lastHeight": "25999999"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"lastHeight":"25999999"}' \
'atom-grpc.nownodes.io' \
cosmos.upgrade.v1beta1.Query/UpgradedConsensusStateExample response
{
"upgradedConsensusState": "BASE64_CONSENSUS_STATE"
}ModuleVersions
Full method
cosmos.upgrade.v1beta1.Query/ModuleVersionsRequest
{
"moduleName": ""
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"moduleName":""}' \
'atom-grpc.nownodes.io' \
cosmos.upgrade.v1beta1.Query/ModuleVersionsExample response
{
"moduleVersions": [
{
"name": "auth",
"version": "4"
},
{
"name": "bank",
"version": "4"
}
]
}Authority
Full method
cosmos.upgrade.v1beta1.Query/AuthorityRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
cosmos.upgrade.v1beta1.Query/AuthorityExample response
{
"address": "cosmos1GOVERNANCE_AUTHORITY"
}ibc.applications.transfer.v1.Query
IBC token-transfer state.
Methods
DenomTrace
Full method
ibc.applications.transfer.v1.Query/DenomTraceRequest
{
"hash": "IBC_DENOM_HASH"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"hash":"IBC_DENOM_HASH"}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/DenomTraceExample response
{
"denomTrace": {
"path": "transfer/channel-0",
"baseDenom": "uatom"
}
}DenomTraces
Full method
ibc.applications.transfer.v1.Query/DenomTracesRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/DenomTracesExample response
{
"denomTraces": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}Params
Full method
ibc.applications.transfer.v1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/ParamsExample response
{
"params": {
"sendEnabled": true,
"receiveEnabled": true
}
}DenomHash
Full method
ibc.applications.transfer.v1.Query/DenomHashRequest
{
"trace": "transfer/channel-0/uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"trace":"transfer/channel-0/uatom"}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/DenomHashExample response
{
"hash": "IBC_DENOM_HASH"
}EscrowAddress
Full method
ibc.applications.transfer.v1.Query/EscrowAddressRequest
{
"portId": "transfer",
"channelId": "channel-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0"}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/EscrowAddressExample response
{
"escrowAddress": "cosmos1ESCROW"
}TotalEscrowForDenom
Full method
ibc.applications.transfer.v1.Query/TotalEscrowForDenomRequest
{
"denom": "uatom"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"denom":"uatom"}' \
'atom-grpc.nownodes.io' \
ibc.applications.transfer.v1.Query/TotalEscrowForDenomExample response
{
"amount": {
"denom": "uatom",
"amount": "1000000"
}
}ibc.core.client.v1.Query
IBC clients and consensus states.
Methods
ClientState
Full method
ibc.core.client.v1.Query/ClientStateRequest
{
"clientId": "07-tendermint-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ClientStateExample response
{
"clientState": {
"@type": "/ibc.lightclients.tendermint.v1.ClientState",
"chainId": "other-chain",
"latestHeight": {
"revisionNumber": "1",
"revisionHeight": "100"
}
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ClientStates
Full method
ibc.core.client.v1.Query/ClientStatesRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ClientStatesExample response
{
"clientStates": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}ConsensusState
Full method
ibc.core.client.v1.Query/ConsensusStateRequest
{
"clientId": "07-tendermint-0",
"revisionNumber": "1",
"revisionHeight": "100",
"latestHeight": false
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0","revisionNumber":"1","revisionHeight":"100","latestHeight":false}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ConsensusStateExample response
{
"consensusState": {
"@type": "/ibc.lightclients.tendermint.v1.ConsensusState",
"timestamp": "2026-01-01T00:00:00Z",
"root": {
"hash": "BASE64_ROOT"
}
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ConsensusStates
Full method
ibc.core.client.v1.Query/ConsensusStatesRequest
{
"clientId": "07-tendermint-0",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ConsensusStatesExample response
{
"consensusStates": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}ConsensusStateHeights
Full method
ibc.core.client.v1.Query/ConsensusStateHeightsRequest
{
"clientId": "07-tendermint-0",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ConsensusStateHeightsExample response
{
"consensusStateHeights": [],
"pagination": {
"nextKey": "",
"total": "0"
}
}ClientStatus
Full method
ibc.core.client.v1.Query/ClientStatusRequest
{
"clientId": "07-tendermint-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ClientStatusExample response
{
"status": "Active"
}ClientParams
Full method
ibc.core.client.v1.Query/ClientParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/ClientParamsExample response
{
"params": {
"allowedClients": [
"06-solomachine",
"07-tendermint"
]
}
}UpgradedClientState
Full method
ibc.core.client.v1.Query/UpgradedClientStateRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/UpgradedClientStateExample response
{
"upgradedClientState": {
"@type": "/ibc.lightclients.tendermint.v1.ClientState"
}
}UpgradedConsensusState
Full method
ibc.core.client.v1.Query/UpgradedConsensusStateRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.core.client.v1.Query/UpgradedConsensusStateExample response
{
"upgradedConsensusState": {
"@type": "/ibc.lightclients.tendermint.v1.ConsensusState"
}
}ibc.core.connection.v1.Query
IBC connections.
Methods
Connection
Full method
ibc.core.connection.v1.Query/ConnectionRequest
{
"connectionId": "connection-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"connectionId":"connection-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ConnectionExample response
{
"connection": {
"clientId": "07-tendermint-0",
"versions": [
{
"identifier": "1",
"features": [
"ORDER_ORDERED",
"ORDER_UNORDERED"
]
}
],
"state": "STATE_OPEN",
"counterparty": {
"clientId": "07-tendermint-1",
"connectionId": "connection-1",
"prefix": {
"keyPrefix": "BASE64_PREFIX"
}
},
"delayPeriod": "0"
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}Connections
Full method
ibc.core.connection.v1.Query/ConnectionsRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ConnectionsExample response
{
"connections": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ClientConnections
Full method
ibc.core.connection.v1.Query/ClientConnectionsRequest
{
"clientId": "07-tendermint-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"clientId":"07-tendermint-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ClientConnectionsExample response
{
"connectionPaths": [
"connection-0"
],
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ConnectionClientState
Full method
ibc.core.connection.v1.Query/ConnectionClientStateRequest
{
"connectionId": "connection-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"connectionId":"connection-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ConnectionClientStateExample response
{
"identifiedClientState": {
"clientId": "07-tendermint-0",
"clientState": {
"@type": "/ibc.lightclients.tendermint.v1.ClientState"
}
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ConnectionConsensusState
Full method
ibc.core.connection.v1.Query/ConnectionConsensusStateRequest
{
"connectionId": "connection-0",
"revisionNumber": "1",
"revisionHeight": "100"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"connectionId":"connection-0","revisionNumber":"1","revisionHeight":"100"}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ConnectionConsensusStateExample response
{
"consensusState": {
"@type": "/ibc.lightclients.tendermint.v1.ConsensusState"
},
"clientId": "07-tendermint-0",
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ConnectionParams
Full method
ibc.core.connection.v1.Query/ConnectionParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.core.connection.v1.Query/ConnectionParamsExample response
{
"params": {
"maxExpectedTimePerBlock": "30000000000"
}
}ibc.core.channel.v1.Query
IBC channels and packet state.
Methods
Channel
Full method
ibc.core.channel.v1.Query/ChannelRequest
{
"portId": "transfer",
"channelId": "channel-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/ChannelExample response
{
"channel": {
"state": "STATE_OPEN",
"ordering": "ORDER_UNORDERED",
"counterparty": {
"portId": "transfer",
"channelId": "channel-1"
},
"connectionHops": [
"connection-0"
],
"version": "ics20-1"
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}Channels
Full method
ibc.core.channel.v1.Query/ChannelsRequest
{
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/ChannelsExample response
{
"channels": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ConnectionChannels
Full method
ibc.core.channel.v1.Query/ConnectionChannelsRequest
{
"connection": "connection-0",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"connection":"connection-0","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/ConnectionChannelsExample response
{
"channels": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ChannelClientState
Full method
ibc.core.channel.v1.Query/ChannelClientStateRequest
{
"portId": "transfer",
"channelId": "channel-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/ChannelClientStateExample response
{
"identifiedClientState": {
"clientId": "07-tendermint-0",
"clientState": {
"@type": "/ibc.lightclients.tendermint.v1.ClientState"
}
},
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ChannelConsensusState
Full method
ibc.core.channel.v1.Query/ChannelConsensusStateRequest
{
"portId": "transfer",
"channelId": "channel-0",
"revisionNumber": "1",
"revisionHeight": "100"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","revisionNumber":"1","revisionHeight":"100"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/ChannelConsensusStateExample response
{
"consensusState": {
"@type": "/ibc.lightclients.tendermint.v1.ConsensusState"
},
"clientId": "07-tendermint-0",
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}PacketCommitment
Full method
ibc.core.channel.v1.Query/PacketCommitmentRequest
{
"portId": "transfer",
"channelId": "channel-0",
"sequence": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","sequence":"1"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/PacketCommitmentExample response
{
"commitment": "BASE64_COMMITMENT",
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}PacketCommitments
Full method
ibc.core.channel.v1.Query/PacketCommitmentsRequest
{
"portId": "transfer",
"channelId": "channel-0",
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/PacketCommitmentsExample response
{
"commitments": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}PacketReceipt
Full method
ibc.core.channel.v1.Query/PacketReceiptRequest
{
"portId": "transfer",
"channelId": "channel-0",
"sequence": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","sequence":"1"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/PacketReceiptExample response
{
"received": true,
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}PacketAcknowledgement
Full method
ibc.core.channel.v1.Query/PacketAcknowledgementRequest
{
"portId": "transfer",
"channelId": "channel-0",
"sequence": "1"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","sequence":"1"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/PacketAcknowledgementExample response
{
"acknowledgement": "BASE64_ACK",
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}PacketAcknowledgements
Full method
ibc.core.channel.v1.Query/PacketAcknowledgementsRequest
{
"portId": "transfer",
"channelId": "channel-0",
"packetCommitmentSequences": [
"1"
],
"pagination": {
"limit": "100"
}
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","packetCommitmentSequences":["1"],"pagination":{"limit":"100"}}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/PacketAcknowledgementsExample response
{
"acknowledgements": [],
"pagination": {
"nextKey": "",
"total": "0"
},
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}UnreceivedPackets
Full method
ibc.core.channel.v1.Query/UnreceivedPacketsRequest
{
"portId": "transfer",
"channelId": "channel-0",
"packetCommitmentSequences": [
"1",
"2"
]
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","packetCommitmentSequences":["1","2"]}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/UnreceivedPacketsExample response
{
"sequences": [
"2"
],
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}UnreceivedAcks
Full method
ibc.core.channel.v1.Query/UnreceivedAcksRequest
{
"portId": "transfer",
"channelId": "channel-0",
"packetAckSequences": [
"1",
"2"
]
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0","packetAckSequences":["1","2"]}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/UnreceivedAcksExample response
{
"sequences": [
"2"
],
"height": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}NextSequenceReceive
Full method
ibc.core.channel.v1.Query/NextSequenceReceiveRequest
{
"portId": "transfer",
"channelId": "channel-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"portId":"transfer","channelId":"channel-0"}' \
'atom-grpc.nownodes.io' \
ibc.core.channel.v1.Query/NextSequenceReceiveExample response
{
"nextSequenceReceive": "1",
"proof": "BASE64_PROOF",
"proofHeight": {
"revisionNumber": "4",
"revisionHeight": "25000000"
}
}ibc.applications.interchain_accounts.controller.v1.Query
Interchain Accounts controller queries.
Methods
InterchainAccount
Full method
ibc.applications.interchain_accounts.controller.v1.Query/InterchainAccountRequest
{
"owner": "cosmos1OWNER",
"connectionId": "connection-0"
}Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{"owner":"cosmos1OWNER","connectionId":"connection-0"}' \
'atom-grpc.nownodes.io' \
ibc.applications.interchain_accounts.controller.v1.Query/InterchainAccountExample response
{
"address": "cosmos1INTERCHAIN_ACCOUNT"
}Params
Full method
ibc.applications.interchain_accounts.controller.v1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.applications.interchain_accounts.controller.v1.Query/ParamsExample response
{
"params": {
"controllerEnabled": true
}
}ibc.applications.interchain_accounts.host.v1.Query
Interchain Accounts host queries.
Methods
Params
Full method
ibc.applications.interchain_accounts.host.v1.Query/ParamsRequest
{}
Example request
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-d '{}' \
'atom-grpc.nownodes.io' \
ibc.applications.interchain_accounts.host.v1.Query/ParamsExample response
{
"params": {
"hostEnabled": true,
"allowMessages": [
"/cosmos.bank.v1beta1.MsgSend"
]
}
}Pagination
Many list methods accept cosmos.base.query.v1beta1.PageRequest:
{
"pagination": {
"key": "",
"offset": "0",
"limit": "100",
"countTotal": true,
"reverse": false
}
}key and nextKey are protobuf bytes fields and are Base64 encoded in protobuf JSON.
Historical state
To query state at a historical block height, clients may send the standard Cosmos SDK metadata header:
x-cosmos-block-height: BLOCK_HEIGHTExample
grpcurl \
-insecure \
-H 'api-key: YOUR_API_KEY' \
-H 'x-cosmos-block-height: 25000000' \
-d '{"address":"cosmos1ADDRESS","denom":"uatom"}' \
'atom-grpc.nownodes.io' \
cosmos.bank.v1beta1.Query/BalanceHistorical state is available only when the backend retains the requested version. A pruned node can return an unavailable-version error.
Address and denomination formats
Bytes and Any fields
Protobuf bytes fields must be Base64 encoded in JSON. Polymorphic google.protobuf.Any objects use an @type field. Cosmos SDK type URLs normally begin with /, for example:
{
"@type": "/cosmos.auth.v1beta1.BaseAccount"
}Postman setup
Select New → gRPC Request. Enter atom-grpc.nownodes.io. Use server reflection or import proto files matching the Gaia release. Select a service and method. Add metadata:
api-key: YOUR_API_KEYAdd the JSON request and click Invoke.
Common errors
UNAUTHENTICATED
The API key is missing or invalid.
api-key: YOUR_API_KEYServer does not support reflection
Import matching Gaia, Cosmos SDK, IBC-Go and CometBFT proto files manually.
Method not found
The deployed Gaia version may expose a different service version or may not register the module. Check reflection before using a method.
Invalid Bech32 address
Use the correct Cosmos Hub address prefix for the requested field.
Invalid denomination
Use uatom for the Cosmos Hub native base denomination unless querying another native or IBC denomination.
Failed to parse bytes
Encode protobuf bytes fields as Base64, not hexadecimal, unless the field is explicitly defined as a string.
Transaction not found
The hash can be invalid, the transaction may not yet be indexed, or the node may not retain the relevant history.
Version does not exist
The backend is pruned or does not have state for the requested historical height.
Unknown field
The request JSON does not match the proto version deployed by the endpoint. Use grpcurl describe to inspect the exact request type.