跳转到主要内容

什么是 Solana webhooks?

Solana webhooks 是当链上事件发生时,实时通过 HTTP 通知发送到您的应用程序。与其不断轮询区块链,Helius 会在钱包转移资金、NFT 销售或任何监控的交易类型触发时,将解析的交易数据直接推送到您的端点。使用 webhooks 来支持交易机器人、分析仪表盘、合规流水线和事件驱动的自动化。 我们提供了用户友好的界面、程序化 API 和 SDK 访问,以便轻松创建和管理 webhooks。有关常见问题,请参见 Webhooks FAQ。 对于需要实时解析交易的新项目,可以考虑使用解析流。它是 Enhanced Transaction Webhooks 的后继方案,可通过 IDL 目录解码每条指令,并在服务器端按程序、账户和指令名称进行筛选。所有套餐均按每个事件 1 积分计费。
如果你的服务器未成功响应,Helius 可能会重试投递 Webhook,因此你可能会收到重复事件。有关重试和处理重复事件的详细信息,请参阅 Webhooks 常见问题。

定价

当 Helius 处理 Webhook 事件并将其发送到你的端点时,每个事件将收取 1 积分。无论你的端点能否成功处理 Webhook,都将收取费用。通过 API 编辑、添加或删除 Webhook 的费用为每个请求 100 积分。

Webhook 类型

我们目前提供多种针对不同需求的 Webhook:

Enhanced Transaction Webhooks

提供与你所监控地址相关的特定交易类型(例如 NFT 销售)的易读解析数据。如果你需要经过筛选且可直接采取行动的信息,这是理想选择。

Raw Transaction Webhooks

此选项会提供涉及你所监控地址的所有交易的原始交易数据,但不支持按交易类型筛选。
Raw Transaction Webhooks 无需解析事件类型,因此延迟更低。

Discord Webhooks

将特定交易类型的更新以格式化消息的形式直接流式发送到指定的 Discord 频道。要使用此选项,你必须提交 Discord Webhook URL。

事件载荷示例

开始使用

Webhooks Quickstart

通过控制面板、REST API 或官方 TypeScript / Rust SDK 创建你的第一个 Webhook。

自动禁用投递失败的 Webhook

Helius 会监控 Webhook 端点的运行状况,并自动禁用持续接收投递失败的 Webhook。这可以避免继续尝试向无法访问或发生故障的端点投递,从而造成浪费。

工作原理

  • **付费套餐(Dev 及以上):**如果 Webhook 在 7 天内的失败率 ≥ 95%,系统将自动禁用它。
  • **免费套餐:**系统会在 24 小时的时间窗口内评估 Webhook,并采用相同的失败率阈值。
系统每 4 小时检查一次 Webhook 的运行状况。Webhook 被禁用后,投递将在数秒内停止。

电子邮件通知

使用 Dev 及以上套餐的用户会在 Webhook 被自动禁用时收到电子邮件通知。

重新启用已禁用的 Webhook

1

Fix your endpoint

解决导致投递失败的问题(例如服务器停机、URL 不正确或端点错误)。
2

Log in to the Helius Dashboard

3

Re-enable the webhook

找到已禁用的 Webhook,然后将其重新开启。
你也可以通过切换 Webhook 状态的 API 端点,以编程方式重新启用 Webhook。
重新启用后,Webhook 将进入 24 小时宽限期,在此期间不会再次被自动禁用。这让你有时间确认端点运行正常。

使用示例

机器人

  • 当某个 NFT 在市场 X 上架时,触发“NFT 购买”操作。
  • 当某个保证金头寸状况不健康时,触发“清算”操作。

监控和警报

  • 当程序发出特定日志时,触发 PagerDuty 集成。
  • 当代币账户余额的变动超过 X% 时,使用 Dialect 发出警告。

事件驱动型索引

  • 当指定程序发生任何交易时,将其直接发送到你的数据库或后端。

通知和活动跟踪

  • 从钱包 X 向钱包 Y 转账时,发送 Slack 通知或电子邮件。

分析和日志

  • 当事件 X 发生时,将其发送到 ETL 流水线,或直接将其持久化到 Helius,以查看长期趋势。

工作流自动化

  • 当事件 X 发生时,触发任意一组操作。