Перейти к основному содержимому

Поиск токенов и API обозревателей

Pali может использовать API обозревателя для поиска токенов и NFT, которые можно импортировать. Вы также можете добавить актив по адресу его контракта. Балансы импортированных токенов считываются через RPC сети, поэтому автоматический поиск необязателен.

Что работает по умолчанию​

СетьАвтоматический поискЕсли актив не найден
Основная сеть EthereumRoutescan, без учётной записи и API-ключа. Поддерживаются токены ERC-20 и поддерживаемые активы ERC-721/ERC-1155.Используйте Импорт токена → Добавить пользовательский.
BaseAPI для поиска по умолчанию не задан. Сеть и её RPC остаются доступны.Добавьте активы по адресу контракта или настройте совместимый API обозревателя, к которому у вас есть доступ.
Arbitrum OneAPI для поиска по умолчанию не задан. Сеть и её RPC остаются доступны.Добавьте активы по адресу контракта или настройте совместимый API обозревателя, к которому у вас есть доступ.
Другие сети EVMЗависит от API обозревателя, настроенного для этой сети.Если поиск недоступен, добавьте активы по адресу контракта.

Если API обозревателя не настроен, Pali сразу показывает форму ввода адреса контракта без вкладок, с кратким уведомлением и ссылкой Помощь с импортом токенов. Удаление URL API не удаляет сеть или импортированные в ней активы. Без API обозревателя история транзакций опирается на локально сохранённые транзакции и запросы RPC; полная более ранняя история может не восстановиться.

Добавление токена или NFT вручную​

  1. Выберите нужную сеть и аккаунт.
  2. Откройте Импорт токена. Если отображаются вкладки, выберите Добавить пользовательский.
  3. Введите адрес контракта актива в этой сети.
  4. Проверьте найденные сведения об активе. Для актива ERC-1155 также укажите его идентификатор токена.
  5. Импортируйте актив.

Используйте адрес контракта, опубликованный проектом или указанный в надёжном обозревателе. Несвязанные контракты могут использовать одинаковое название токена, а один и тот же адрес в разных сетях может соответствовать разным активам.

Настройка API обозревателя​

URL RPC, сайт обозревателя и URL API обозревателя служат разным целям. RPC подключает Pali к сети; сайт обозревателя открывает адреса и транзакции в браузере; API обозревателя предоставляет проиндексированные сведения об активах и историю транзакций.

  1. Откройте выбор сети в Pali и выберите Управление сетями.
  2. Нажмите значок карандаша рядом с сетью EVM, которую хотите изменить.
  3. Найдите поле URL API обозревателя блоков (необязательно). Вставьте подходящий URL API из примеров ниже. Сохраните существующие URL RPC и идентификатор сети, если не собираетесь менять и эти настройки.
  4. Нажмите Сохранить. Перед сохранением Pali проверяет RPC и базовый доступ к API обозревателя. Успешная проверка доступа не гарантирует поддержку всех конечных точек поиска или истории.
  5. Переключитесь на другую сеть, а затем вернитесь к той, которую изменили. Это обновит активную настройку API для этой сети. Снова откройте Импорт токена → Ваши токены, чтобы загрузить сведения об активах через новый API.

Чтобы добавить новую сеть, выберите Пользовательский RPC в меню выбора сети. Эта форма содержит такое же необязательное поле API обозревателя. Чтобы отключить поиск по индексу для сети, очистите это поле и сохраните настройки.

Поддерживаемые форматы и примеры URL​

Ethereum: Routescan​

Встроенный URL API для Ethereum:

https://api.routescan.io/v2/network/mainnet/evm/1/etherscan/api

Для публичного доступа оставьте URL без ключа. Pali использует API активов Routescan для поиска, а его API, совместимый с Etherscan, — для истории транзакций. Индексация провайдера может быть неполной или задерживаться. Изменение номера сети в этом URL не означает, что Routescan поддерживает другую сеть. Список сетей и конечных точек приведён в справочнике API Routescan.

Сейчас Routescan указывает ограничение для доступа без ключа: 2 запроса в секунду и 10 000 вызовов в день. Pali выдерживает интервалы между запросами и кэширует результаты, но ограничения провайдера продолжают действовать. См. актуальные ограничения Routescan и тарифы.

Чтобы использовать личный API-ключ Routescan, замените YOUR_API_KEY в следующем URL:

https://api.routescan.io/v2/network/mainnet/evm/1/etherscan/api?apikey=YOUR_API_KEY

Pali отправляет это значение в заголовке запроса apikey, предусмотренном провайдером. Действуют ограничения вашего тарифа у провайдера.

Поиск, совместимый с Blockscout​

Pali также поддерживает API обозревателей, реализующие формат запроса Blockscout account/tokenlist. Укажите базовый URL API и необходимые параметры выбора сети или API-ключ; Pali добавит адрес аккаунта и параметры запроса поиска. См. документацию Blockscout по списку токенов.

Например, собственный сервер Blockscout или API Blockscout, предоставляемый провайдером, может использовать такой URL:

https://YOUR_BLOCKSCOUT_HOST/api

Если провайдер требует аутентификацию через параметры запроса:

https://YOUR_BLOCKSCOUT_HOST/api?apikey=YOUR_API_KEY

Имя сервера и ключ выше — заполнители. Используйте сервис, который поддерживает выбранную сеть и разрешает ваши запросы; одного URL сайта обозревателя недостаточно.

Для Base Blockscout описывает следующий формат PRO API:

https://api.blockscout.com/v2/api?chain_id=8453&apikey=YOUR_API_KEY

Для API Base от Blockscout нужны авторизованный ключ и платный тариф. Получите ключ в портале разработчиков Blockscout, подтвердите доступ к сети в вашем тарифе и замените YOUR_API_KEY. Параметр выбора сети — chain_id, с подчёркиванием. Этот пример соответствует официальной документации API Base; это не общедоступная замена без ключа.

Для Arbitrum One соответствующий идентификатор сети — 42161:

https://api.blockscout.com/v2/api?chain_id=42161&apikey=YOUR_API_KEY

Перед использованием этой настройки подтвердите у Blockscout доступ к Arbitrum и поддержку нужных конечных точек. URL соответствует описанному формату для нескольких сетей; доступность зависит от вашей учётной записи и тарифа. Pali не содержит общего ключа Blockscout.

Etherscan и Alchemy​

URL API Etherscan V2 позволяет выполнять поддерживаемые запросы истории транзакций, если ваш ключ и тариф разрешают их:

https://api.etherscan.io/v2/api?chainid=1&apikey=YOUR_API_KEY

Используйте идентификатор выбранной сети и проверьте требования Etherscan к конечным точкам и тарифам. Совместимость истории с Etherscan не означает поддержку автоматического поиска токенов. Pali не реализует отдельную конечную точку PRO для списка активов Etherscan; одного ключа Etherscan недостаточно, чтобы включить Ваши токены.

API токенов Alchemy используют другие запросы и ответы, в том числе alchemy_getTokenBalances. В Pali нет адаптера для поиска токенов через Alchemy. Конечную точку RPC Alchemy можно указать в поле URL RPC, если она подходит для вашей сети, но она не заменяет поле URL API обозревателя блоков.

API-ключи и конфиденциальность​

API-ключ обозревателя разрешает доступ к этому провайдеру, а его использование может расходовать вашу квоту. Он не связан с приватным ключом кошелька или фразой восстановления. Никогда не вводите приватный ключ кошелька или фразу восстановления в URL API.

Pali сохраняет настроенный URL API в сетевых настройках расширения. Ключ в этом URL виден любому, кто может просмотреть эти настройки или запросы расширения. Удаляйте ключи перед публикацией снимков экрана, журналов или примеров конфигурации. Сервисы обозревателей также получают публичные адреса аккаунтов, по которым вы запрашиваете сведения. См. Конфиденциальность и безопасность.

Пустые результаты, недоступные API и повторные попытки​

  • Нет дополнительных токенов для импорта: после исключения уже импортированных активов API не вернул других поддерживаемых активов. Это не доказывает, что у аккаунта нет активов: индексация и охват типов активов могут быть неполными.
  • Поиск не настроен: для сети не задан URL API обозревателя. Добавьте активы по адресу контракта или настройте совместимый сервис через Управление сетями.
  • API недоступен / доступ запрещён: проверьте конечную точку провайдера, выбранную сеть, API-ключ и тариф. Ответ 403 означает, что провайдер отказал в доступе.
  • Слишком много запросов: ответ 429 означает, что провайдер ограничивает запросы. Его квота может быть исчерпана уже при первом открытии списка. Подождите, прежде чем нажать Повторить, и проверьте лимиты провайдера, если ошибки продолжаются.

Ошибка поиска не означает, что баланс токена равен нулю. Пока индексатор недоступен, вы можете продолжать использовать Добавить пользовательский и считывать балансы через RPC.