Skip to Content
NotificationsTemplates

Notification Templates

This document provides standardized notification templates for KeeperHub operations. These templates are used across Discord, Slack, and Email notifications.

Template Types

Notification templates depend on Keeper Type and Trigger Type:

Keeper Types

  • Contract: Smart contract interactions
  • Wallet: Wallet monitoring and operations
  • Multisig: Multisig wallet monitoring

Trigger Types

  • Manual: User-triggered execution
  • Cron: Time-based scheduling
  • Block: Block-based triggers
  • Event: Event-driven triggers

Contract Keeper Templates

For Contract keepers, templates further depend on Function Type:

Read Functions

  • Contract Read Template: For read-only function calls

Write Functions

  • Contract Write Template (Success): For successful write transactions
  • Contract Write Template (Failure): For failed write transactions

Event Trigger Templates

  • Event Template: For Event detection (used across all keeper types when Event trigger is selected)

Wallet & Multisig Keeper Templates

  • Balance Change Template: For wallet balance monitoring
  • Threshold Template: For threshold-based actions
  • Ownership Change Template: For multisig ownership changes
  • Transaction Template: For wallet/multisig transactions

Contract Keeper with Read Function

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Chain: Chain name Contract Address: Contract address Function Name: Function name Function Arguments: Function arguments listed as `key(input name): value` separated by a comma Function Output: Output of function returned as `key(output name): value` separated by a comma Conditions: List of conditions as `key(input name): value` separated by operator `and(&&)`, `or(||)`, `greater than(>)` or `less than(<)` Conditions Returns: `True` or `False` Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`

Contract Keeper with Write Function (Success)

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Status: Success Chain: Chain name Contract Name: Contract name Contract Address: Contract address Function Name: Function name Function Arguments: Function arguments listed as `key(input name): value` separated by a comma Function Output: Output of function returned as `key(output name): value` separated by a comma From Address: KeeperHub wallet address Transaction Hash: Transaction hash Gas Limit: Gas limit (e.g. 117,931) Max Fee Per Gas: Max fee per gas in wei (e.g. 1,000,000 wei) Max Priority Fee Per Gas: Max priority fee per gas in wei (e.g. 1,000,000 wei) Nonce: Nonce number Attempts: Number of attempts Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`

Contract Keeper with Write Function (Failure)

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Status: Failure Chain: Chain name Contract Name: Contract name Contract Address: Contract address Function Name: Function name Function Arguments: Function arguments listed as `key(input name): value` separated by a comma Output: Output of function returned as `key(output name): value` separated by a comma From Address: KeeperHub wallet address Gas Limit: Gas limit (e.g. 117,931) Max Fee Per Gas: Max fee per gas in wei (e.g. 1,000,000 wei) Max Priority Fee Per Gas: Max priority fee per gas in wei (e.g. 1,000,000 wei) Error Code: Error code (e.g. INSUFFICIENT_FUNDS, GAS_LIMIT_EXCEEDED) Error Message: Error message (e.g. Transaction failed) Initial Gas Estimate: Initial gas estimate (e.g. 25,826) Final Gas Attempt: Final gas attempt (e.g. 296,999) Attempts: Number of attempts made (e.g. 10) Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`

Contract Keeper with Event Trigger

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Chain: Chain name Contract Address: Contract address Event Name: Event name Conditions: List of conditions as `key(input name): value` separated by operator `and(&&)`, `or(||)`, `greater than(>)` or `less than(<)` Conditions Returns: `True` or `False` Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`

Wallet Keeper

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Chain: Chain name Wallet Address: Wallet address Wallet Balance: Current balance amount Conditions: List of conditions as `key(input name): value` separated by operator `and(&&)`, `or(||)`, `greater than(>)` or `less than(<)` Conditions Returns: `True` or `False` Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`

Multisig Keeper

Timestamp: YYYY-MM-DD HH:MM:SS UTC Name: Keeper name Chain: Chain name Multisig Address: Multisig wallet address Event Name: eg. OwnerAdded/OwnerRemoved/ThresholdChanged Transaction Hash: Transaction hash of the change Conditions: List of conditions as `key(input name): value` separated by operator `and(&&)`, `or(||)`, `greater than(>)` or `less than(<)` Conditions Returns: `True` or `False` Notification Sent: Discord to `Discord channel name` (if sent), Slack to `Slack channel name`(if sent), email to `Email address`(if sent). If none then display `No notifications sent.` Transfer Sent: `transfer_amount` to `recipient_address`. If no transfer then display `No transfer sent` Webhook Sent: `webhook_name` (e.g. My Favourite Webhook). If no webhook sent then display `No webhook sent`