Зарегистрируйте свой адрес, прочитайте балансы и получите подписанный вебхук. Отправляйте запросы через Try it на страницах операций по ссылкам ниже. Схемы и примеры запросов находятся в справочнике.
Заранее выберите EVM-адрес под вашим контролем и подготовьте публично доступный HTTPS-обработчик. Он должен принимать POST, проверять подпись по исходному телу запроса и отвечать 2xx после надёжного сохранения доставки. См. проверку подписи.
Зарегистрируйтесь в личном кабинете, создайте рабочее пространство (workspace) и проект, затем выпустите ключ проекта. Для этого сценария нужны права api:blockchain:read, api:address:write, api:balance:read, api:activity:read, api:channel:write и api:subscription:write.
Сохраните полный ключ в хранилище секретов: последующие чтения показывают только фрагмент и метаданные. Укажите его как X-Api-Key в настройке авторизации справочника. Не передавайте этот ключ своему обработчику. См. Аутентификацию.
Перед каждой изменяющей операцией сохраните отдельный Idempotency-Key вместе с точным телом запроса и назначением операции. При потере ответа повторяйте тот же запрос с тем же ключом. Не создавайте новый ключ, пока исход предыдущей попытки неизвестен. Окна повтора и восстановление описаны в разделе Идемпотентность.
Откройте List blockchains и отправьте запрос через Try it. Успешный ответ подтверждает доступ ключа к каталогу сетей. Сохраните CAIP-2 идентификатор поддерживаемой EVM-сети для выбранного адреса, например eip155:1 для Ethereum. При чтении каталога учитывайте пагинацию.
Откройте Create external address. Выберите пример from_address, замените input.value своим EVM-адресом, оставьте input.chain_family: evm и задайте понятную метку. Укажите сохранённый ключ идемпотентности и отправьте запрос.
Сохраните канонический value адреса и метку из ответа для последующих запросов и сверки. Регистрация действует в рамках семейства сетей; она не переводит средства и не даёт Vilna права подписи. Поддержка других семейств отличается: для solana доступны регистрация и определение токенов, но не балансы и мониторинг транзакций. См. Основные понятия.
Используйте Summarize balances с family=evm для итогов проекта или Search balances, передав возвращённый адрес в addresses, для одного адреса. При необходимости ограничьте поиск выбранной сетью через chain_gids. Оба результата разбиты на страницы и относятся к одному семейству; другие поддерживаемые семейства запрашивайте отдельно.
В List activity доступны изменения балансов. У неиспользованного адреса может не быть записей баланса или активности. Для расчётов используйте целочисленные строки base, для отображения - formatted. См. Суммы.
- Откройте Create channel. Задайте понятное имя, выберите конфигурацию вебхука, укажите HTTPS URL обработчика и
payload_version: v2. Отправьте запрос с отдельным сохранённым ключом идемпотентности. Сразу сохранитеid, имя канала иwebhook_secretиз ответа. Окно повтора ответа с секретом ограничено; см. Идемпотентность. - Откройте Test channel, укажите сохранённый ID канала и
family=evm. Используйте отдельный сохранённый ключ идемпотентности. Ответ202означает принятие теста, а не доставку. Проверьте подписанную тестовую доставку в обработчике и его ответ 2xx. Тест проверяет доставку без активности в блокчейне и не создаёт подписку. - Откройте Create subscription. Задайте имя, сохранённый
channel_id,family=evmи триггерblockсafter_blocks: 0. Для ограничения выбранной сетью задайте её ID вfilters.chain_gids. Установитеis_noise_filtered: true. Сохраните намерение и тело запроса перед отправкой. Сохраните ID и имя подписки из ответа. Новая конфигурация возвращает201, точное совпадение с существующей может вернуть200. - Дождитесь новой подходящей транзакции с отслеживаемым адресом. Подписка сама не создаёт активность в блокчейне. Убедитесь, что обработчик проверил и сохранил настоящее событие: у него
is_test: false.
Уведомление с after_blocks: 0 сообщает о раннем включении в блок, а не об окончательности. Применяйте свою политику подтверждений и сверяйте состояние транзакции перед зачислением. См. События и мониторинг и сверку состояния.
Сохраняйте ID события для обработки дубликатов, а ID канала и подписки - для управления ими. В Паттернах интеграции описаны сценарии депозитов, казначейства и счетов.