GET /api/health/api_status
Check if the API is running.
{
"status": "ok",
"version": "0.1.0"
}
GET /api/health/rpc_status
Check if the RPC connection is working.
{
"status": "ok",
"rpc_url": "https://rpc-1.namada.nodes.guru"
}
{
"status": "error",
"message": "RPC connection error: ...",
"rpc_url": "https://rpc-1.namada.nodes.guru"
}
GET /api/pos/liveness_info
Get liveness information for all validators.
{
"liveness_window_len": 100,
"liveness_threshold": "0.9",
"validators": [
{
"native_address": "tnam1q...",
"comet_address": "tnam1q...",
"missed_votes": 0
}
]
}
GET /api/pos/validator_by_tm_addr/{tm_addr}
Get validator information by their Tendermint address.
{
"address": "tnam1q..."
}
{
"error": "Invalid Tendermint address",
"details": "Tendermint address must be 40 hex characters"
}
{
"error": "Not found",
"details": "No validator found with Tendermint address CAFA..."
}
GET /api/pos/validators/{address}
Get detailed information about a specific validator.
{
"address": "tnam1q...",
"state": "active",
"stake": "1000000",
"commission_rate": "0.05",
"max_commission_change_per_epoch": "0.01",
"metadata": {
"email": "validator@example.com",
"description": "Professional validator",
"website": "https://example.com",
"discord_handle": "validator#1234"
}
}
{
"error": "Invalid address format",
"details": "Invalid address format: expected bech32m encoding"
}
{
"error": "Not found",
"details": "Address tnam1q... is not a validator"
}
GET /api/pos/validators
Get a simple list of all validators. This endpoint returns just the addresses without additional details.
{
"validators": [
"tnam1q...",
"tnam1q..."
]
}
GET /api/pos/validators_details?page={page}&per_page={per_page}
Get detailed information about all validators with pagination.
{
"validators": [
{
"address": "tnam1q...",
"state": "active",
"stake": "1000000",
"commission_rate": "0.05",
"max_commission_change_per_epoch": "0.01",
"metadata": {
"email": "validator@example.com",
"description": "Professional validator",
"website": "https://example.com",
"discord_handle": "validator#1234"
}
}
],
"pagination": {
"total": 100,
"page": 1,
"per_page": 10,
"total_pages": 10
}
}
{
"error": "Invalid pagination parameters",
"details": "Page number must be greater than 0"
}
{
"error": "Invalid pagination parameters",
"details": "Items per page cannot exceed 50"
}
{
"error": "Invalid pagination parameters",
"details": "Page number 11 exceeds total pages 10"
}
GET /api/pos/validator_set/consensus
Get all validators in the consensus set with their bonded stake.
{
"validators": [
{
"address": "tnam1q...",
"stake": "1000000"
}
]
}
GET /api/pos/validator_set/below_capacity
Get all validators in the below-capacity set with their bonded stake.
{
"validators": [
{
"address": "tnam1q...",
"stake": "1000000"
}
]
}