On this page
Source: paxeer-network/api/ proto definitions, paxeer-network/docs/

Overview

Paxeer exposes Cosmos SDK-style gRPC and REST (gRPC-Gateway) endpoints for chain modules. These APIs complement the JSON-RPC interface and provide access to chain state, module parameters, and administrative operations.

Protocol Buffers

All services are defined in paxeer-network/api/ using Protocol Buffers v3. The proto files generate:

  • Go types under github.com/sidiora-labs/paxeer-network/modules/*/types
  • gRPC server and client interfaces
  • REST endpoints via google.api.http annotations
  • OpenAPI/Swagger documentation

Code Generation

Regenerate Go code from proto files:

ignite generate proto-go

Requires Ignite CLI v0.23.0. See paxeer-network/api/README.md for installation.

EVM Module Query Service

The EVM module provides address mapping, static calls, and pointer queries.

Address Mapping

MethodREST EndpointPurpose
PaxAddressByEVMAddressGET /pax-protocol/paxchain/evm/pax_addressGet Cosmos address from EVM address
EVMAddressByPaxAddressGET /pax-protocol/paxchain/evm/evm_addressGet EVM address from Cosmos address

Static Calls

MethodREST EndpointPurpose
StaticCallGET /pax-protocol/paxchain/evm/static_callExecute read-only contract call

Pointer Queries

Pointers bridge Cosmos-native assets (CW20/CW721/CW1155) to EVM addresses:

MethodREST EndpointPurpose
PointerGET /pax-protocol/paxchain/evm/pointerGet EVM pointer for Cosmos contract
PointeeGET /pax-protocol/paxchain/evm/pointeeGet Cosmos contract from EVM pointer
PointerVersionGET /pax-protocol/paxchain/evm/pointer_versionGet current pointer contract version
Proto: paxeer-network/api/evm/query.proto

Epoch Module Query Service

The Epoch module tracks the current chain epoch for time-based operations:

MethodREST EndpointPurpose
EpochGET /pax-protocol/paxchain/epoch/epochGet current epoch number and metadata
ParamsGET /pax-protocol/paxchain/epoch/paramsGet epoch module parameters
Proto: paxeer-network/api/epoch/query.proto

Oracle Module Query Service

The Oracle module provides exchange rates, price feeds, and validator vote tracking:

Exchange Rates & Prices

MethodREST EndpointPurpose
ExchangeRateGET /pax-protocol/pax-chain/oracle/denoms/{denom}/exchange_rateGet exchange rate for a denom
ExchangeRatesGET /pax-protocol/pax-chain/oracle/denoms/exchange_ratesGet all exchange rates
ActivesGET /pax-protocol/pax-chain/oracle/denoms/activesList all active denoms
VoteTargetsGET /pax-protocol/pax-chain/oracle/denoms/vote_targetsList vote target denoms
PriceSnapshotHistoryGET /pax-protocol/pax-chain/oracle/denoms/price_snapshot_historyGet historical price snapshots
TwapsGET /pax-protocol/pax-chain/oracle/denoms/twaps/{lookback_seconds}Get time-weighted average prices

Validator Vote Tracking

MethodREST EndpointPurpose
FeederDelegationGET /pax-protocol/pax-chain/oracle/validators/{validator_addr}/feederGet feeder delegation for validator
VotePenaltyCounterGET /pax-protocol/pax-chain/oracle/validators/{validator_addr}/vote_penalty_counterGet oracle miss counter
SlashWindowGET /pax-protocol/pax-chain/oracle/slash_windowGet slash window information
ParamsGET /pax-protocol/pax-chain/oracle/paramsGet oracle module parameters
Proto: paxeer-network/api/oracle/query.proto

TokenFactory Module Query Service

The TokenFactory module manages custom token creation and metadata:

MethodREST EndpointPurpose
ParamsGET /pax-protocol/paxchain/tokenfactory/paramsGet tokenfactory parameters
DenomAuthorityMetadataGET /pax-protocol/paxchain/tokenfactory/denoms/{denom}/authority_metadataGet denom authority metadata
DenomMetadataGET /pax-protocol/paxchain/tokenfactory/denoms/metadataGet denom metadata
DenomsFromCreatorGET /pax-protocol/paxchain/tokenfactory/denoms_from_creator/{creator}List denoms created by an address
DenomAllowListGET /pax-protocol/paxchain/tokenfactory/denoms/allow_listGet denom allow list
Proto: paxeer-network/api/tokenfactory/query.proto

Mint Module Query Service

The Mint module exposes minting parameters and state:

MethodREST EndpointPurpose
ParamsGET /paxchain/mint/v1beta1/paramsGet mint module parameters
MinterGET /paxchain/mint/v1beta1/minterGet minter state (start/end dates, amounts)
Proto: paxeer-network/api/mint/v1beta1/query.proto

Admin gRPC Service

The Admin service provides runtime log level control. It runs on a separate loopback-only gRPC server (default 127.0.0.1:9095):

MethodPurpose
SetLogLevelChange log level for loggers matching a pattern
GetLogLevelGet current log level for a logger
ListLoggersList all registered loggers and their levels

Enable in app.toml:

[admin_server]
admin_enabled = true
admin_address = "127.0.0.1:9095"
Proto: paxeer-network/api/pax/admin/v0/admin.proto
Implementation: paxeer-network/admin/

OpenAPI / Swagger Documentation

Paxeer generates OpenAPI documentation from proto annotations. To regenerate:

./scripts/update-swagger-ui-statik.sh

This generates docs/swagger-ui/swagger.yml and embeds it in docs/swagger/statik.go.

Serving Swagger UI

Enable in app.toml:

[api]
enable = true
swagger = true

Access at http://<node-ip>:<port>/swagger/.

See: paxeer-network/docs/README.md for generation instructions

gRPC Endpoints

gRPC services are exposed on the Cosmos SDK gRPC port (default 9090). Use any gRPC client (e.g., grpcurl):

grpcurl -plaintext localhost:9090 list
grpcurl -plaintext localhost:9090 paxprotocol.paxchain.evm.Query/Pointer

REST Gateway

REST endpoints are served via gRPC-Gateway on the API port (default 1317). All gRPC methods have corresponding REST endpoints defined by google.api.http annotations in the proto files.

Transaction Services

Each module also defines a Msg service for transactions (e.g., evm/tx.proto, epoch/tx.proto). These are not query endpoints but message types for state-changing operations. Submit via standard Cosmos SDK transaction APIs.

Paxeer Network · Developer documentationBack to top ↑

Ask Paxeer Docs

Answers from the documentation.

What would you like to know?

Ask a question, find a guide, or get help with your next step.

Enter to send · Shift+Enter for a new line