傳統的 Schedule Trigger(定時輪詢)會有延遲,Webhook 則能讓外部服務(如 Alchemy、Portaly、各種鏈上監控平台)即時推送資料到 n8n,實現「零延遲」自動化。
POST
,Path 例如填 whale-alert
。http://localhost:5678/webhook/whale-alert
)。Webhook 來源的資料格式通常和你原本的 Etherscan API 不一樣,必須「翻譯」成你後續流程能吃的格式。
// 假設 Webhook 傳來的資料格式如下:
// {
// "event": {
// "activity": [
// {
// "fromAddress": "0x...",
// "toAddress": "0x...",
// "value": 10000.00,
// "asset": "USDC",
// "hash": "0x..."
// }
// ]
// }
// }
const activity = $input.item.json.event?.activity?.[0];
if (!activity) {
return { error: 'No activity found', raw: $input.item.json };
}
return {
timeStamp: Math.floor(Date.now() / 1000), // 產生時間戳
hash: activity.hash,
from: activity.fromAddress,
to: activity.toAddress,
value: activity.value * 1e6, // 假設 USDC 小數位是6
tokenSymbol: activity.asset,
tokenDecimal: "6"
};
{{💸 **代幣巨鯨快訊!** 💸\\n\\n
+偵測到一筆大額 **${$json.tokenSymbol}** 轉帳!\\n\\n
+**金額**: **${($json.value / 1e6).toLocaleString('en-US', { maximumFractionDigits: 2 })} ${$json.tokenSymbol}**\\n
+**From**: \\
${$json.from}`\n+
To: \${$[json.to](http://json.to/)}\
\n\n+
點此立即查看交易詳情`
}}
Append row in sheet
。Map Each Column Manually
,對應欄位如下:
{{$json.timeStamp}}
{{$json.tokenSymbol}}
{{$json.value / 1e6}}
{{$json.from}}
{{$json.to}}
{{$json.hash}}
這樣你就完成了 Day 13 的「即時推送+自動格式化+多平台同步」自動化流程!