POST request to your configured endpoint each time a user completes or abandons a login flow. Every request body is a JSON object with an event field that identifies the event type, plus event-specific fields described below. Before acting on any payload, always verify the X-Bondify-Signature header to confirm the request genuinely originated from Bondify.
auth.confirmed
Bondify firesauth.confirmed as soon as a user taps ✅ Confirm inside the Telegram bot. This is the signal to consider the user authenticated — create their session, set a cookie, or push a notification to your frontend.
Always
"auth.confirmed". Use this field to route the event in your handler.The session token that was confirmed. Matches the token you received from
/api/v1/generate/public when you created the login request.The user’s unique Telegram account ID. This value is stable across logins and safe to use as a primary user identifier.
The user’s display name as set in their Telegram profile (e.g.
"Alex Johnson").The user’s Telegram @handle without the
@ prefix (e.g. "alexj"). This field is null when the user has not set a username in Telegram.Unix timestamp in milliseconds recording when the user tapped Confirm.
auth.cancelled
Bondify firesauth.cancelled when a user taps ❌ Cancel inside the Telegram bot, explicitly declining the login request. Use this event to notify your frontend so it can stop any loading state and display an appropriate message.
Always
"auth.cancelled". Use this field to route the event in your handler.The session token that was cancelled. Use this to look up and invalidate any pending login attempt in your system.
Unix timestamp in milliseconds recording when the user tapped Cancel.