/webhooks/rest/v1/webhooks/template/{id} REST API Endpoint
Path Parameters
templateId
string
REQUIRED
Loading...
evmWalletFilterevmContractEventsevmAbiFiltersolanaWalletFilterbitcoinWalletFilterxrplWalletFilterhyperliquidWalletEventsFilterstellarWalletTransactionsSourceAccountFilterBody Parameters
name
string
REQUIRED
Loading...
network
string
REQUIRED
Loading...
notification_email
string
Loading...
destination_attributes
object
REQUIRED
Loading...
url
string
Loading...
security_token
string
Loading...
compression
string
Loading...
nonegziptemplateArgs
object
REQUIRED
Template-specific arguments. Select a template to see its required arguments.
Arguments for the evmWalletFilter template.
walletsListName
string
REQUIRED
Name of a kv store list containing EVM wallet addresses to monitor.
Arguments for the evmContractEvents template. At least one of contractsListName or eventHashesListName should be provided.
contractsListName
string
Name of a kv store list containing contract addresses to monitor.
eventHashesListName
string
Name of a kv store list containing event signature hashes to monitor.
Arguments for the evmAbiFilter template.
abiJson
string
REQUIRED
ABI JSON string.
contractsListName
string
Name of a kv store list containing contract addresses to monitor.
Arguments for the solanaWalletFilter template.
accountsListName
string
REQUIRED
Name of a kv store list containing Solana account addresses to monitor.
Arguments for the bitcoinWalletFilter template.
walletsListName
string
REQUIRED
Name of a kv store list containing Bitcoin wallet addresses to monitor.
Arguments for the xrplWalletFilter template.
walletsListName
string
REQUIRED
Name of a kv store list containing XRP Ledger wallet addresses to monitor.
Arguments for the hyperliquidWalletEventsFilter template.
walletsListName
string
REQUIRED
Name of a kv store list containing Hyperliquid wallet addresses to monitor.
Arguments for the stellarWalletTransactionsSourceAccountFilter template.
walletsListName
string
REQUIRED
Name of a kv store list containing Stellar wallet addresses to monitor.
Returns
id
string
Loading...
created_at
string
Loading...
name
string
Loading...
network
string
Loading...
notification_email
string
Loading...
destination_attributes
object
Loading...
url
string
Loading...
security_token
string
Loading...
compression
string
Loading...
sequence
integer
Loading...
status
string
Loading...
templateId
string
Loading...
templateArgs
object
Loading...
Request
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
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free