Skip to main content

Обзор

В этом руководстве рассматривается чтение данных взаимозаменяемых токенов в Solana: балансы аккаунтов, токен-аккаунты по владельцу или минту, общий объем предложения, крупнейшие держатели и расширение взаимозаменяемых токенов DAS. Helius предоставляет как стандартные RPC-методы Solana для токенов, так и методы DAS, которые добавляют метаданные и цены в USD. Информацию об NFT, сжатых NFT, редакциях и доказательствах см. в руководстве по получению активов. Эта страница посвящена взаимозаменяемым токенам (SPL и Token-2022).

Когда это использовать

Используйте методы на этой странице, когда вам нужно:
  • Получить баланс отдельного токен-аккаунта
  • Вывести список всех токен-аккаунтов кошелька
  • Найти все аккаунты, содержащие токен определенного минта
  • Проверить общий объем предложения токена или найти его крупнейших держателей
  • Получить метаданные токена и цену в USD вместе с балансами

Баланс токен-аккаунта

Получите баланс определенного токен-аккаунта с помощью стандартного RPC:

API Reference

getTokenAccountBalance

Токен-аккаунты по владельцу

Получите список всех токен-аккаунтов, принадлежащих кошельку:

API Reference

getTokenAccountsByOwner

Токен-аккаунты по минту

Получите список всех аккаунтов, содержащих определенный токен:

API Reference

getTokenAccountsByOwner
Чтобы найти все аккаунты, содержащие токен определенного минта, среди всех владельцев, а не только одного, используйте описанный ниже метод DAS getTokenAccounts.

Объем предложения токена

Проверьте общий объем предложения токена:

API Reference

getTokenSupply

Крупнейшие держатели токена

Определите крупнейшие аккаунты, содержащие токен:

API Reference

getTokenLargestAccounts
Возвращает до 20 крупнейших аккаунтов для минта:

Токен-аккаунты через DAS API

Метод DAS getTokenAccounts возвращает токен-аккаунты по минту или владельцу вместе с балансами за один запрос с пагинацией. В отличие от getTokenAccountsByOwner, можно выполнить запрос только по mint, чтобы получить список всех аккаунтов, содержащих токен, среди всех владельцев.

API Reference

getTokenAccounts
Результаты разбиты на страницы; каждая запись содержит аккаунт, минт, владельца и баланс:

Метаданные и цена токена через DAS API

Чтобы получить метаданные токена и цену в USD, вызовите метод DAS getAsset с включенным параметром showFungible. Цены проверенных токенов возвращаются в поле token_info.price_info.
Данные о ценах из getAsset кешируются на срок до 600 секунд, поэтому они могут быть устаревшими на величину до 10 минут.

API Reference

getAsset
Ответ возвращает объем предложения, количество десятичных знаков и цену в поле token_info:

Расчет рыночной капитализации

Умножьте цену на объем предложения с учетом десятичных знаков:
Чтобы за один запрос получить список всех взаимозаменяемых токенов в кошельке вместе с балансами и ценами, используйте getAssetsByOwner или searchAssets с tokenType: "fungible". В документации по расширению взаимозаменяемых токенов описано, как tokenType, балансы, расширения Token-2022 и данные о ценах представлены в ответе.

Рекомендации

  • Используйте пагинацию для методов, возвращающих большие наборы результатов. См. руководство по пагинации.
  • Отдавайте предпочтение методам DAS (getAsset, getAssetsByOwner, getTokenAccounts), когда вам нужны метаданные или цены в USD; используйте стандартные RPC-методы для необработанных балансов и объемов предложения в блокчейне.
  • Корректно обрабатывайте ошибки с помощью блоков try/catch и повторных попыток.
  • При необходимости кешируйте ответы, чтобы сократить количество вызовов API.

Следующие шаги

Fungible Token Extension

Как DAS возвращает взаимозаменяемые токены, расширения Token-2022 и цены.

Get Assets (NFTs)

Получайте NFT, сжатые NFT, редакции и доказательства.

DAS API reference

Полные схемы для каждого метода DAS.