Thesettlementlayerforthemachineeconomy.

Developers

Query the chain from Cosmos tooling

Cosmos gRPC, REST and Swagger surface

gRPC, REST and an embedded Swagger console, generated from the chain's 39 protobuf files.

Point gRPC or plain HTTP at the node and read module state without an EVM client or Solidity bindings. gRPC answers on 9090 and gRPC-web on 9091, both on by default. Turn on the REST API server in app.toml and you get query routes for tokenfactory, mint, epoch, oracle and EVM addresses on 1317, plus a Swagger 2.0 console embedded in the binary. One node process serves this surface and the EVM JSON-RPC from the same application state.

What it does

The Paxeer chain node serves a Cosmos service surface beside its EVM JSON-RPC: gRPC on port 9090, gRPC-web on 9091, and a REST server on 1317 that also hosts a Swagger console at /swagger/. The routes come from 39 .proto files in api/, spread across nine module directories and all declared in the paxprotocol.paxchain.* package, generated with buf into modules/*/types. Twenty-five google.api.http annotations in five query services define the REST paths, and the matching gRPC-gateway code is checked in. A 61,953-line Swagger 2.0 document is embedded in the node binary with statik and served when the REST API server is enabled.

Key capabilities

  • gRPC on 9090 and gRPC-web on 9091, both enabled by default in the node config.
  • REST gateway on 1317 for tokenfactory, mint, epoch, oracle and evm query routes.
  • Swagger 2.0 console at /swagger/, embedded in the binary, no external hosting needed.
  • 39 protobuf files across nine modules, published as a single buf module.
  • One regeneration script drives buf v1.58.0, the gocosmos plugin and gRPC-gateway v1.16.0.
  • Cosmos tx and Tendermint query services registered on the same gRPC query router.

Who it's for

Backend and integration developers who read chain state or submit transactions from Cosmos tooling rather than EVM clients.

Why it matters

Clients that speak gRPC or plain HTTP can query module state (token factory denoms, mint parameters, epochs, oracle exchange rates, EVM address pointers) without an EVM JSON-RPC client or generated Solidity bindings. The embedded Swagger document gives a browsable list of the Cosmos-style routes the node answers.

Differentiators

One node process serves both the Cosmos gRPC/REST surface and the EVM JSON-RPC surface, from the same application state (node/app.go).

Outcomes

  • Read token factory, mint, epoch, oracle and EVM query routes over HTTP
  • Browse the routes in a Swagger console served by the node itself
  • Reach the same state from gRPC, gRPC-web or REST clients

Technical notes

  • The REST API server is off by default ([api] enable = false); swagger defaults to true in the same config, so /swagger/ appears only once the API server is turned on. docs/paxeer-chain-docs.md instructs operators to set both to true in app.toml.
  • /swagger/ has no authentication, and the spec declares no host, basePath, schemes or securityDefinitions, so it documents neither an origin nor an auth scheme.
  • Coverage is Cosmos-only: /cosmos, /ibc, /cosmwasm, /pax-protocol and /paxchain. The EVM JSON-RPC methods and the lx_*/px_* gateway methods are not in the spec.
  • REST prefixes are inconsistent across modules: 13 routes under /pax-protocol/paxchain/, 10 under the hyphenated /pax-protocol/pax-chain/, and 2 under a bare /paxchain/mint/v1beta1/.
  • api/ holds only .proto files; generated Go and gateway code live in modules/*/types. Regeneration runs ./scripts/protoc.sh, which no Makefile target calls, and there is no check that the checked-in output still matches the protos. Swagger regeneration additionally needs ignite v0.23.0 plus statik, and its script uses a BSD sed -i '' that fails on GNU sed.
  • There is no proto package for layerxanchor, layerxbridge or launchpad. platform/hosted/paxeer/init-chain.sh disables the REST API and gRPC-web and binds gRPC to loopback, so a node provisioned by that script exposes neither REST nor Swagger.
# app.toml: [api] enable = true, swagger = true
curl http://localhost:1317/pax-protocol/paxchain/tokenfactory/params
curl http://localhost:1317/paxchain/mint/v1beta1/minter
curl http://localhost:1317/pax-protocol/pax-chain/oracle/denoms/exchange_rates
grpcurl -plaintext localhost:9090 list paxprotocol.paxchain.evm.Query
open http://localhost:1317/swagger/

More in Developers

Build on Paxeer.

Give your agent a wallet, set its policy, and settle your first call on LayerX.