getTokenAccountsByOwnerV2
Versão aprimorada do getTokenAccountsByOwner com recursos adicionais, incluindo paginação baseada em cursor e suporte para changedSinceSlot para recuperar eficientemente contas de token SPL pertencentes a um endereço de carteira específico.
Visão Geral
getTokenAccountsByOwnerV2 é uma versão aprimorada do método padrão getTokenAccountsByOwner, especificamente projetada para consultar com eficiência portfólios de tokens e gerenciar carteiras com extensas participações de tokens. Este método introduz paginação baseada em cursor e capacidades de atualização incremental.
- Paginação baseada em cursor: Configure limites de 1 a 10.000 contas de tokens por solicitação
- Atualizações incrementais: Use
changedSinceSlotpara buscar apenas contas de tokens recentemente modificadas - Escalabilidade de portfólio: Gerencie carteiras com milhares de contas de tokens de forma eficiente
- Compatibilidade retroativa: Suporta todos os parâmetros e filtros existentes do
getTokenAccountsByOwner - Opcional
withContext:trueadicionasloteapiVersionsobresult.context; omitir oufalsee eles não são incluídos
Principais Benefícios
Grandes Portfólios
Monitoramento em Tempo Real
changedSinceSlot para atualizações incrementaiswithContext (opcional)
Booleano no objeto de configuração (params[2]). Somente a forma de result muda, não filtros, limites ou paginação. Omitido ou false: result.value é o array de contas de token. true: result.context mais result.value como um objeto (accounts, paginationKey). Se você lidar com ambos, faça um branch em Array.isArray(result.value).
Melhores Práticas de Paginação
Consulta Básica de Portfólio
Atualizações Incrementais de Portfólio
Suporte ao Programa de Tokens
Migração de getTokenAccountsByOwner
A migração é simples - basta adicionar parâmetros de paginação às suas consultas existentes:Métodos Relacionados
getTokenAccountsByOwner
getProgramAccountsV2
Parâmetros de Solicitação
confirmedfinalizedprocessed
true, retorna result.context (metadados do snapshot: slot, apiVersion) e aninha
accounts e paginationKey sob result.value como um objeto. Quando false
ou omitido, result.value é o array de contas de token para esta página, com paginationKey
em result. Mesmos filtros e limites se aplicam.base58base64base64+zstdjsonParsed
Autorizações
Corpo
A versão do protocolo JSON-RPC.
2.0 "2.0"
Um identificador único para a solicitação.
"1"
O nome do método RPC a ser invocado.
getTokenAccountsByOwnerV2 "getTokenAccountsByOwnerV2"
Parâmetros para consulta de contas de token paginadas pertencentes a uma chave pública específica.
Endereço da carteira Solana (chave pública) do proprietário da conta para consultar propriedades de token, como uma string codificada em base-58.
"A1TMhSGzQxMr1TboBKtgixKz1sS6REASMxPo1qsyTSJd"
Resposta
Contas de token paginadas recuperadas com sucesso por proprietário.
A versão do protocolo JSON-RPC.
2.0 "2.0"
Identificador que corresponde à solicitação.
"1"
Contas de token paginadas quando withContext é falso ou omitido. Corresponde ao formato conhecido onde a lista de contas é result.value como um array (não aninhado em accounts).
- sem withContext
- com withContext