getBalance é uma forma simples de descobrir o saldo SOL nativo de qualquer conta na blockchain Solana. Ele retorna o saldo em lamports (1 SOL = 1.000.000.000 lamports).
Este método é mais leve do que getAccountInfo se você somente precisar do saldo em SOL e nenhum outro detalhe da conta.
Caso de Uso Principal
- Verificar Rapidamente o Saldo de SOL de uma Conta: O uso principal é determinar quanto SOL uma conta (carteira, programa, etc.) possui.
Parâmetros
-
publicKey(string, obrigatório): A chave pública codificada em base-58 da conta a ser consultada. -
config(objeto, opcional): Um objeto de configuração com os seguintes campos:commitment(string, opcional): Especifica o nível de compromisso a ser usado para a consulta. O padrão éfinalized.finalized: O nó consultará o bloco mais recente confirmado pela supermaioria do cluster como tendo atingido o bloqueio máximo.confirmed: O nó consultará o bloco mais recente que foi votado por uma supermaioria do cluster.processed: O nó consultará seu bloco mais recente. Note que o bloco pode não estar completo.
minContextSlot(número, opcional): O slot mínimo que a solicitação pode ser avaliada.
Resposta
O camporesult da resposta JSON-RPC será um objeto contendo:
context(objeto):slot(número): O slot em que o saldo foi recuperado.apiVersion(string, opcional): A versão da API RPC (pode não estar presente em todos os nós).
value(número): O saldo da conta em lamports (inteiro sem sinal de 64 bits).
getBalance geralmente retornará um valor de 0 lamports.
Exemplo: Obtendo o Saldo de uma Conta
Vamos verificar o saldo SOL do ID do Programa Serum V3 (9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin) na mainnet. Esta conta de programa em si possui SOL para isenção de aluguel.
Nota: Substitua YOUR_API_KEY pela sua chave de API Helius real nos exemplos abaixo.
Dicas para Desenvolvedores
- Simplicidade para Saldo SOL: Se você precisa apenas do saldo SOL de uma conta e nenhum outro dado on-chain (como proprietário, dados ou status executável),
getBalanceé mais eficiente do quegetAccountInfopois busca menos dados. - Contas Inexistentes: Se uma conta não existe on-chain (nunca foi inicializada ou teve SOL),
getBalanceretornará0. Esta pode ser uma maneira rápida de verificar a existência da conta se você só se importa com seu saldo SOL. - Lamports vs. SOL: Lembre-se de que o saldo é retornado em lamports. Você precisará dividir por
LAMPORTS_PER_SOL(1.000.000.000) para convertê-lo para SOL. - Níveis de Compromisso: A escolha de
commitmentpode afetar a rapidez com que você obtém o saldo e quão confirmado esse saldo está. Para a maioria dos propósitos de exibição em UI,confirmedoferece um bom equilíbrio. Para transações financeiras críticas,finalizedfornece a maior garantia. Veja Níveis de Compromisso do Solana para informações detalhadas. - Agrupamento com
getMultipleAccounts: EnquantogetBalanceé para uma única conta, se você precisar de saldos para muitas contas, usargetMultipleAccountse então extrair o saldo lamport das informações de cada conta pode ser mais eficiente do que muitas chamadas individuaisgetBalance.
Métodos Relacionados
getAccountInfo
Obtenha detalhes completos da conta, incluindo dados, proprietário e status executável
getMultipleAccounts
Busque várias contas em uma única solicitação