getTokenAccountsByOwnerV2
getTokenAccountsByOwnerV2 est une version améliorée de getTokenAccountsByOwner avec pagination par curseur et mises à jour changedSinceSlot pour les grands portefeuilles de tokens Solana.
Vue d’ensemble
getTokenAccountsByOwnerV2 est une version améliorée de la méthode standard getTokenAccountsByOwner, spécifiquement conçue pour interroger efficacement les portefeuilles de tokens et gérer les portefeuilles avec de vastes avoirs en tokens. Cette méthode introduit la pagination basée sur des curseurs et des capacités de mise à jour incrémentielle.
- Pagination basée sur des curseurs : Configurez des limites de 1 à 10 000 comptes de tokens par requête
- Mises à jour incrémentielles : Utilisez
changedSinceSlotpour récupérer uniquement les comptes de tokens récemment modifiés - Évolutivité des portefeuilles : Gérez efficacement les portefeuilles avec des milliers de comptes de tokens
- Compatibilité ascendante : Prend en charge tous les paramètres et filtres existants de
getTokenAccountsByOwner withContextfacultatif :trueajouteslotetapiVersionsousresult.context; omettre oufalseet ils ne sont pas inclus
Principaux avantages
Grands portefeuilles
Suivi en temps réel
changedSinceSlot pour les mises à jour incrémentielleswithContext (facultatif)
Booléen sur l’objet de configuration (params[2]). Seule la structure de result change, pas les filtres, limites ou pagination. Omit ou false : result.value est le tableau des comptes de tokens. true : result.context plus result.value en tant qu’objet (accounts, paginationKey). Si vous gérez les deux, branchez-vous sur Array.isArray(result.value).
Meilleures pratiques de pagination
Requête de portefeuille de base
Mises à jour incrémentielles du portefeuille
Support de programme de token
Migration depuis getTokenAccountsByOwner
La migration est simple - ajoutez simplement des paramètres de pagination à vos requêtes existantes :Méthodes associées
getTokenAccountsByOwner
getProgramAccountsV2
Paramètres de requête
confirmedfinalizedprocessed
true, retourne result.context (métadonnées de snapshot : slot, apiVersion) et imbrique
accounts et paginationKey sous result.value comme un objet. Quand false
ou omis, result.value est le tableau de comptes de tokens pour cette page, avec paginationKey
sur result. Les mêmes filtres et limites s’appliquent.base58base64base64+zstdjsonParsed
Autorisations
Votre clé API Helius. Vous pouvez en obtenir une gratuitement sur le tableau de bord.
Corps
La version du protocole JSON-RPC.
2.0 "2.0"
Un identifiant unique pour la demande.
"1"
Le nom de la méthode RPC à invoquer.
getTokenAccountsByOwnerV2 "getTokenAccountsByOwnerV2"
Paramètres pour interroger les comptes de jetons paginés détenus par une clé publique spécifique.
Adresse du portefeuille Solana (clé publique) du propriétaire du compte pour interroger les avoirs en jetons, sous forme de chaîne encodée en base-58.
"A1TMhSGzQxMr1TboBKtgixKz1sS6REASMxPo1qsyTSJd"
Réponse
Récupération réussie des comptes de jetons paginés par propriétaire.
La version du protocole JSON-RPC.
2.0 "2.0"
Identifiant correspondant à la demande.
"1"
Comptes de jetons paginés lorsque withContext est faux ou omis. Correspond à la forme familière où la liste des comptes est result.value sous forme de tableau (non imbriqué sous accounts).
- without withContext
- with withContext