Data alerts · Plus and Pro
Crypto sentiment alerts, by email or webhook
Choose a keyword or your own index, a timeframe and a view, then set the level it must cross. When it does, Sentalysis sends an email or a signed JSON webhook, so you can stop watching the chart and still notice the change.
Define the condition
Four choices make an alert
Every alert is a precise statement about a data series. Nothing is inferred, and nothing is recommended.
| Choice | Options | Example |
|---|---|---|
| Source | Any tracked keyword, or a saved custom index (Pro) | Bitcoin |
| Timeframe | 1H (Pro), 4H, 1D, 1W, 1M | 1D |
| View | Raw, Z-score or EMA, with their window or span | Z-score, 90 observations |
| Level and direction | Crosses above or crosses below a value | Crosses above 2.0 |
Choose the destination
Email for you, webhooks for your systems
Email
Sent to your verified address with the keyword, the level and the current value.
Webhook
A signed JSON POST to your HTTPS endpoint, verified before first use.
Signed
HMAC-SHA256 over the timestamp and body, with a secret shown once.
Telegram
Planned. Not available yet.
bitcoin crossed above 2
bitcoin crossed above 2. Current value: 5.26. Data-threshold notification only. Not financial, investment, or trading advice.
For developers
The webhook payload
Each alert is one HTTPS POST with a compact JSON body (keys sorted) and three headers. This example uses the values from the recorded crossing shown above; the IDs are placeholders.
{
"alertId": "7d1c0f52-2b8e-4f53-9a51-0d6e8c4b2a19",
"currentValue": 5.264452,
"customSignalId": null,
"deliveryId": "e2a4c9d0-61b7-4a3e-8f0c-5b9d2e7a1c46",
"direction": "above",
"eventId": "7d1c0f52-2b8e-4f53-9a51-0d6e8c4b2a19:2026-02-05T00:00:00+00:00",
"interval": "1d",
"keyword": "bitcoin",
"previousValue": 1.494566,
"signalBucket": "2026-02-05T00:00:00+00:00",
"sourceType": "keyword",
"threshold": 2,
"transform": "zscore",
"type": "alert.triggered",
"version": 1
}| Header | Value |
|---|---|
X-Sentalysis-Signature | t=<unix time>,v1=<hex HMAC> |
X-Sentalysis-Event-Id | The alert and data bucket, stable across retries |
X-Sentalysis-Delivery-Id | One delivery attempt record |
import crypto from "node:crypto";
// rawBody: the request body exactly as received.
export function verifySentalysis(secret, header, rawBody) {
const parts = Object.fromEntries(header.split(",").map((part) => part.split("=")));
const expected = crypto
.createHmac("sha256", secret)
.update(`${parts.t}.${rawBody}`)
.digest("hex");
const age = Math.abs(Date.now() / 1000 - Number(parts.t));
return age < 300
&& expected.length === parts.v1?.length
&& crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1));
}Answer fast
Return any 2xx status within a few seconds; do slow work after replying.
Deduplicate
Retries reuse the event ID. Store it and ignore repeats.
Know the rules
HTTPS on port 443, public addresses only, no redirects followed. A 404 or 410 disables the endpoint.
In the platform
Set up an alert in four steps
Pick the source
A keyword or a saved index, and the timeframe you care about.
Choose the view
Raw, Z-score or EMA. Thresholds work best on a view whose scale you understand.
Set the level
Above or below a value. On a Z-score, 2.0 means two standard deviations above the recent mean; see the Z-score guide.
Add a destination
Your verified email, a verified webhook, or both. Then enable the alert.
FAQ
Questions and answers
What is a crypto sentiment alert?
It is a notification that a data series crossed a level you chose. On Sentalysis the series is a keyword's Attention Interest Oscillator or one of your custom indexes, in the timeframe and view you pick, and the notification arrives by email or signed webhook.
What counts as a crossing?
A move from one side of your threshold to the other between two consecutive readings: from at or below the level to above it for an 'above' alert, or from at or above it to below it for a 'below' alert. A series that simply stays above the level does not trigger again.
How many alerts can I create?
Plus includes three data alerts and Pro includes ten. Pro can also use custom weighted indexes as alert sources. The free plan has no alerts.
Which channels are supported?
Email to your verified address, and HTTPS webhooks with an HMAC-SHA256 signature. Telegram delivery is planned but not available yet.
Can an alert miss a crossing between data updates?
No. Every new reading is checked against the one before it, so a crossing is reported even when several readings arrive at once. Very old crossings are not sent late.
Is an alert a signal to trade?
No. It reports that the data crossed the condition you defined. It does not recommend buying, selling or holding, execute a trade, or connect to a wallet or exchange.
Let the data tell you when it moves
Plus includes three alerts on every keyword and asset. Pro includes ten, with custom indexes as sources.
Free plan: one keyword, daily data, two years of history. No card required.
Sentalysis is an analytics and research tool. Nothing on this page is financial, investment or trading advice, a trading signal or a price prediction, and similar timing between attention and price does not establish cause. Sentalysis does not execute trades or connect to wallets or exchanges. Read the research-use notice.