Verification methodology
How TG Validator verifies a Telegram number
TG Validator returns a Telegram registration result for service_type=tg, synchronously for single and multi checks. This page covers the check flow, the registered field, and the limits of the result.
Reviewed August 31, 2026
What happens during a Telegram check?
TG Validator checks one phone number at a time: submit the number in E.164 format, and the result comes back in the same HTTP response. In a successful response, registered=true means the number is registered on Telegram and registered=false means it is not. Any other outcome is returned as an error code and the check is refunded.
Complete one check
This section covers realtime checks: the SaaS dashboard and the synchronous REST endpoints share one check service and one response meaning. Very large lists have an asynchronous bulk option, covered at the end of this page.
- 1
Submit a number
Submit one E.164 phone number with its country code, as described in the API documentation.
- 2
Use service_type=tg
The tg product checks whether the number was registered on Telegram at check time.
- 3
Read the result
Read registered in the same response. Run a new check when you need an updated status.
Which phone number format to submit
TG Validator accepts one phone number per check, written in E.164 format: a plus sign, the country code, then the subscriber number with no spaces or punctuation — for example +14155552671. This is the same format the Telegram app stores internally, so a number in this form maps to exactly one account. A number without a country code cannot be checked reliably: the same digits exist in many countries.
- Always include the country code; do not rely on the country of your own account.
- Strip spaces, dashes, brackets and leading zeros used for national dialling — keep only + and digits.
- Numbers in the wrong format are rejected before any charge; a rejected format is not a "not registered" result.
Read registered only from a successful response
registered is the answer of a Telegram check. It only appears in a successful response, and it is a boolean: true means the number is registered on Telegram at the moment of the request, false means it is not. Anything else — a timeout, an undetermined result, an invalid number — comes back as an error code instead, and TG Validator refunds that check automatically. So a missing registered field never means "not registered"; it means the check did not produce a result. The value reflects the moment you asked: accounts are created and deleted all the time, so refresh the check before you act on an old result rather than caching it for weeks.
- registered=true means registered.
- registered=false means not registered.
- Handle other outcomes according to the API response code; do not infer registered yourself.
Use the result within its scope
A check reflects the status at request time. It is not identity verification or permission to contact someone.
- It does not confirm who owns the number, whether they are online at this moment, or any message content; the activity products return last-seen time and active days, not live presence.
- A registered result does not establish consent to contact the number.
- Run a new check when the business decision needs a current status.
Very large lists: the asynchronous option
The dashboard multi check and the API multi endpoint cover most lists. Only when a list far exceeds those limits does it make sense to submit the whole file as one asynchronous bulk task — you choose the country the list belongs to, and it should be essentially that one country.
- Upload a .txt or .csv with one E.164 number per line, from the bulk check page or through the API.
- Choose the country the numbers belong to when submitting; the list should be essentially that one country, and too many numbers from elsewhere are rejected before any charge.
- Balance is reserved for the valid lines on submit, you are charged only for numbers that return a result, and the difference is refunded.
- The task runs in the background; download the result file when it finishes. A failed task is refunded in full.
What does registered mean?
In a successful response, registered=true means registered and registered=false means not registered. Handle other outcomes according to the API response code.
Read registered
In a successful response, registered=true means registered and registered=false means not registered.
- Only registered in a successful response is a registration result.
- Handle other outcomes according to the API response code.