Rules

A rule narrows a watch so you only hear about what matters. Every field is optional; an empty rule {} fires on any transfer of the watched token.

{
  "direction": "in",
  "minAmount": "1000000000",
  "maxAmount": "5000000000000",
  "counterpartyIn": ["0xpartner…"],
  "counterpartyNotIn": ["0xexchange…"]
}
FieldTypeMeaning
directionin | out | anyIncoming, outgoing, or both (default any).
minAmountstringFire only at or above this amount.
maxAmountstringFire only at or below this amount.
counterpartyInstring[]Only when the other party is in this list.
counterpartyNotInstring[]Never when the other party is in this list.

Unknown fields are rejected — rules are validated strictly.

Amounts are raw base units

Amounts are integer strings in the token’s smallest unit, never decimals. This avoids floating-point error and matches the chain exactly. Multiply the human amount by 10^(token decimals):

You wantToken (decimals)minAmount
≥ 10,000 USDT on TRONUSDT-TRC20 (6)"10000000000"
≥ 10,000 USDT on BSCBSC-USDT (18)"10000000000000000000000"

The same raw-unit amount is echoed back in every alert payload.

Counterparties are matched case-insensitively, the same way addresses are.