Skip to main content
Wallet API находится на этапе бета-тестирования. Эндпоинты и форматы ответов могут измениться.

Обзор

Эндпоинт Wallet Identity идентифицирует известные адреса кошельков в Solana, включая централизованные биржи, протоколы DeFi, организации и другие распознаваемые сущности. Используйте его для обеспечения соответствия требованиям, аналитики и отображения понятных пользователю названий известных адресов. Эндпоинты для одиночного (GET /v1/wallet/{wallet}/identity) и пакетного поиска (POST /v1/wallet/batch-identity, до 100 записей) принимают домены SNS .sol и пользовательские TLD ANS (например, .bonk, .poor, .abc), а также необработанные адреса Solana. Разрешение доменов доступно только в основной сети. Этот эндпоинт использует ту же систему идентификации, на которой работает Orb — обозреватель блоков Solana от Helius. База данных содержит более 32 500 меток (понятных пользователю основных названий, включая более 3 000 программ) и более 21,5 млн тегов (категориальных свойств, таких как «адрес для пополнения Binance» или «телефон Seeker») и непрерывно пополняется. Для эндпоинтов одиночного (GET /v1/wallet/{wallet}/identity) и пакетного поиска (POST /v1/wallet/batch-identity) требуется платный тариф. Запросы с ключом API бесплатного тарифа возвращают 403 Forbidden. Полную таблицу доступности см. в разделе Требования к тарифу.

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

Используйте Wallet Identity API, когда вам необходимо:
  • Определять кошельки бирж: выяснять, принадлежит ли кошелек Binance, Coinbase, Kraken или другой бирже.
  • Отслеживать активность протоколов: определять кошельки протоколов DeFi и адреса казначейств.
  • Обеспечивать соответствие требованиям и AML: отмечать транзакции с участием известных сущностей.
  • Выполнять аналитику: классифицировать типы кошельков в конвейере данных.
  • Улучшать пользовательский интерфейс: отображать «Отправлено на Binance 1» вместо необработанного адреса.
  • Выполнять пакетную обработку: эффективно искать сотни адресов.

Быстрый старт

Поиск одного кошелька

Получите идентификационные данные для одного адреса кошелька:

Поиск по доменному имени

Вы также можете напрямую передать домен SNS .sol или пользовательский TLD ANS — эндпоинт разрешит домен и вернет идентификационные данные адреса владельца:
Ответ эндпоинта одиночного поиска представляет собой стандартный объект идентификации для разрешенного адреса — маркер inputDomain отсутствует. Если необходимо сопоставить входные данные с результатами, например при одновременном поиске нескольких доменов, используйте эндпоинт пакетного поиска.
Разрешение доменов доступно только в основной сети. В devnet/testnet передача домена этому эндпоинту возвращает 400. Успешные результаты разрешения кешируются на срок до 2 часов, поэтому недавно переданный домен может некоторое время разрешаться в идентификационные данные предыдущего владельца.

Пакетный поиск (до 100 записей)

Чтобы повысить производительность, ищите несколько записей одним запросом. Каждая запись может быть адресом или доменным именем:

Формат ответа

При успешном одиночном поиске возвращается объект идентификации разрешенного адреса:
В пакетном ответе каждая запись, для которой в качестве входных данных использовалось доменное имя, содержит дополнительное поле inputDomain. Оно позволяет сопоставить ответ с исходным запросом:
Если домен из пакетного запроса не удается разрешить, весь пакет не завершается с ошибкой. Запись возвращается на своем месте с address: null, type: "unknown" и unresolved: true. Порядок запросов сохраняется:
Эндпоинт одиночного поиска возвращает ошибку 404, если для кошелька нет идентификационной записи или если переданный домен не удалось разрешить:

Категории идентификации

Кошельки и программы распределяются по категориям на основе базы идентификационных данных Orb. Для учетных записей и программ используются разные наборы категорий. В таблицах ниже перечислены все поддерживаемые категории.
Программы (смарт-контракты) классифицируются отдельно:

Варианты использования

Пометка пополнений бирж

Определяйте случаи отправки средств на централизованную биржу:

Отображение понятных пользователю названий

Показывайте в пользовательском интерфейсе понятные названия вместо адресов:

Пакетная обработка контрагентов транзакций

Эффективно определяйте всех контрагентов в списке транзакций:

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

  • Используйте эндпоинт пакетного поиска для нескольких операций. При поиске нескольких адресов POST /v1/wallet/batch-identity работает значительно быстрее отдельных запросов.
  • Корректно обрабатывайте ответы 404. Идентификационные данные доступны не для всех кошельков. Если они отсутствуют, отображайте необработанный адрес.
  • Кешируйте результаты. Идентификационные данные изменяются редко. Кешируйте их локально, чтобы сократить количество вызовов API.
  • Соблюдайте ограничение размера пакета. Эндпоинт пакетного поиска поддерживает до 100 записей на запрос. Разделяйте более крупные наборы данных на соответствующие части.

Распространенные ошибки

Дальнейшие действия

Funding Source

Определите, кто изначально пополнил кошелек: типы источников финансирования используют те же категории идентификации.

Wallet API Overview

Все эндпоинты Wallet API и общие соглашения.

API Reference

Схемы запросов и ответов для поиска идентификационных данных.