OpenAPI Specification
View the complete OpenAPI specification for this REST API.
概要
The Webhooks REST API enables you to deploy and manage your Webhooks using a REST API interface.
Adding, updating, and managing your Webhooks is quick and easy!
アクセス
To access the Webhooks REST API, you will first need to create an API key. Your API key should be set as an x-api-key header with your requests.
API Base URL: https://api.quicknode.com/
対応ネットワーク
The Webhooks REST API is available on these chains and networks:
| チェーン | メインネット | テストネット |
|---|---|---|
| 0g | ✅ | Galileo Testnet |
| 要旨 | ✅ | テストネット |
| Arbitrum | ✅ | セポリア |
| Arbitrum Nova | ✅ | |
| アーク | テストネット | |
| オルト | ✅ | テストネット |
| Avalanche C-Chain | ✅ | Fuji |
| B3 | ✅ | セポリア |
| ベース | ✅ | セポリア |
| Bera | ✅ | Bepolia |
| ビットコイン | ✅ | テストネット4 |
| ビットコインキャッシュ | ✅ | テストネット |
| 爆発 | ✅ | セポリア |
| BNBスマートチェーン | ✅ | テストネット |
| Celo | ✅ | |
| サイバー | ✅ | セポリア |
| ドージコイン | ✅ | |
| イーサリアム | ✅ | Hoodi, Sepolia |
| ファントム | ✅ | |
| フレア | ✅ | テストネット |
| フロー | ✅ | テストネット |
| 流暢 | テストネット | |
| フラクタル | ✅ | |
| グノーシス | ✅ | |
| 重力 | ✅ | |
| ヘデラ | ✅ | テストネット |
| ヘミ | ✅ | テストネット |
| Hyperliquid EVM | ✅ | テストネット |
| Hyperliquid Hypercore | ✅ | |
| 不変のzkEVM | ✅ | テストネット |
| 単射 | ✅ | テストネット |
| インク | ✅ | セポリア |
| ジャパン・オープン・チェーン | ✅ | |
| カイア | ✅ | テストネット |
| カタナ | ✅ | |
| レンズ | ✅ | テストネット |
| リネア | ✅ | |
| Lisk | ✅ | |
| ライトコイン | ✅ | テストネット |
| マントル | ✅ | セポリア |
| MegaETH | ✅ | |
| モカ | テストネット | |
| モード | ✅ | |
| モナド | ✅ | テストネット |
| モーフ | ✅ | Hoodi |
| 楽観主義 | ✅ | セポリア |
| Peaq | ✅ | |
| プラズマ | ✅ | テストネット |
| ポリゴン | ✅ | Amoy |
| Polygon zkEVM | ✅ | Cardona Testnet |
| ロビンフッド | ✅ | テストネット |
| サハラ | テストネット | |
| スクロール | ✅ | テストネット |
| セイ | ✅ | テストネット |
| ソラナ | ✅ | Devnet, Testnet |
| ソネイウム | ✅ | |
| ソニック | ✅ | |
| ソフォン | ✅ | |
| ステラ | ✅ | テストネット |
| DATA | ✅ | Aeneid Testnet |
| テンポ | ✅ | テストネット |
| トロン | ✅ | |
| ユニチェーン | ✅ | セポリア |
| ヴァナ | ✅ | Moksha Testnet |
| Worldchain | ✅ | セポリア |
| X層 | ✅ | テストネット |
| Xai | ✅ | セポリア |
| XRPレジャー | ✅ | テストネット |
| XRPL EVM | ✅ | テストネット |
| zkSync | ✅ | セポリア |
| ゾラ | ✅ |
APIエンドポイント
The Webhooks REST API provides the following endpoints for managing your webhooks:
Creating Webhooks
Webhooks are created using predefined templates that cover common use cases:
- Create Webhook from Template: Create a webhook using predefined templates
If you need a filter that isn't covered by our templates, please contact support to request a new template. For advanced filtering capabilities with custom JavaScript functions, consider using Streams.
Available Templates
- evmWalletFilter: Monitor specific EVM wallet addresses
- evmContractEvents: Monitor specific contract events
- evmAbiFilter: Monitor contracts using ABI definitions
- solanaWalletFilter: Monitor specific Solana account addresses
- bitcoinWalletFilter: Monitor specific Bitcoin wallet addresses
- xrplWalletFilter: Monitor specific XRP Ledger wallet addresses
- hyperliquidWalletEventsFilter: Monitor specific Hyperliquid wallet addresses
- stellarWalletTransactionsSourceAccountFilter: Monitor specific Stellar wallet addresses
How to use templates: When creating a webhook from a template, the templateArgs object contains the template-specific properties directly. The template type is specified in the URL path (/webhooks/template/{templateId}), and the templateArgs contains the actual configuration data for that template. You can provide either inline values (e.g. wallet addresses directly) or reference names of kv store lists.
例: For the evmWalletFilter template, you would:
- Use URL:
/webhooks/template/evmWalletFilter - Include in body (inline):
"templateArgs": { "wallets": ["0x1234..."] } - Or (list reference):
"templateArgs": { "walletsListName": "my_wallets_list" }
Managing Webhooks
- Retrieve All Webhooks: List all active webhooks
- Retrieve Webhook by ID: Get details of a specific webhook
- Update Webhook: Modify an existing webhook's configuration
- Update Webhook Template: Update a webhook created from a template
- Delete Webhook by ID: Remove a specific webhook
- Delete All Webhooks: Remove all webhooks
Controlling Webhooks
- Activate Webhook: Start a paused webhook
- Pause Webhook: Temporarily pause a webhook
認証
All API requests require authentication using your Quicknode API key. Include your API key in the request headers:
x-api-key: YOUR_API_KEY
Error Handling
The API returns standard HTTP status codes:
200 OK: Request successful201 Created: Resource created successfully400 Bad Request: Invalid request parameters401 Unauthorized: Invalid or missing API key
Webhook Configuration
When creating or updating webhooks, you can configure the following parameters:
- Name: A descriptive name for your webhook
- Network: The blockchain network to monitor
- Notification Email: Email address for termination notifications
- Destination Attributes: Object containing:
- URL: The endpoint where data will be sent
- Security Token: Token for webhook authentication
- Compression: Optional gzip compression for payloads
- Status: Whether the webhook is active or paused
- Template Args: Template-specific arguments (for template-based webhooks)
Template-Based Webhooks
Template-based webhooks provide a simplified way to create common webhook configurations:
evmWalletFilter
Monitor specific EVM wallet addresses:
{
"templateArgs": {
"wallets": ["0x1234...", "0x5678..."]
}
}
evmContractEvents
Monitor specific contract events (both fields are optional, but at least one should be provided):
{
"templateArgs": {
"contracts": ["0x1234..."],
"eventHashes": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]
}
}
solanaWalletFilter
Monitor specific Solana accounts:
{
"templateArgs": {
"accounts": ["9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"]
}
}
bitcoinWalletFilter
Monitor specific Bitcoin wallet addresses:
{
"templateArgs": {
"wallets": ["bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh"]
}
}
evmAbiFilter
Monitor contracts using ABI definitions (abi is required, 契約 is optional):
{
"templateArgs": {
"abi": "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"}]}]",
"contracts": ["0x1234..."]
}
}
xrplWalletFilter
Monitor specific XRP Ledger wallet addresses:
{
"templateArgs": {
"wallets": ["rN7n3473SaZBCG4dFL83w7p1W9cgZw6]"]
}
}
hyperliquidWalletEventsFilter
Monitor specific Hyperliquid wallet addresses:
{
"templateArgs": {
"wallets": ["0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"]
}
}
stellarWalletTransactionsSourceAccountFilter
Monitor specific Stellar wallet addresses:
{
"templateArgs": {
"wallets": ["GDQP2KPQGKIHYJGXNUIYOMHARUARCA7DJT5FO2FFOOUJ3B2BNQKFIGS"]
}
}
Using List References
Instead of providing inline values, you can reference kv store lists. This is useful for managing large sets of addresses:
{
"templateArgs": {
"walletsListName": "my_wallets_list"
}
}
For contract events with kv store lists:
{
"templateArgs": {
"contractsListName": "my_contracts_list",
"eventHashesListName": "my_event_hashes_list"
}
}
Advanced Filtering
For advanced filtering capabilities with custom JavaScript functions, consider using Streams, which provides full support for custom filter functions. Streams allows you to write JavaScript-based filtering logic to process and filter blockchain data before delivery.
For more information about filter functions in Streams, see the Filters documentation.
Webhook Delivery
When a webhook is triggered, Quicknode sends a POST request to your specified URL with the filtered blockchain data. The payload includes:
- data: The filtered blockchain events
- metadata: Information about the webhook and delivery
セキュリティ
HMAC 検証(推奨)
Webhookの宛先エンドポイントを保護するための推奨方法は、HMAC検証を実装することです。この暗号化手法により、受信メッセージがWebhookから送信されたものであり、改ざんされていないことが保証されます。HMAC検証の実装に関する詳細については、ガイド「受信ストリームのWebhookメッセージの検証」をご覧ください。
IPアドレスの許可リスト登録(追加のセキュリティ対策)
追加のセキュリティ対策として、宛先エンドポイントへのアクセスを特定のIPアドレスに制限することができます。Webhooksは、以下のIPアドレスからデータを送信します:
141.148.40.227
このIPアドレスを許可リストに追加することで、セキュリティをさらに強化し、Webhookサーバーが正当なWebhookトラフィックのみを受け入れるようにすることができます。
Getting Help
If you need assistance with the Webhooks REST API:
- Check the Webhooks documentation
- Review the Filters documentation
- Visit our Guides
- Contact our support team