O endpoint público da BrightCity Chain Testnet é:
https://rpc.fmartns.dev
Trata-se de um JSON-RPC compatível com Ethereum/EVM. Use-o em carteiras, SDKs, backends e scripts para ler estado e enviar transações assinadas.

Métodos disponíveis no uso público

Para integração normal, utilize namespaces eth_*, net_* e web3_* (por exemplo: eth_chainId, eth_blockNumber, eth_getBalance, eth_sendRawTransaction).
Métodos debug_*, engine_*, txpool_* e admin_* não fazem parte do uso público deste endpoint. Eles são reservados à operação interna da rede.

Exemplos com curl

curl -s https://rpc.fmartns.dev \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

Exemplos com SDKs

import { createPublicClient, http, formatEther } from 'viem';

const client = createPublicClient({
  transport: http('https://rpc.fmartns.dev'),
});

const chainId = await client.getChainId();
const blockNumber = await client.getBlockNumber();
const balance = await client.getBalance({
  address: '0xSEU_ENDERECO',
});

console.log({ chainId, blockNumber, eth: formatEther(balance) });

Boas práticas

  • Evite polling agressivo (muitas requisições por segundo). Prefira intervalos razoáveis ou WebSocket apenas se o endpoint suportar e estiver documentado para seu caso.
  • Implemente retry com backoff em falhas temporárias (timeout, 502, 503).
  • Trate erros JSON-RPC (error.code, error.message) de forma explícita no backend.
  • Ao indexar eventos, persista o último bloco processado e retome a partir de bloco + 1 após reinícios.
  • Sempre valide chainId === 20260520 na inicialização do cliente.
Detalhes de limitações em relação à Ethereum pública: Diferenças em relação ao Ethereum.

Próximos passos

Boas práticas para integradores

Padrões para backends e indexadores

Gas e transações

Gas nativo e envio de transações