Path Parameters
The template ID.
evmWalletFilterevmContractEventsevmAbiFiltersolanaWalletFilterbitcoinWalletFilterxrplWalletFilterhyperliquidWalletEventsFilterstellarWalletTransactionsSourceAccountFilterBody Parameters
A name for your webhook.
The network for this webhook.
Notify when webhook is terminated.
Webhook destination configuration including URL, security token, and compression settings.
The URL where webhook data will be sent.
Security token for webhook authentication. If no value is included, we will generate a token for this Webhook.
Compression type for webhook payloads.
nonegzipReturns
The ID of the webhook
The timestamp when the webhook was created
The webhook name
The network of the webhook
Email for termination notifications
Webhook destination configuration
The URL where webhook data is sent
Security token for webhook authentication
Compression type for webhook payloads
The last delivered block from the data range
The current status of the webhook
The template ID used to create this webhook.
The template arguments (kv store list names).
1curl -X POST \2"https://api.quicknode.com/webhooks/rest/v1/webhooks/template/evmWalletFilter" \3-H "accept: application/json" \4-H "Content-Type: application/json" \5-H "x-api-key: YOUR_API_KEY" \6-d $'{7"name": "My Wallet Monitor Webhook",8"network": "ethereum-mainnet",9"notification_email": "contact@example.com",10"destination_attributes": {11"url": "https://webhook.site/your-unique-url",12"compression": "none"13},14"templateArgs": {15"wallets": [16"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",17"0xdac17f958d2ee523a2206206994597c13d831ec7"18]19}20}'
1curl -X POST \2"https://api.quicknode.com/webhooks/rest/v1/webhooks/template/evmWalletFilter" \3-H "accept: application/json" \4-H "Content-Type: application/json" \5-H "x-api-key: YOUR_API_KEY" \6-d $'{7"name": "My Wallet Monitor Webhook",8"network": "ethereum-mainnet",9"notification_email": "contact@example.com",10"destination_attributes": {11"url": "https://webhook.site/your-unique-url",12"compression": "none"13},14"templateArgs": {15"wallets": [16"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",17"0xdac17f958d2ee523a2206206994597c13d831ec7"18]19}20}'
1const axios = require('axios')23const templateId = 'evmWalletFilter' // Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter4const url = `https://api.quicknode.com/webhooks/rest/v1/webhooks/template/${templateId}`56const payload = {7name: 'My Wallet Monitor Webhook',8network: 'ethereum-mainnet',9notification_email: 'contact@example.com',10destination_attributes: {11url: 'https://webhook.site/your-unique-url',12compression: 'gzip',13},14templateArgs: {15wallets: [16'0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',17'0xdac17f958d2ee523a2206206994597c13d831ec7',18],19},20}2122const headers = {23accept: 'application/json',24'Content-Type': 'application/json',25'x-api-key': 'YOUR_API_KEY', // Replace with your actual API key26}2728axios29.post(url, payload, { headers })30.then(response => {31console.log(response.data)32})33.catch(error => {34console.error('Error:', error.response?.data || error.message)35})36
1const axios = require('axios')23const templateId = 'evmWalletFilter' // Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter4const url = `https://api.quicknode.com/webhooks/rest/v1/webhooks/template/${templateId}`56const payload = {7name: 'My Wallet Monitor Webhook',8network: 'ethereum-mainnet',9notification_email: 'contact@example.com',10destination_attributes: {11url: 'https://webhook.site/your-unique-url',12compression: 'gzip',13},14templateArgs: {15wallets: [16'0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',17'0xdac17f958d2ee523a2206206994597c13d831ec7',18],19},20}2122const headers = {23accept: 'application/json',24'Content-Type': 'application/json',25'x-api-key': 'YOUR_API_KEY', // Replace with your actual API key26}2728axios29.post(url, payload, { headers })30.then(response => {31console.log(response.data)32})33.catch(error => {34console.error('Error:', error.response?.data || error.message)35})36
1import requests23template_id = "evmWalletFilter" # Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter4url = f"https://api.quicknode.com/webhooks/rest/v1/webhooks/template/{template_id}"56payload = {7"name": "My Wallet Monitor Webhook",8"network": "ethereum-mainnet",9"notification_email": "contact@example.com",10"destination_attributes": {11"url": "https://webhook.site/your-unique-url",12"compression": "gzip"13},14"templateArgs": {15"wallets": [16"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",17"0xdac17f958d2ee523a2206206994597c13d831ec7"18]19}20}2122headers = {23"accept": "application/json",24"Content-Type": "application/json",25"x-api-key": "YOUR_API_KEY" # Replace with your actual API key26}2728response = requests.post(url, headers=headers, json=payload)2930print(response.text)
1import requests23template_id = "evmWalletFilter" # Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter4url = f"https://api.quicknode.com/webhooks/rest/v1/webhooks/template/{template_id}"56payload = {7"name": "My Wallet Monitor Webhook",8"network": "ethereum-mainnet",9"notification_email": "contact@example.com",10"destination_attributes": {11"url": "https://webhook.site/your-unique-url",12"compression": "gzip"13},14"templateArgs": {15"wallets": [16"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",17"0xdac17f958d2ee523a2206206994597c13d831ec7"18]19}20}2122headers = {23"accept": "application/json",24"Content-Type": "application/json",25"x-api-key": "YOUR_API_KEY" # Replace with your actual API key26}2728response = requests.post(url, headers=headers, json=payload)2930print(response.text)
1require "uri"2require "net/http"3require "json"45template_id = "evmWalletFilter" # Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter6url = URI("https://api.quicknode.com/webhooks/rest/v1/webhooks/template/#{template_id}")78https = Net::HTTP.new(url.host, url.port)9https.use_ssl = true1011request = Net::HTTP::Post.new(url)12request["accept"] = "application/json"13request["Content-Type"] = "application/json"14request["x-api-key"] = "YOUR_API_KEY" # Replace with your actual API key1516request.body = {17"name" => "My Wallet Monitor Webhook",18"network" => "ethereum-mainnet",19"notification_email" => "contact@example.com",20"destination_attributes" => {21"url" => "https://webhook.site/your-unique-url",22"compression" => "gzip"23},24"templateArgs" => {25"wallets" => [26"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",27"0xdac17f958d2ee523a2206206994597c13d831ec7"28]29}30}.to_json3132response = https.request(request)33puts response.body
1require "uri"2require "net/http"3require "json"45template_id = "evmWalletFilter" # Can be: evmWalletFilter, evmContractEvents, solanaWalletFilter, bitcoinWalletFilter, evmAbiFilter6url = URI("https://api.quicknode.com/webhooks/rest/v1/webhooks/template/#{template_id}")78https = Net::HTTP.new(url.host, url.port)9https.use_ssl = true1011request = Net::HTTP::Post.new(url)12request["accept"] = "application/json"13request["Content-Type"] = "application/json"14request["x-api-key"] = "YOUR_API_KEY" # Replace with your actual API key1516request.body = {17"name" => "My Wallet Monitor Webhook",18"network" => "ethereum-mainnet",19"notification_email" => "contact@example.com",20"destination_attributes" => {21"url" => "https://webhook.site/your-unique-url",22"compression" => "gzip"23},24"templateArgs" => {25"wallets" => [26"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",27"0xdac17f958d2ee523a2206206994597c13d831ec7"28]29}30}.to_json3132response = https.request(request)33puts response.body
1qn webhook create --name wallet-watch \2--network ethereum-mainnet \3--url https://example.com/hook \4--compression none \5--template {template_id} \6--wallet {wallet_address} \7-o json
1qn webhook create --name wallet-watch \2--network ethereum-mainnet \3--url https://example.com/hook \4--compression none \5--template {template_id} \6--wallet {wallet_address} \7-o json
1import { QuicknodeSdk } from "@quicknode/sdk"23const qn = new QuicknodeSdk({ apiKey: "YOUR_API_KEY" })45const response = await qn.webhooks.createWebhookFromTemplate({ name: "Wallet activity", network: "ethereum-mainnet", destinationAttributes: { url: "https://example.com/webhook", compression: "none" }, templateArgs: { templateId: "evmWalletFilter", wallet: "0x0000000000000000000000000000000000000000" } })6console.log(response)7
1import { QuicknodeSdk } from "@quicknode/sdk"23const qn = new QuicknodeSdk({ apiKey: "YOUR_API_KEY" })45const response = await qn.webhooks.createWebhookFromTemplate({ name: "Wallet activity", network: "ethereum-mainnet", destinationAttributes: { url: "https://example.com/webhook", compression: "none" }, templateArgs: { templateId: "evmWalletFilter", wallet: "0x0000000000000000000000000000000000000000" } })6console.log(response)7
1import asyncio2from quicknode_sdk import QuicknodeSdk, SdkFullConfig345async def main():6qn = QuicknodeSdk(SdkFullConfig(api_key="YOUR_API_KEY"))7response = await qn.webhooks.create_webhook_from_template(name="Wallet activity", network="ethereum-mainnet", destination_attributes={"url": "https://example.com/webhook", "compression": "none"}, template_args={"template_id": "evmWalletFilter", "wallet": "0x0000000000000000000000000000000000000000"})8print(response)91011asyncio.run(main())12
1import asyncio2from quicknode_sdk import QuicknodeSdk, SdkFullConfig345async def main():6qn = QuicknodeSdk(SdkFullConfig(api_key="YOUR_API_KEY"))7response = await qn.webhooks.create_webhook_from_template(name="Wallet activity", network="ethereum-mainnet", destination_attributes={"url": "https://example.com/webhook", "compression": "none"}, template_args={"template_id": "evmWalletFilter", "wallet": "0x0000000000000000000000000000000000000000"})8print(response)91011asyncio.run(main())12
1require "quicknode_sdk"23qn = QuicknodeSdk::SDK.from_config(api_key: "YOUR_API_KEY")45response = qn.webhooks.create_webhook_from_template(name: "Wallet activity", network: "ethereum-mainnet", destination_attributes: { url: "https://example.com/webhook", compression: "none" }, template_args: { template_id: "evmWalletFilter", wallet: "0x0000000000000000000000000000000000000000" })6puts response7
1require "quicknode_sdk"23qn = QuicknodeSdk::SDK.from_config(api_key: "YOUR_API_KEY")45response = qn.webhooks.create_webhook_from_template(name: "Wallet activity", network: "ethereum-mainnet", destination_attributes: { url: "https://example.com/webhook", compression: "none" }, template_args: { template_id: "evmWalletFilter", wallet: "0x0000000000000000000000000000000000000000" })6puts response7
1use quicknode_sdk::{QuicknodeSdk, SdkFullConfig};23#[tokio::main]4async fn main() -> Result<(), Box<dyn std::error::Error>> {5let qn = QuicknodeSdk::new(&SdkFullConfig::builder().api_key("YOUR_API_KEY").build())?;6let response = qn.webhooks.create_webhook_from_template(&quicknode_sdk::webhooks::CreateWebhookFromTemplateParams { name: "Wallet activity".to_string(), network: "ethereum-mainnet".to_string(), notification_email: None, destination_attributes: quicknode_sdk::webhooks::WebhookDestinationAttributes { url: "https://example.com/webhook".to_string(), security_token: None, compression: Some("none".to_string()) }, template_args: quicknode_sdk::webhooks::TemplateArgs::evm_wallet_filter(&quicknode_sdk::webhooks::EvmWalletFilterTemplate { wallets: vec!["0x0000000000000000000000000000000000000000".to_string()] })? }).await?;78println!("{:?}", response);9Ok(())10}11
1use quicknode_sdk::{QuicknodeSdk, SdkFullConfig};23#[tokio::main]4async fn main() -> Result<(), Box<dyn std::error::Error>> {5let qn = QuicknodeSdk::new(&SdkFullConfig::builder().api_key("YOUR_API_KEY").build())?;6let response = qn.webhooks.create_webhook_from_template(&quicknode_sdk::webhooks::CreateWebhookFromTemplateParams { name: "Wallet activity".to_string(), network: "ethereum-mainnet".to_string(), notification_email: None, destination_attributes: quicknode_sdk::webhooks::WebhookDestinationAttributes { url: "https://example.com/webhook".to_string(), security_token: None, compression: Some("none".to_string()) }, template_args: quicknode_sdk::webhooks::TemplateArgs::evm_wallet_filter(&quicknode_sdk::webhooks::EvmWalletFilterTemplate { wallets: vec!["0x0000000000000000000000000000000000000000".to_string()] })? }).await?;78println!("{:?}", response);9Ok(())10}11