explorers_balance on bsc fails with Etherscan API error: Free API access is not supported for this chain, even though the chain is registered and the etherscan provider declares it in SUPPORTED_CHAINS. With ETHERSCAN_API_KEY set, resolveProvider prefers etherscan over blockscout, and blockscout has no BSC instance (CHAIN_BASES covers eth, base, arbitrum, optimism, gnosis, polygon, linea, scroll, zksync). Net result: the unified layer has no working BSC path on a free plan.
Bit me today. Syndicate's 200 USDC prize sits on BSC, verifying it meant dropping to a raw curl against bsc-dataseed. The chains registry already carries rpc: https://bsc-rpc.publicnode.com for bsc, so the stack knows the endpoint, it just never gets used.
Add an RPC-based fallback for chains where the configured provider gated the request (etherscan free plan), sourced from the chains registry rpc field, or at least route bsc to a keyless provider when the paid plan does not cover it.
explorers_balanceonbscfails withEtherscan API error: Free API access is not supported for this chain, even though the chain is registered and the etherscan provider declares it inSUPPORTED_CHAINS. WithETHERSCAN_API_KEYset,resolveProviderprefers etherscan over blockscout, and blockscout has no BSC instance (CHAIN_BASEScovers eth, base, arbitrum, optimism, gnosis, polygon, linea, scroll, zksync). Net result: the unified layer has no working BSC path on a free plan.Bit me today. Syndicate's 200 USDC prize sits on BSC, verifying it meant dropping to a raw
curlagainst bsc-dataseed. The chains registry already carriesrpc: https://bsc-rpc.publicnode.comfor bsc, so the stack knows the endpoint, it just never gets used.Add an RPC-based fallback for chains where the configured provider gated the request (etherscan free plan), sourced from the chains registry
rpcfield, or at least route bsc to a keyless provider when the paid plan does not cover it.