Monitoring & Alerts
Continuously polling blockchain nodes to track on-chain events — deposit detection, large asset transfer alerts, compliance threshold breach detection — carries high operational costs, introduces latency, and creates monitoring gaps during outages. Nodit's event-driven architecture detects on-chain events without polling, and maintains uninterrupted event monitoring even during failures through automatic retry on delivery failure and delivery history tracking.
Use Cases
Deposit Detection Automation
Send notifications to internal settlement systems or ERPs immediately when assets are deposited to a designated address via Webhook. Payment confirmation and settlement processes can be automated without manually querying blockchain state for deposit completion.
Compliance Threshold Alerts
Automatically notify the compliance team when asset movements exceed a specified amount. Use condition filters to set criteria such as transaction amount, specific addresses, and token types to build a monitoring framework that meets regulatory requirements.
Custody Wallet Anomaly Detection
Receive immediate alerts when abnormal asset movements occur at custody wallet addresses. Register separate Webhooks per wallet and integrate with anomalous transaction detection workflows to respond quickly to wallet security events.
Real-Time Data Pipelines
Use Stream to continuously receive block creation events and on-chain data with custom filters applied via WebSocket. Used to supply real-time on-chain data to internal analysis systems or risk engines.
Precision Condition-Based Alerts
Define conditions in detail with CEL expressions and select only the fields needed for delivery. Operational scenarios such as receiving only large token transfers, specific contract events, or successful Transaction Receipts can be implemented selectively.
Key Capabilities
On-chain event monitoring is organized into two approaches: Webhook for condition-based alerts and Stream for real-time streaming. Use them independently or in combination depending on service requirements.
Webhook Condition-Based Alerts
When a designated on-chain event occurs, an HTTP notification is sent to the registered callback URL. Automatic retry on delivery failure ensures events are not lost, enabling connection to internal settlement, compliance, and risk systems without gaps.
Pre-filter using CEL expressions to select only the events needed before delivery. Define precise conditions such as amounts above a threshold, specific contracts, or specific token types to reduce internal processing load and improve alert accuracy.
Instant Webhook detects events quickly even before block finalization. For scenarios requiring risk detection and immediate user feedback, it can be used in combination with standard Webhook or Stream.
Stream Real-Time Streaming
Maintain a persistent connection to receive block creation events and on-chain data with custom filters applied in real time. Suitable for pipelines that require continuous data supply, such as risk engines and real-time dashboards.
Subscribe to new blocks, pending transactions, and log events at a low level via JSON-RPC WebSocket subscriptions. Subscriptions go through the Elastic Node endpoint, so no separate node operation is required.
Prevent event loss through delivery history retrieval and manual resend (Easy Resend). Use Live Sample and Test Webhook to validate alert rules before going live and recover quickly when failures occur.
Implementation Example
API Use Cases
| Scenario | Feature to Use | Reason |
|---|---|---|
| Immediate deposit/withdrawal event delivery | Webhook — ADDRESS_ACTIVITY | Receive HTTP callback immediately when asset activity occurs at designated address |
| Transaction success alert (settlement integration) | Webhook — SUCCESSFUL_TRANSACTION | Automatically update internal ledger on confirmation |
| Transaction failure alert (reprocessing) | Webhook — FAILED_TRANSACTION | Detect failure and trigger reprocessing workflow |
| Contract event topic-based detection | Webhook — LOG | Receive event logs generated by a specific contract |
| Specific amount/token condition-based alerts | Flexible Webhook — erc20.transfer | Pre-filter by amount and token type using CEL expressions |
| Pre-confirmation detection | Instant Webhook | Early event detection before block inclusion |
| Event delivery history retrieval | Get Webhook History | Review delivery success/failure history and resend |
| Persistent connection real-time streaming | Stream | Maintain WebSocket connection; receive block-level events |
| Direct node-level event subscription | eth_subscribe (Node API) | Low-level subscription to new blocks, pending TXs, and log events |
Webhook — Event-Based Alert Configuration
Deposit detection, compliance alerts, and event-driven workflow triggers:
- Create a Webhook in the Nodit console and register the callback URL.
- Configure the target event types (deposits, transaction success/failure, contract events, etc.) and addresses to monitor.
- For condition-based filtering, define pre-delivery filtering rules using Flexible Webhook's CEL expressions.
- Validate alert rules using Live Sample or Test Webhook before going live.
- After receiving events, integrate with internal settlement, compliance, and risk engines.
Stream — Real-Time Streaming Configuration
Real-time data pipelines requiring persistent connections:
- Create a Stream subscription and connect to the WebSocket endpoint.
- Apply custom filters to specify the event types and addresses to receive.
- Receive block creation events and on-chain data in real time and supply them to the risk engine or analytics dashboard.
Use Webhook when data only needs to be received when events occur. Use Stream when a persistent connection is required to receive block-level data in real time.
API References
| Domain Interaction | Implementation Option | Nodit Feature | Reference |
|---|---|---|---|
| Receive on-chain event notifications | Event-driven (HTTP callback) | Webhook | Webhook |
| Precision alerts with condition expressions | Event-driven (CEL expressions) | Flexible Webhook | Flexible Webhook Overview |
| Pre-confirmation detection | Event-driven (Instant) | Instant Webhook | Webhook |
| Delivery history and audit trail | Event-driven | Get Webhook History | Get Webhook History |
| Real-time data streaming | Event-driven (WebSocket) | Stream | Stream |
| Verify Stream event types | Event-driven | Stream Event Type | Stream Event Type |
| Node-level event subscription | Direct JSON-RPC call | eth_subscribe | API Reference |
Related Guides
- Webhook — Webhook creation, event types, and condition filter configuration
- Flexible Webhook Overview — CEL-based expressions, output field selection, and console-based operations
- Stream — Stream subscription creation and WebSocket integration
- Elastic Node —
eth_subscribeand WebSocket endpoint configuration - API Reference — Full API parameter specifications and response schemas
Create a free project in the Nodit Console to try out the Webhook and Stream features directly.