| name | alchemy-webhooks-events |
| description | Implement Alchemy Notify webhooks for real-time blockchain event notifications.
Use when tracking wallet activity, monitoring mined transactions,
watching smart contract events, or building real-time dApp features.
Trigger: "alchemy webhook", "alchemy notify", "alchemy events",
"alchemy address activity", "alchemy real-time notifications".
|
| allowed-tools | Read, Write, Edit, Bash(curl:*) |
| version | 1.5.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","blockchain","web3","alchemy","webhooks"] |
| compatibility | Designed for Claude Code |
Alchemy Webhooks & Events (Notify API)
Overview
Alchemy Notify provides real-time push notifications for on-chain events. Instead of polling, receive webhook callbacks for wallet activity, mined transactions, dropped transactions, and smart contract events.
Webhook Types
| Type | Trigger | Use Case |
|---|
| Address Activity | ETH/token transfer to/from address | Wallet notifications |
| Mined Transaction | Transaction confirmed on-chain | Payment confirmation |
| Dropped Transaction | Transaction removed from mempool | Failed tx alerting |
| NFT Activity | NFT transfer events | Marketplace notifications |
| Custom Webhook | GraphQL-defined filter | Complex event tracking |
Instructions
Step 1: Create Webhook via Dashboard or API
curl -X POST "https://dashboard.alchemy.com/api/create-webhook" \
-H "X-Alchemy-Token: ${ALCHEMY_AUTH_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"network": "ETH_MAINNET",
"webhook_type": "ADDRESS_ACTIVITY",
"webhook_url": "https://your-app.com/webhooks/alchemy",
"addresses": [
"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
]
}'
Step 2: Webhook Handler with Signature Verification
import express from 'express';
import crypto from 'crypto';
const router = express.Router();
router.post('/webhooks/alchemy',
express.raw({ type: 'application/json' }),
async (req, res) => {
signature = req.[] ;
(!(req..(), signature)) {
res.().({ : });
}
event = .(req..());
(event);
res.().({ : });
}
);
(): {
signingKey = process..!;
hmac = crypto.(, signingKey);
hmac.(body, );
digest = hmac.();
crypto.(.(signature), .(digest));
}