RPC Endpoints
Specter exposes three RPC interfaces: Ethereum JSON-RPC, Ethereum WebSocket, and CometBFT RPC.
Ethereum JSON-RPC
URL: https://testnet.specterchain.com
Standard Ethereum JSON-RPC over HTTPS. Compatible with all Ethereum tooling.
Supported methods
All standard Ethereum JSON-RPC methods are supported:
| Method | Description |
|---|---|
eth_blockNumber | Current block number |
eth_getBalance | Account balance |
eth_getTransactionCount | Account nonce |
eth_sendRawTransaction | Submit signed transaction |
eth_call | Execute read-only call |
eth_estimateGas | Estimate gas for transaction |
eth_getTransactionReceipt | Get transaction receipt |
eth_getLogs | Query event logs |
eth_getCode | Get contract bytecode |
eth_getStorageAt | Read contract storage |
eth_gasPrice | Get current gas price |
eth_chainId | Returns 0x1545 (5445) |
net_version | Returns 5445 |
Example requests
# Get latest block number
curl -X POST https://testnet.specterchain.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
# Get balance
curl -X POST https://testnet.specterchain.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xYOUR_ADDRESS","latest"],"id":1}'
Ethereum WebSocket
URL: wss://testnet.specterchain.com/ws
Use WebSocket for real-time event subscriptions.
import { createPublicClient, webSocket } from 'viem';
const client = createPublicClient({
transport: webSocket('wss://testnet.specterchain.com/ws'),
});
// Subscribe to new blocks
const unwatch = client.watchBlockNumber({
onBlockNumber: (blockNumber) => console.log(blockNumber),
});
// Subscribe to contract events
const unwatch2 = client.watchContractEvent({
address: '0x443434113980Ab9d5Eef0Ace7d1A29AB68Af6c70',
abi: commitRevealVaultAbi,
eventName: 'Committed',
onLogs: (logs) => console.log(logs),
});
CometBFT RPC
URL: https://testnet.specterchain.com/rpc/
The CometBFT RPC provides access to consensus-level data (validators, blocks, evidence) and Cosmos-specific queries.
# Get node status
curl https://testnet.specterchain.com/rpc/status
# Get latest block
curl https://testnet.specterchain.com/rpc/block
# Get validators
curl https://testnet.specterchain.com/rpc/validators
Rate limits
There are no hard rate limits on the public testnet RPC, but excessive requests may be throttled. For production applications, consider running your own node.
Gas price note
eth_gasPrice may return 0 on Specter. This is a Cosmos EVM behavior. The chain enforces a minimum gas price of 1 gwei. Always set gas price explicitly:
cast send $CONTRACT "myFunction()" \
--gas-price 1000000000 \
--rpc-url https://testnet.specterchain.com \
--chain-id 5445 \
--private-key $PRIVATE_KEY