Telegram Verification
Verify phone numbers through Telegram's secure messaging platform. Privacy-focused, fast, and developer-friendly.
Proof Holdingsproof.holdings · verification api
AttestationNº 2026-0043
subject+370 691 •• •99
channelTelegram
methodReverse OTP
challengeVRF-7715 — sent by the user, not to them
receivedVRF-7715 · 14:02:07 UTC
verdictControl proventhe code never travels to the handset
Mintedph_ctl_3a0b…f52 · ES256
How It Works
Secure verification through Telegram bot interaction
§ 01
Create Request
Call our API with the phone number. We return a challenge code and Telegram bot deep link.
§ 02
User Messages Bot
The user opens the link in Telegram and taps 'Share contact' — Telegram sends us the number the account is registered to.
§ 03
Instant Verification
We check that the shared number matches and return a signed proof token: poll GET /verifications/:id, or wait on its event stream.
API Integration
Integrate Telegram verification seamlessly
1. Create Verification Request
curl -X POST https://api.proof.holdings/api/v1/verifications \
-H "Authorization: Bearer pk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "phone",
"channel": "telegram",
"identifier": "+37069199199"
}'2. Verify the Proof Token
# Poll for verification status
curl https://api.proof.holdings/api/v1/verifications/VERIFICATION_ID \
-H "Authorization: Bearer pk_live_YOUR_API_KEY"Response Example
{
"id": "507f1f77bcf86cd799439011",
"type": "phone",
"channel": "telegram",
"status": "pending",
"identifier": "+37069199199",
"challenge": {
"code": "A7B3X9",
"expires_at": "2026-03-15T11:00:00Z",
"send_to": "@ProofHoldingsBot",
"instruction": "Open Telegram and tap the button to share your phone number",
"deep_link": "https://t.me/ProofHoldingsBot?start=507f1f77bcf86cd799439011"
},
"created_at": "2026-03-15T10:50:00Z"
}