Alerts API
An alert rule watches one metric on one token (price, liquidity, holders, volume, top-ten concentration, health, copycats) and fires once when it crosses your threshold, through your own notification channels. What each alert means is in Alerts. Every route and field is in the API Explorer under Alerts.
A rule is not a buy alert, which posts every trade above a floor to a Discord channel or Telegram group and is set up from the token's page.
Every call needs your API key and a session, and acts on the rules of the wallet that signed in.
Create a rule, then read what fired
bash
curl -X POST https://api.chaindaddy.io/api/v2/alerts/rules \
-H "X-API-Key: $CHAINDADDY_API_KEY" -H "Authorization: Bearer $SESSION" -H "Content-Type: application/json" \
-d '{ "chainId": "eip155:8453", "tokenAddress": "0x931fce21ddea0549db70324f44ee2db1cb9f7f22",
"alertType": "price_change", "thresholdOperator": "pct_drop", "thresholdValue": 20, "timeWindowMinutes": 60 }'
# 201 {"success":true,"rule":{"id":"…","alert_type":"price_change","enabled":true,…}}
curl -H "X-API-Key: $CHAINDADDY_API_KEY" -H "Authorization: Bearer $SESSION" \
https://api.chaindaddy.io/api/v2/alerts/active
# {"alerts":[{"id":"…","rule_id":"…","alert_type":"price_change","status":"triggered","metric_value":23.4,"threshold_value":20,…}]}Then POST /api/v2/alerts/{id}/acknowledge records that you saw an alert and POST /api/v2/alerts/{id}/resolve closes it.
What to expect
- A rule fires once per breach, stays quiet for
cooldownMinutes(60 unless you set it), and clears when the metric recovers. A firing alert stays firing while the metric cannot be read. - Name the token by
chainIdandtokenAddress. A ticker is refused (400 invalid_filteron a list). A rule's token cannot be changed afterwards (400 token_immutable). - Plans decide the types.
heartbeat_scoreandcopycat_detectedare on Free and need a token with a registration;holder_count_drop,liquidity_drop,volume_anomalyandprice_changeneed Pro;top10_concentrationneeds Pro+. Free holds 3 rules, paid plans 50. - Calling create twice makes two rules. List first.
| Refusal | Meaning |
|---|---|
400 chain_unsupported | That alert type has no data on that chain, for example heartbeat_score on Solana. |
400 crown_required | The type needs a registered token, and this one has no registration. |
403 with upgrade_url | The type is above your plan, or you are at your rule limit. The message names the plan. |
503 | Nothing was created. Retry. |