Audit and up
Notifications, Telegram and webhooks
Choose which emails you get, send audit news to a Telegram chat, and send signed events to your own systems.
Who it's for
Every paid plan can turn the weekly quick win email on or off. Telegram and webhooks are on the Managed plan. A webhook means EchoPilot sends a message to a web address you own when something happens, so your own tools can react.
How to use it
- Choose your emails. Open More, then Notifications. Turn the weekly quick win on or off. Sign-in links, audit-ready notices, memos and billing notices always arrive.


- Pick your research emails (Managed). Turn each brief on or off: the weekly competitor watch, the monthly market report and the review sentiment digest. A brief you turn off is still listed under Research.


- Link Telegram (Managed). Click Connect Telegram, then Open Telegram. Press Start in the chat that opens. The link works once and runs out after 15 minutes. To stop, click Disconnect or send /stop in the chat.


- Add a webhook (Managed). Open More, then Webhooks. Paste a web address that starts with https, tick the events you want, and click Add endpoint. Copy the secret it shows. It is shown only once. You can add up to 3 addresses.


- Test it and check the log. Click Send test event. The delivery log lists each try with its time, status and reply code.


- Check each message is really from us. Each request has an EchoPilot-Signature header with a time and a code. Your system rebuilds the code from the raw message and your secret, then compares them. Refuse a message more than 5 minutes old.


What you'll see
Telegram gets a message after each audit with the score, its band and the top 3 fixes. It also gets one when the score drops by 5 points or more, or when a gating check (a check that caps your score when it fails) starts failing. New reviews, new drafts, research briefs and the weekly quick win come there too.
Webhooks can send these events — each name says what happened: audit.completed, score.changed, gating.failed, review.new, review.negative, drafts.ready, research.brief_ready, post.scheduled, post.published and post.failed. Here is an audit.completed message:
{
"id": "evt_Qm9vZ3Jvd3RoQ2FzYVNvbA",
"type": "audit.completed",
"created_at": "2026-10-27T14:05:00.000Z",
"tenant": { "id": "cmh1x2y3z0000abcd1234efgh", "name": "Casa Sol Bakery" },
"data": {
"run_id": "Xy7Pq2Lm9Rt4Vb8Nc1Wd3e",
"business": { "id": "cmh1x2y3z0001abcd1234efgh", "name": "Casa Sol Bakery" },
"score": 68,
"band": "Needs work",
"gating_cap": null,
"gating_failed": [],
"top_fixes": [{ "rule_id": "V1", "fix": "Publish llms.txt." }],
"report_url": "https://echopilotlabs.com/audit/Xy7Pq2Lm9Rt4Vb8Nc1Wd3e",
"completed_at": "2026-10-27T14:04:58.000Z"
}
}


What it doesn't do
- Webhooks only go to public https addresses. Private network addresses are refused.
- A failed delivery is tried 5 more times, with longer waits each time. A retry keeps the same id, so you can skip copies.
- Telegram links one chat per account.
- The post events are sent only when EchoPilot posts a draft you approved on an account you connected.