Telegard — entity map
Core entities
- Telegard
- A Telegram account guard: a web app, a Telegram Mini App and a Telegram bot (@TelegardAppBot) that watch every active session of a connected Telegram account 24/7 and terminate logins the owner never made — automatically, within seconds. Category: Telegram account security / session monitoring. Canonical URL: https://telegard.app/.
- Telegard Teams
- The second product line of the same application, for companies: the same guard applied to employees' work Telegram accounts, with invite links, a live chats view, an archive of every chat (deleted and edited messages kept, files encrypted per group), full-text search and export, retention and legal hold, DLP rules, reply-time analytics with AI digests, and a reactive assistant. Consent is the login itself. Status: beta, free. URL: https://telegard.app/teams.
- Guard (the "Telegard" session)
- An authorized Telegram session that Telegard holds for a connected account. It appears as a device named "Telegard" in Telegram → Settings → Devices. Telegram only lets an authorized session see and manage other sessions, so this device is unavoidable. It is auto-labelled as trusted and cannot be terminated by Telegard's own rules.
- Account
- A Telegram account connected to Telegard by phone number, login code and (if set) two-step password. One user can connect several accounts; each has its own rules, alerts and audit log. Accounts can be organised into groups.
- Account group
- A named folder of accounts in the dashboard. In Telegard Teams a group is the team: turning on "Teams" for a group enables consent-based company features for its accounts. There is no separate "organization" entity.
- Session (authorization)
- One Telegram login of an account: device, client app, IP, country/region, first and last activity. Telegard reads the session list from Telegram and stores a snapshot per session.
- Labelled (whitelisted) device
- A session the owner marked as theirs — via "It's me" in the bot or in the dashboard. Labelled devices are never touched by any rule.
- Review
- The "Was this you?" question the bot sends when an unknown login appears, with "It's me" and "Not me — terminate" buttons. "It's me" labels the device; "Not me" terminates it; silence until the review deadline terminates it.
- Review window
- How long the owner has to answer a review before the session is terminated. Default 5 minutes; configurable from 0 seconds (terminate instantly) to 60 minutes.
- Armed
- The guard state in which rules act (terminate) rather than only observe. Until the guard is armed, the first check builds a baseline and nothing is terminated.
- Audit log
- The per-account record of every session event and every guard decision: who logged in, from where, when, what the guard did and why, with timestamps.
- Bot @TelegardAppBot
- The Telegram bot used for login to the dashboard, alerts, review buttons and the /status and /sessions commands. Alerts go to the account owner only through the bot; Telegard never writes into the account's Saved Messages.
Rules and modes
Every rule has three modes: Ignore (event logged only, no action), Ask (bot question; silence for the review window terminates the session), Terminate (session ended immediately; owner notified). When several rules fire, the stricter mode wins.
- Auto-terminate unknown logins
- A session that is not labelled as yours is asked about, then removed after the review window. Default mode: Ask.
- Stolen-session detection (device / client change)
- The device or client app changes under the same session — the signature of a copied desktop session file (tdata). Default mode: Terminate.
- Impossible travel
- The same session is seen in two locations that no flight could connect in the elapsed time. Default mode: Ask ("was this your VPN?"). Trusted countries, regions and networks are skipped.
- Network change
- An IP change inside the same subnet is only recorded; a change to a different network can be configured to trigger a rule.
- Trusted countries, regions, networks
- Countries, first-level regions (GeoNames admin-1 catalogue, e.g. "Bavaria") and network operators (ASNs) the owner logs in from. They never trigger travel alarms. Set once.
- Profile protection
- Name, last name and @username of a managed account are set by the company and guarded against changes (Telegard Teams).
- Impostor protection
- A separate rule with three modes — Off, Notify, Block — that judges unknown senders instead of sessions. An account the owner has never spoken to is compared with the roster of people the account already knows; a copy of a known identity is reported in the bot before the owner replies, or blocked outright. Default: Notify.
- Known-peer roster
- Per account: the Telegram contact list, everyone the account has a dialog with, and the account owner. Each entry keeps the display name, its Latin skeleton, the username, a normalised username key and a perceptual hash of the profile photo. Refreshed every six hours; deleted with the account.
- Lookalike signals
- Display name folded to plain Latin (a Cyrillic or Greek letter inside a Latin word, invisible characters, an added role word such as "Support"); username bent by one edit (extra underscore, trailing digit, 0 for o — Telegram usernames are ASCII-only, so an exact copy is impossible); profile photo matched by difference hash; Telegram's own scam, fake and restricted flags; a very recent account id. A verified account is never flagged.
- Presets
- Built-in rule sets: Strict (terminate everything unknown), Balanced, Watch-only. Custom presets can be saved once and applied to any account in one click.
Known limitation: the first 24 hours
- Telegram forbids any fresh session — including Telegard's — from terminating other sessions for 24 hours after it logged in.
- During that window Telegard still sees every new login, warns the owner instantly, marks the termination as pending and retries it automatically the moment Telegram allows it.
- Labelling the device as yours clears the pending state.
- Consequence for a hijacked account: terminate other sessions from a device you still hold first; see the recovery guide.
Security and privacy model
- The guard reads the session list and, when impostor protection is on, the contact list and the identity of unknown senders (name, username, profile photo, Telegram's scam flags).
- Service archive: Every connected account is also kept in Telegard's service archive, which is not shown in the owner's dashboard: the list of its chats, groups and channels, everything in Saved Messages (text and files, including the last 7 days before connecting), and the messages of any chat Telegard staff choose to archive. Telegard administrators can read it; it is kept for up to 365 days; /mydata in the bot shows it and exports a copy; Disconnect removes this account’s archive links and access. Channels and supergroups use a single shared copy across Telegard. Each account only sees messages archived through its own connection. Disconnecting removes that account’s links and access; the shared copy remains for other linked accounts, under the longest retention period of their teams or any legal hold, and is deleted after the last link is removed. Private chats, bots, basic groups and Saved Messages stay separate. The service terms (version 2026-10-12) disclose it.
- Stored per account: the encrypted guard session, session snapshots, the audit log, the owner's rule settings and — with impostor protection on — the known-peer roster and the alerts it raised.
- Servers: EU (Germany).
- Session material is stored as AES-256-GCM ciphertext in a separate vault table.
- Process isolation: the internet-facing web role has no encryption key and no database grant on the vault; a separate internal worker process holds the key and has no public interface. The web role verifies this isolation at start-up.
- Key handling: the encryption key can be kept wrapped under an owner password (scrypt + AES-256-GCM); the service then starts locked and is unlocked by the owner through the bot, and a deploy does not reset it. The key never has to sit in plaintext on disk.
- Disconnect: one click logs the guard out of Telegram and deletes every stored record about the account, the service archive included. Shared channel and supergroup copies remain for other linked accounts until their retention expires or the last link is removed; legal hold can extend retention.
- Offline behaviour: if Telegard is down, nothing happens to the account; sessions are never touched while the guard is offline.
- Web session: httpOnly cookie signed with HMAC; login only through the Telegram bot (no third-party login widget). Login attempts are rate-limited per IP.
- Telegard is not open source at the moment.
Notifications and platforms
- Channels: Telegram bot messages with buttons; web push from the installed PWA (backup alarm channel). Both can be toggled per user.
- Platforms: web dashboard at https://telegard.app/app, Telegram Mini App, installable PWA (iOS, Android, desktop browsers).
- Languages of the product and bot: English, Russian, Spanish, French, German.
Pricing
| Plan | Price | Includes |
|---|---|---|
| Free check | 0, always | Full session scan, risk findings (critical first), manual termination; Telegard logs out after the check. |
| Guard 24/7 | Free during beta | Everything in Free check, automatic termination, bot alerts and buttons, stolen-session and travel rules, audit log. |
| Teams | Free during beta, 0 per seat | Guard for every work account, one-click offboarding with client handover, access log and consents, chats view; archive/DLP building, analytics/AI planned. Paid plans announced 30 days ahead; early organizations get 50% off the first year. |
Telegard Teams — entities
- Team
- An account group with "Teams" switched on. Owned by the user who owns the group.
- Managed account
- A work Telegram account inside a team. Every account of a group with Teams on is a work account (state confirmed) until it is removed from the group. Each has a kind: person or AI agent.
- Consent
- The session itself. Whoever enters the Telegram login code on the account is the one who agrees; Telegram shows the "Telegard" session in Devices and asks "Was this you?". There is no extra bot confirmation. Terminating the Telegard session stops archiving; stored chats are deleted after 30 days unless a legal hold is set.
- Reactive AI
- Telegard's assistant only answers incoming client messages. It never writes first, never contacts anyone on its own, never sends campaigns or calls. For persons it only drafts replies; for AI-agent accounts it may answer autonomously within the playbook (scenarios, hours, hourly cap, stop words that escalate to the owner) and every reply ends with a mandatory disclosure. Every decision is logged with its reason.
- Account kind
- Person (an employee: working-hours rules, drafts only) or AI agent (an account driven by the assistant: no working-hours rules, labelled [AI agent] in digests, may run autonomously). Set by the owner in the account settings.
- Invite link
- https://telegard.app/join/<token>: a one-time link, valid 7 days, through which an employee connects their work account (phone, code, two-step password) straight into the company's group.
- Chats tab
- On a confirmed managed account: the list of dialogs (groups, channels, people, bots; unread counts) and the message history of a chat, read live from Telegram. Every view is written to the access log.
- Access log
- Who opened which chat, searched what, exported what. The employee can ask the bot with /mydata what is stored about their account: counters, retention and the policy version they agreed to, not the log entries themselves.
- Retention
- A per-team setting for how long stored data is kept; legal hold is explicit. Data expires by default rather than living forever.
- Roadmap
- Everything below is built and in beta: archive with deleted and edited messages, full-text search, export, retention and legal hold, DLP rules, analytics and digests, and the reactive assistant and agent (always labelled as an assistant). Beta means free and still being verified in real use.
- Isolation
- Teams is part of the same application and the same database. The archive is a set of tables both processes work with; only the worker process holds the session keys, the encrypted media files with their key, and the AI key, and the web process has no database right to write, rewrite or delete message text. A company's archive holds only accounts of its own groups with Teams on; every connected account is additionally kept in Telegard's own service archive (see Security and privacy model).
Comparisons
| Capability | Telegram built-in | Two-step verification (2FA) | Telegard |
|---|---|---|---|
| Notification about a new login | Service message only | — | Bot message with buttons, within seconds |
| Automatic termination of unknown sessions | No (manual list) | No | Yes |
| Stolen session file (tdata) detection | No | Does not help — no code or password is asked | Yes |
| QR / "confirm login" phishing | No | Does not help — the user approves the device | New session → review → terminated |
| Impossible-travel check | No | No | Yes |
| Audit log | No | No | Yes |
Telegard does not replace two-step verification; enable both. 2FA stops password-based logins; Telegard catches the logins that 2FA cannot.
Attack vectors Telegard is built for
- QR and "confirm login" phishing.
- Stolen desktop session files (tdata stealers, infostealers).
- SIM swap.
- "Premium gift" and vote scams that phish the login code.
Who it is not for
- People who want message backup or chat export — the service archive is Telegard's own and is not a backup tool; /mydata exports only what it holds (Teams archive is a separate, consent-based feature).
- Anyone who cannot accept an extra "Telegard" device in their Devices list — it is technically unavoidable.
- Accounts that need immediate termination in the first 24 hours after connecting — Telegram itself forbids it; Telegard warns and retries.
Contacts
- Bot: @TelegardAppBot
- Channel: @TelegardApp
- Web: telegard.app · Teams: telegard.app/teams · FAQ: telegard.app/faq/