Skip to main content

Solana webhookとは何ですか?

Solana webhookは、オンチェーンイベントが発生したときにアプリケーションに送信されるリアルタイムのHTTP通知です。ブロックチェーンを継続的にポーリングする代わりに、Heliusはウォレットが資金を転送したり、NFTが売れたり、監視しているトランザクションタイプが発生したりすると、解析済みのトランザクションデータを直接エンドポイントにプッシュします。トレーディングボット、分析ダッシュボード、コンプライアンスパイプライン、イベント駆動の自動化を強化します。 ユーザーフレンドリーなインターフェース、プログラムAPI、SDKアクセスを提供して、webhookの作成と管理を容易にします。よくある質問については、Webhooks FAQを参照してください。 リアルタイムでパース済みトランザクションを必要とする新規開発では、Parsed Streamsをご検討ください。これはEnhanced Transaction Webhooksの後継機能であり、IDLカタログを使用してすべての命令をデコードし、プログラム、アカウント、命令名に基づいてサーバー側でフィルタリングします。すべてのプランで、イベント1件あたり同じ1クレジットが課金されます。
サーバーが正常なレスポンスを返さない場合、HeliusがWebhookの配信を再試行することがあり、重複したイベントを受信する可能性があります。再試行と重複イベントの処理について詳しくは、Webhooks FAQをご覧ください。

料金

Webhookイベントは、Heliusがイベントを処理してエンドポイントに送信した時点で、1クレジットが課金されます。エンドポイントがWebhookを正常に処理できたかどうかにかかわらず課金されます。APIを介したWebhookの編集、追加、削除には、リクエスト1件あたり100クレジットがかかります。

Webhookの種類

現在、さまざまなニーズに合わせて複数の種類のWebhookを提供しています。

Enhanced Transaction Webhooks

監視対象のアドレスに関連する特定のトランザクションタイプ(NFT販売など)について、人間が読みやすいパース済みデータを提供します。フィルタリング済みで、すぐに活用できる情報が必要な場合に最適です。

Raw Transaction Webhooks

このオプションは、監視対象のアドレスが関係するすべてのトランザクションについて、未加工のトランザクションデータを配信します。トランザクションタイプによるフィルタリングはできません。
Raw Transaction Webhooksではイベントタイプのパースを行わないため、レイテンシーが低くなります。

Discord Webhooks

特定のトランザクションタイプの更新を、書式設定されたメッセージとして指定のDiscordチャンネルに直接ストリーミングします。このオプションを使用するには、Discord Webhook URLを送信する必要があります。

イベントペイロードの例

はじめに

Webhooks Quickstart

Dashboard、REST API、または公式のTypeScript / Rust SDKを使用して、最初のWebhookを作成します。

失敗しているWebhookの自動無効化

HeliusはWebhookエンドポイントの健全性を監視し、配信の受信に継続的に失敗しているWebhookを自動的に無効化します。これにより、到達不能または障害が発生しているエンドポイントへの無駄な配信試行を防ぎます。

仕組み

  • 有料プラン(Dev以上): 7日間の失敗率が95%以上のWebhookは自動的に無効化されます。
  • 無料プラン: Webhookは、同じ失敗率のしきい値を使用して24時間の期間で評価されます。
システムは4時間ごとにWebhookの健全性を確認します。Webhookが無効化されると、数秒以内に配信が停止します。

メール通知

Devプラン以上のユーザーには、Webhookが自動的に無効化された際にメール通知が送信されます。

無効化されたWebhookの再有効化

1

Fix your endpoint

配信失敗の原因となっている問題(サーバーのダウン、URLの誤り、エンドポイントのエラーなど)を解決します。
2

Log in to the Helius Dashboard

Helius Dashboardに移動します。
3

Re-enable the webhook

無効化されたWebhookを見つけ、トグルをオンに戻します。
Toggle Webhook API endpointを使用して、プログラムからWebhookを再有効化することもできます。
再有効化すると、Webhookは24時間の猶予期間に入り、その間は再び自動的に無効化されることはありません。これにより、エンドポイントが正常であることを確認する時間が確保されます。

使用例

ボット

  • NFTがマーケットプレイスXに出品されたら、「NFT購入」アクションをトリガーします。
  • マージンポジションが健全でなくなったら、「清算」アクションをトリガーします。

監視とアラート

  • プログラムが特定のログを出力したら、PagerDuty連携をトリガーします。
  • トークンアカウントの残高がX%を超えて変化したら、Dialectを使用して警告アクションを通知します。

イベント駆動型インデックス作成

  • 特定のプログラムでトランザクションが発生したら、データベースまたはバックエンドに直接送信します。

通知とアクティビティ追跡

  • ウォレットXからウォレットYへの送金が発生したら、Slack通知またはメールを送信します。

分析とログ

  • イベントXが発生したら、ETLパイプラインに送信するか、長期的な傾向を確認できるようHeliusに直接保存します。

ワークフローの自動化

  • イベントXが発生したら、任意の一連のアクションをトリガーします。