Skip to main content
Создайте подписку. Каждая подтвержденная транзакция, соответствующая фильтру, поступает как parsedTransactionNotification уже в декодированном виде: каждая инструкция содержит именованные аргументы и аккаунты, а транзакция — комиссию, полный список ключей аккаунтов, summary уровня транзакции, а также переводы SOL и токенов.

Конечные точки

Parsed Streams доступен на всех тарифах и обслуживается через конечную точку Gatekeeper — тот же хост, который используется для трафика Helius RPC и WebSocket:
  • wss://beta.helius-rpc.com/?api-key=<API_KEY>

Авторизация

string
обязательно
Ваш ключ API Helius, переданный в параметре запроса api-key или заголовке x-api-key. Если ключ отсутствует или недействителен, запрос отклоняется с HTTP 401.

Тело запроса

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

Ответ

integer
Идентификатор подписки (необходим для отмены подписки)

Уведомления

Для каждой соответствующей транзакции отправляется одно уведомление на подписку. Внутри params.result.value:
  • transaction — полный контекст: подпись, слот, комиссия (в лампортах), полный список accountKeys, status/error, summary уровня транзакции, а также извлеченные nativeTransfers и tokenTransfers.
  • instructions — все инструкции в порядке выполнения, позиции которых определяются полями instructionIndex, innerInstructionIndex и stackHeight. Декодированные инструкции содержат именованные decoded.args и decoded.accounts (snake_case, значения u64 в виде строк); недекодированные вместо них содержат rawData и rawAccounts.
  • matchedIndexes — индексы в instructions, указывающие, какие инструкции соответствуют фильтру. При details: "matched" массив содержит только совпадения, а matchedIndexes отсутствует; при details: "raw" каждая совпавшая инструкция сокращается до своей позиции, programId и блока data в формате base58.
Подробное описание каждого поля полезных данных уведомления см. в справочнике по протоколу в кратком руководстве.

Управление подписками

Значение result из ответа на запрос подписки совпадает с числом в params.subscription каждого уведомления этой подписки. Сохраните его — оно потребуется, чтобы отменить подписку. Проект может поддерживать до 5 одновременных подключений на тарифе Free, до 10 на Developer и до 50 на Business и Professional. Этот лимит распределяется между всеми ключами API проекта. Для каждого подключения доступно до 25 подписок. Все ограничения приведены в обзоре.