Skip to main content
The Logs page gives you a live, scrollable record of every authentication session across all your projects. Unlike the aggregated numbers on the Analytics page, each row here represents a single user’s attempt to authenticate — with the full context you need to understand what happened and why. Use this page whenever you need to verify a specific login, investigate a user complaint, or confirm that your integration is working as expected.

What each log entry shows

Every row in the logs table corresponds to one auth session and includes the following fields:
FieldDescription
Session IDThe unique identifier for this auth session. Reference this ID when contacting support or correlating with your own server logs.
ProjectThe name of the Bondify project that initiated this session.
Telegram userThe user’s display name, @username, and numeric Telegram ID. If the user has not set a username, the username column shows a dash.
StatusThe current state of the session (see below).
Created atWhen the session was initiated, displayed as a relative timestamp (e.g., 5m, 2h).
Confirmed atThe timestamp when the user approved the request in Telegram. Only present for confirmed and used sessions.

Session statuses

Each session resolves to one of five statuses, colour-coded for quick scanning:
StatusColourMeaning
confirmed🟢 GreenThe user approved the auth request in Telegram. The session is valid and can be exchanged for a user identity.
pending🟡 YellowThe auth request has been sent to Telegram but the user has not yet responded.
expired🟠 OrangeThe session timed out before the user confirmed. The link or QR code is no longer valid.
cancelled🔴 RedThe user explicitly rejected the request, or your server cancelled the session via the API.
used🔵 BlueThe session was confirmed and subsequently consumed — the auth token has already been exchanged.

Filtering sessions

Use the filter chips above the table to narrow the list to sessions of a specific status:
  • All — shows every session regardless of outcome (default).
  • Confirmed — successful logins. This filter also surfaces used sessions (sessions that were confirmed and subsequently consumed), so you see the full picture of successful authentications in one view.
  • Pending — sessions still awaiting user action.
  • Expired — sessions that timed out.
  • Cancelled — sessions rejected or cancelled.
Click Refresh in the top-right corner to pull the latest sessions from the server at any time.
Sort by newest first to see the most recent activity at the top of the table. When a user reports they cannot log in, filter by their Telegram ID or username and look for cancelled or expired entries — these indicate where the flow broke down for that specific user.

Underlying API

The Logs page is powered by the sessions endpoint. If you want to retrieve session data programmatically — for example to build your own audit tooling or export records — you can call it directly:
GET /api/v1/dev/sessions
Authorization: Bearer <your-developer-token>
The response returns a sessions array. Each element maps directly to the fields shown in the dashboard table: id, project_id, project_name, telegram_id, telegram_name, telegram_username, status, created_at, and confirmed_at.

Debugging with logs

If users report authentication problems, the logs page is the fastest place to start your investigation:
  1. Filter by expired — a high proportion of expired sessions usually means users are not receiving the Telegram message. Verify your bot is active and that no Telegram API rate limits are in effect.
  2. Filter by cancelled — if users are cancelling, they may be confused by the confirmation prompt or reaching the wrong bot. Double-check your project’s bot mode and the message text your integration sends.
  3. Look for pending sessions that never progress — if sessions stay pending indefinitely, your webhook may not be reachable. Confirm your webhook URL returns 200 OK and is not behind a firewall or VPN.
  4. Cross-reference confirmed_at — compare the created_at and confirmed_at timestamps to measure how long users take to confirm. Unusually long gaps may point to UX friction in your auth flow.
Log retention depends on your Bondify plan. Starter plans retain 7 days of session logs; Pro plans retain 90 days. Sessions older than your plan’s retention window are permanently removed and cannot be recovered. Upgrade your plan before the window expires if you need long-term audit records.

Projects

Manage the projects that generate the sessions you see in your logs.

Analytics

See aggregated conversion rates and daily activity across all your projects.