Telegram Number Validation & Profile Lookup — Try the interactive demo
A guided live test. Prefer the raw endpoints? See the API reference & playground →
Enter an API key from your Dashboard to enable the examples below. Requests send it to this platform for authentication.
Log in / Sign up · Dashboard →
Please paste your API key first.
Endpoints
Your API key is attached automatically to each call.
/api/project/telegram/check-exists Check Telegram Peer Exists
Details
Resolve a peer and return whether it exists on Telegram. Cheapest query; use it to pre-validate numbers/usernames before the about/picture queries. When exists=true, the response also includes the numeric Telegram user id, username (when the peer has one), display name, and a userHash that must be passed to Get About / Get Picture to authorize the heavier lookup. The userHash is valid for 24 hours. When the peer cannot be resolved, exists=false and reason carries an error code (e.g. PHONE_NOT_OCCUPIED, USERNAME_NOT_OCCUPIED). The peer accepts three forms: +phone (digits with a leading +, e.g. +8613800138000), @username or a bare username, and user:<id> for a numeric user ID.
| Parameter | In | Value |
|---|---|---|
| path |
/api/project/telegram/get-about Get About / Bio Text
Details
Retrieve a Telegram user's public bio (About) text, plus the numeric user id and username. Two-step flow: first call Check Telegram Peer Exists to obtain a userHash for the target peer, then pass that userHash here. Calls without a valid (or expired/unknown) userHash are rejected. The peer is resolved from the userHash server-side — no peer parameter is accepted. If the peer does not exist, exists=false and reason explains why. An empty about means the user has no bio or hides it. If the peer exists but is a group/channel rather than a user, the response carries a bad-request business code.
| Parameter | In | Value |
|---|---|---|
| query |
/api/project/telegram/get-picture Get Profile Photo (Avatar)
Details
Fetch a Telegram user's profile photo. Two-step flow: first call Check Telegram Peer Exists to obtain a userHash for the target peer, then pass that userHash here. Calls without a valid (or expired/unknown) userHash are rejected. The peer is resolved from the userHash server-side — no peer parameter is accepted. Telegram photos have no public URL, so the photo is returned base64-encoded with its MIME type (image/jpeg) — decode the data field to get the image bytes. pictureSet=false means the user has no photo or hides it by privacy settings. If the peer does not exist, exists=false and reason explains why.
| Parameter | In | Value |
|---|---|---|
| query |