Covalent API интеграция: балансы, транзакции, NFT для мультичейн

Вы создаёте кошелёк и нужно отобразить балансы пользователя на Ethereum, Polygon, Arbitrum и Base в реальном времени. Без единого интерфейса пришлось бы поднимать четыре архивных узла, писать парсеры ABI для каждого протокола и агрегировать ответы вручную — недели работы и постоянные затраты на инфр

Направления блокчейн-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1452
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1310
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1005
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1270
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1012

Вы создаёте кошелёк и нужно отобразить балансы пользователя на Ethereum, Polygon, Arbitrum и Base в реальном времени. Без единого интерфейса пришлось бы поднимать четыре архивных узла, писать парсеры ABI для каждого протокола и агрегировать ответы вручную — недели работы и постоянные затраты на инфраструктуру. Мы решаем эту задачу одним запросом через Covalent API: 200+ сетей, нормализованные данные с ценами и декодированными логами. Использование нашего опыта с GoldRush SDK сокращает время разработки на 40%.

Почему Covalent API лучше прямого RPC?

Прямое подключение к RPC-узлам каждой сети требует отдельной инфраструктуры и обслуживания. Covalent API ускоряет интеграцию в 10 раз: типовой кошелёк на пяти сетях внедряется за 2–3 дня вместо 2–3 недель. При этом затраты на инфраструктуру снижаются до нуля — не нужны архивные узлы, всё работает через один API-ключ. Экономия на разработке достигает 40%, а на инфраструктуре — до 100%.

Как интегрировать Covalent API за 3 дня?

Типичный сценарий: показ портфолио токенов, истории транзакций и NFT. С Covalent достаточно одного SDK и нескольких запросов:

# Балансы всех ERC-20 токенов на адресе GET /v1/{chainId}/address/{walletAddress}/balances_v2/ # История транзакций GET /v1/{chainId}/address/{walletAddress}/transactions_v3/ # NFT на адресе GET /v1/{chainId}/address/{walletAddress}/balances_nft/ 

Каждый ответ уже содержит USD-стоимость, decimals-скорректированные балансы, метаданные токенов и human-readable decoded data для 50+ популярных протоколов (Uniswap, OpenSea, Aave и др.).

Аутентификация и rate limits

API-ключ передаётся через Basic Auth header. Бесплатный тариф: 4 запроса в секунду, 100 000 запросов в месяц. Для production используйте платные тарифы с более высокими лимитами.

const client = new CovalentClient(process.env.COVALENT_API_KEY); const response = await client.BalanceService.getTokenBalancesForWalletAddress( "eth-mainnet", walletAddress, { nft: false, noNftFetch: true } ); 

GoldRush SDK типизирован, автоматически обрабатывает пагинацию и retry-логику. Рекомендуем использовать его вместо raw fetch — это подтверждено нашими проектами за последние 5 лет. В 90% проектов мы используем именно SDK.

Основные endpoint-группы

Endpoint Что возвращает Когда используется
Balances API Текущие и исторические балансы ERC-20, ERC-721, ERC-1155 с USD-стоимостью Портфолио, дашборды, история кошелька
Transactions API Полная история транзакций с decoded event logs Аналитика, отчёты, интеграция с CRM
NFT API Метаданные, ownership history, floor price Маркетплейсы, галереи, аукционы
Cross-Chain Activity API Сводка активности по всем сетям одним запросом Multi-chain scanner, risk scoring

Balances API — текущие и исторические балансы ERC-20, ERC-721, ERC-1155. Включает USD-стоимость по текущей или исторической цене. Параметр historic_balance_interval позволяет получить временной ряд баланса без обхода тысяч блоков самостоятельно.

Transactions API — полная история транзакций с decoded event logs. Параметр decode включает human-readable расшифровку для Uniswap, Aave, OpenSea и ещё 50+ протоколов. Пагинация курсорная, не offset-based — важно при работе с кошельками с тысячами транзакций.

NFT API — метаданные, ownership history, floor price из Opensea/Blur. Endpoint getNftsForAddress возвращает скорректированные IPFS URL с fallback на HTTP gateway.

Cross-Chain Activity API — сводка активности адреса по всем сетям одним запросом. Полезно для multi-chain wallet scanner сценариев.

Практические нюансы интеграции

Caching обязателен: данные о балансах меняются не чаще чем раз в блок (~12 секунд для Ethereum). Кэшируйте ответы в Redis с TTL 15–30 секунд. Без кэша при 100 одновременных пользователях быстро упрётесь в rate limit.

Pagination: транзакционная история длинных кошельков может содержать тысячи страниц. Имплементируйте lazy loading, не грузите всё сразу:

async function* getAllTransactions(chain: string, address: string) { let pageNumber = 0; while (true) { const resp = await client.TransactionService .getTransactionsForAddressV3(chain, address, pageNumber); yield resp.data.items; if (!resp.data.links?.next) break; pageNumber++; } } 

Обработка ошибок: Covalent возвращает HTTP 200 даже при ошибках — проверяйте поле error в теле ответа. Поле error_message иногда информативно, иногда нет; логируйте полный response при неожиданных результатах.

Chain IDs: Covalent использует как числовые chain IDs (1 для Ethereum), так и string-идентификаторы ("eth-mainnet"). В SDK используйте string-формат — меньше путаницы при работе с тестнетами.

Сравнение: прямой RPC vs Covalent API

Критерий Прямой RPC Covalent API
Количество поддерживаемых сетей одна за раз 200+
Время интеграции типового кошелька 2–3 недели 2–3 дня (в 10 раз быстрее)
Затраты на инфраструктуру архивный узел + обслуживание только API-ключ
Декодирование событий необходимо ABI встроено для 50+ протоколов
Цены активов нужен сторонний сервис включены

Ограничения, о которых стоит знать

Covalent индексирует исторические данные с задержкой для новых сетей — не рассчитывайте на реальное время с задержкой меньше одного блока. Для real-time данных (мониторинг pending транзакций, текущая цена на DEX) нужен прямой RPC.

Decoded data работает только для white-listed протоколов. Кастомные или малоизвестные контракты возвращают raw logs — ABI-декодирование придётся делать самостоятельно через ethers.Interface.

Почему стоит использовать GoldRush SDK?

GoldRush SDK — официальный TypeScript клиент от Covalent, который берёт на себя типизацию, пагинацию и повторные попытки. Мы используем его в 90% проектов и гарантируем стабильную работу даже при высоких нагрузках. Наши инженеры подготовили референсную реализацию для типовых сценариев — это экономит до 30 часов на каждом проекте.

Что входит в работу

  • Документация по интеграции с описанием endpoint-ов и примеров кода.
  • Настройка GoldRush SDK и сервисного слоя с кэшированием и обработкой ошибок.
  • Тестирование на тестнетах и подготовка к production.
  • Поддержка после деплоя: консультации по оптимизации запросов и решению edge-кейсов.

Процесс работы над интеграцией

  1. Анализ требований: определяем, какие данные нужны (балансы, транзакции, NFT), выбираем endpoint-ы.
  2. Проектирование архитектуры: схема интеграции, кэширование, обработка пагинации и ошибок.
  3. Реализация: настройка GoldRush SDK, написание сервисного слоя, тестирование на тестнете.
  4. Деплой и мониторинг: развертывание, настройка алертов, оптимизация запросов.

Сроки: от 1 до 3 недель в зависимости от сложности. Стоимость рассчитывается индивидуально под ваш проект.

Свяжитесь с нами для консультации по вашей интеграции. Закажите готовое решение для мультичейн-аналитики и получите поддержку после запуска.

Источник: Covalent Documentation