Use Tatum’s managed Cosmos Hub gRPC endpoint with API-key auth, TLS on port 443, and usage-based pricing.
Run ready-made requests instantly in Postman, then use the setup section below for local Node.js gRPC integration.
Step 1 is shown below. Expand the section to reveal the full setup guide.
Node.js (version 18+)
brew install node node -v
grpcurl (highly recommended for smoke testing your endpoint and API key).
brew install grpcurl
mkdir tatum-cosmos-grpc && cd tatum-cosmos-grpc npm init -y npm install @grpc/grpc-js @grpc/proto-loader
# Create directory structure
mkdir -p proto/cosmos/bank/v1beta1 \
proto/cosmos/base/v1beta1 \
proto/cosmos/base/query/v1beta1 \
proto/cosmos/msg/v1 \
proto/cosmos/query/v1 \
proto/cosmos_proto \
proto/google/api \
proto/gogoproto \
proto/amino
# Download Core Bank definitions
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/bank/v1beta1/query.proto > proto/cosmos/bank/v1beta1/query.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/bank/v1beta1/bank.proto > proto/cosmos/bank/v1beta1/bank.proto
# Download Base, Msg, & Query dependencies
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/base/v1beta1/coin.proto > proto/cosmos/base/v1beta1/coin.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/base/query/v1beta1/pagination.proto > proto/cosmos/base/query/v1beta1/pagination.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/msg/v1/msg.proto > proto/cosmos/msg/v1/msg.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/cosmos/query/v1/query.proto > proto/cosmos/query/v1/query.proto
# Download Third-party Metadata (Critical for resolution)
curl -s https://raw.githubusercontent.com/googleapis/googleapis/master/google/api/annotations.proto > proto/google/api/annotations.proto
curl -s https://raw.githubusercontent.com/googleapis/googleapis/master/google/api/http.proto > proto/google/api/http.proto
curl -s https://raw.githubusercontent.com/cosmos/gogoproto/main/gogoproto/gogo.proto > proto/gogoproto/gogo.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-proto/main/proto/cosmos_proto/cosmos.proto > proto/cosmos_proto/cosmos.proto
curl -s https://raw.githubusercontent.com/cosmos/cosmos-sdk/main/proto/amino/amino.proto > proto/amino/amino.protogrpcurlcosmos-mainnet-grpc.gateway.tatum.io:443 (Mainnet).x-api-key metadata (port 443 required for SSL).
grpcurl \ -H "x-api-key: YOUR_API_KEY" \ cosmos-mainnet-grpc.gateway.tatum.io:443 \ cosmos.base.tendermint.v1beta1.Service/GetNodeInfo
{
"defaultNodeInfo": {
"protocolVersion": {
"p2p": "8",
"block": "11"
},
"defaultNodeId": "0b8bf4c894418453cfeb45d57eec6036bb863cff",
"listenAddr": "tcp://0.0.0.0:26656",
"network": "cosmoshub-4",
"version": "0.38.19",
"channels": "QCAhIiMwOGBhAA==",
"moniker": "ndl-archival-b@eu",
"other": {
"txIndex": "on",
"rpcAddress": "tcp://0.0.0.0:26657"
}
},
//[...]
}Cosmos Hub is available over gRPC, Tendermint JSON-RPC, and REST in the dashboard—try a quick request below.