Guides

Bulk Telegram number check for Asian customer lists (Indonesia, India, Philippines, Vietnam, Hong Kong)

Check Telegram numbers in bulk for Indonesia, India, the Philippines, Vietnam, Hong Kong and more: normalising Asian formats, privacy and unknowns, cost caps.

By Published 7 min read

On this page

To check Telegram numbers in bulk for a customer list from Asia, convert every number to E.164 (+62, +91, +63, +84, +852 and so on), then run one bulk job with the Telegram check: upload a CSV in the dashboard or call POST /v1/jobs for up to 50,000 numbers. Each number comes back registered, not registered or unknown with the time of the check. Unknown answers are never billed. Normalising first avoids invalid rows and wrong numbers, and Telegram's privacy settings make "not registered" a soft no.

This guide covers the bulk workflow and per-country details. For what a single answer can and can't tell you, read our Telegram number check guide.

What does a bulk Telegram check return for each number?

One of three answers per number, as in real time, plus the reasons a row isn't checked:

AnswerMeaningBilled
registered: trueA Telegram account can be found for the numberYes
registered: falseNo account was found through this numberYes
registered: null (unknown)No conclusive answer this time; reason says whyNo
invalid_number, duplicate, unsupported_countryThe row was not checkedNo

Read false as "not reachable through this number", not "doesn't use Telegram". On Telegram, "each phone number is a separate account" (Telegram FAQ), but the holder controls who can find them by it.

An uploaded list of numbers in mixed national formats flows through a funnel marked E.164 into a results table where each row has a calling-code chip and three separate answers: yes, no or unknown.An uploaded list of numbers in mixed national formats flows through a funnel marked E.164 into a results table where each row has a calling-code chip and three separate answers: yes, no or unknown.
Normalise every number first; each channel then gets its own yes, no or unknown answer.

How much is Telegram used in Asia?

Telegram says it has "over 1 billion active users" worldwide (Telegram FAQ). It doesn't publish a per-country breakdown, and we haven't found a measurement of Telegram use in Indonesia, India, the Philippines or Hong Kong that we can verify, so we don't quote shares. Figures online mix downloads, surveys and monthly users, and disagree.

Access can also change. In May 2025, Vietnam's telecom department ordered internet providers to block Telegram (Al Jazeera, 2025). OONI's network measurements found the block in place on major Vietnamese networks from 25 May 2025 and lifted on 10 July 2025 (OONI, 2025). A registration answer doesn't say whether the app is reachable there on the day you send.

So measure your own base: a bulk check of customers who opted in shows how many you can reach on Telegram, country by country. The channel-by-country guide covers the method.

How do you normalise Asian numbers before a bulk check?

Convert each number to E.164: a plus sign, the country code and the national number without the trunk 0 (ITU-T E.164). Common forms and traps in Asian lists:

CountryNational mobile formE.164 formTrapGuide
India10 digits starting 6–9, sometimes with a trunk 0 or 0091 in front+91 + 10 digitsA 12-digit value starting 91 is already international: add +, don't add another 91India
Indonesia08XX…+62 8XX… (9 to 12 digits after +62)Mobile numbers vary in length, so a fixed-length rule rejects real numbersIndonesia
Philippines09XX XXX XXXX+63 9XX XXX XXXXDrop the 0; a few mobile blocks start 81 or 89, not 9Philippines
Vietnam0 + 9 digits (03, 05, 07, 08, 09)+84 + 9 digitsOld 11-digit numbers (012x, 016x, 018x, 0199) were converted to 10 digits and are no longer in use (Wikipedia)–
Pakistan03XX XXXXXXX+92 3XX XXXXXXXDrop the 0 before 3Pakistan
Hong Kong8 digits, no trunk 0+852 + 8 digitsSingapore numbers also have 8 digits, so a list without codes can mix the twoHong Kong
Mainland China11 digits starting 1, no trunk 0+86 + 11 digitsHong Kong and Macau numbers are not +86China

Four habits help:

  1. One country per job, or E.164 per row. A job takes one default_country for numbers written without +. With default_country=ID, a Philippine 0917… number parses as a valid-looking Indonesian landline, so the wrong number is checked. Convert each row with the country you stored for that customer, then upload.
  2. Protect leading zeros. Spreadsheets drop the 0 of 0812… and show long numbers in scientific notation. Keep the phone column as text, or export E.164.
  3. Don't remap old Vietnamese numbers by guesswork. A converted 016x number answers invalid_number, which is free. Ask the customer for the current number instead of rebuilding it.
  4. Normalise before you deduplicate. 0812… and +62812… are the same number. The job removes duplicates after normalising and never bills them.

How do privacy settings change bulk results?

They decide whether an existing account can be found by its number at all. Telegram's API defines separate settings for "whether people will be able to see your phone number" and "whether people can add you to their contact list by your phone number" (Telegram API). In the app, people control "whether others are allowed to find them by their phone number" (Telegram, 2022). By default, a user's number is visible only to people they have added to their address book as contacts (Telegram FAQ).

When someone limits discovery, the check through their number can answer false or unknown although the account exists. Since December 2022, people can also sign up with anonymous numbers from the Fragment platform instead of a SIM (Telegram, 2022); such an account never matches the mobile number in your CRM. Expect a share of "no" answers from real Telegram users, respect them as the person's choice, and don't re-check repeatedly hoping for a different result.

Which Asian countries does the Telegram check cover?

All of them that we serve. Our catalog lists the Telegram check as worldwide, in real time and in bulk jobs, with no country gaps. That includes Indonesia, India, the Philippines, Vietnam, Pakistan, Hong Kong and mainland China. Only numbers from sanctioned countries and regions are never checked; they answer unsupported_country and are free (full list).

One note for combined jobs: WhatsApp gets the bulk price only for groups of at least 132 numbers per country in one job (at the time of writing). Smaller groups are priced at the real-time rate and appear in the estimate as small_batch. Telegram has no such rule and no per-country minimum; the bulk jobs docs explain both.

Should you upload in the dashboard or use POST /v1/jobs?

Both run the same job, with the same limits, prices and anti-enumeration rules:

Dashboard uploadPOST /v1/jobs
InputCSV or TXT up to 10 MB, or pasted numbersJSON list, or CSV as multipart/form-data
Country for national formatsAsked for numbers without +default_country
Estimate and cost capShown before you start; optional capPOST /v1/jobs/estimate, then max_cost
ResultsCSV downloadPaged results, filters, CSV or NDJSON
Best forOne-off clean-upsMonthly refreshes, pipelines

How do you run the job with the API?

Estimate first, then create the job with a cost cap. The example uses the documented test values, which always answer the same way and are never billed:

Shell
curl https://api.mobilevalidate.com/v1/jobs/estimate \
  -H "Authorization: Bearer $MOBILEVALIDATE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"numbers": ["+447700900001", "+447700900002", "+447700900003"], "checks": ["telegram", "whatsapp", "carrier"]}'

curl https://api.mobilevalidate.com/v1/jobs \
  -H "Authorization: Bearer $MOBILEVALIDATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: asia-list-2026-10" \
  -d '{"numbers": ["+447700900001", "+447700900002", "+447700900003"],
       "checks": ["telegram", "whatsapp", "carrier"],
       "max_cost": {"amount": "5.00", "currency": "USD"}}'
# then: GET /v1/jobs/{id}?wait=30 and GET /v1/jobs/{id}/results?service=telegram&registered=true

With a live key, send your normalised numbers and set max_cost to the estimate's max_cost or your budget; a job that could cost more is refused before anything runs. Test keys estimate zero. The three test numbers answer:

Test numbertelegramwhatsappcarrier
+447700900001registered: trueregistered: trueline_type: "mobile"
+447700900002registered: falseregistered: falseunknown (NO_DATA)
+447700900003unknown (UPSTREAM_TIMEOUT)unknown (UPSTREAM_TIMEOUT)unknown (UPSTREAM_TIMEOUT)

A job allows 100,000 checks (rows times checks), so three checks per row fit about 33,000 numbers. For large lists, subscribe a webhook to job.completed instead of polling.

How is a bulk Telegram check billed?

Only conclusive answers are charged. You're not charged for inconclusive results (unknown, unsupported country, timeout, invalid, duplicate), and answers still fresh in your account's cache are free. Bulk is cheaper per number than real time. The job reserves the estimate's maximum, settles each answer and releases the rest. See pricing for current rates per check.

How do you choose a channel from Telegram, WhatsApp and carrier answers?

Combine the answers per customer, then send only on channels the customer agreed to:

TelegramWhatsAppCarrierReasonable choice for a customer who opted in
trueanymobileTelegram if the customer chose it; SMS as fallback
false or unknowntruemobileWhatsApp if they opted in there, otherwise SMS
falsefalsemobileSMS
anyanynot mobile, or unknownCheck the number is active before relying on SMS; fix the record

Store each answer with checked_at and never overwrite a stored conclusive answer with unknown. Our guide to cleaning a phone list in bulk covers the other hygiene steps; the Telegram check page lists the fields.

What makes a bulk Telegram check acceptable?

A lawful basis for every number and a purpose the customer would expect: delivering messages they asked for, keeping your list accurate, choosing a channel they can receive, or fraud prevention. This is general guidance, not legal advice.

  • Your customers only. Check numbers people gave you. Telegram uses phone numbers as identifiers and asks permission before it syncs anyone's contacts (Telegram Privacy Policy); hold your own list to at least that standard.
  • No ranges, no target lists. Requests with 20 or more consecutive numbers are refused with suspected_enumeration, and each account has a daily cap (rate limits). Using checks to find people to message unsolicited is forbidden by our acceptable use policy.
  • Yes, no or unknown only. No usernames, names, photos or activity are returned, and people can object through the opt-out form.

Telegram and WhatsApp are named descriptively; MobileValidate is not affiliated with either. To try the workflow, get a free test key and run the requests above.

Sources

  1. Telegram FAQ — Telegram, 2026
  2. Telegram Privacy Policy (3.4 Phone Number and Contacts) — Telegram, 2026
  3. InputPrivacyKey (API documentation) — Telegram, 2026
  4. No-SIM Signup, Auto-Delete All Chats, Topics 2.0 and More — Telegram, 2022
  5. Vietnam blocked Telegram — OONI, 2025
  6. Vietnam orders ban on popular messaging app Telegram — Al Jazeera, 2025
  7. Recommendation ITU-T E.164: The international public telecommunication numbering plan — ITU, 2010
  8. Telephone numbers in Vietnam — Wikipedia, 2026

Frequently asked questions

How many numbers can I check for Telegram in one bulk job?

Up to 50,000 phone numbers and e-mail addresses per job, and up to 100,000 checks per job counted as rows times checks. A job with Telegram, WhatsApp and carrier checks on every row therefore fits about 33,000 numbers. Larger lists go into several jobs.

Do I need to convert numbers to +62, +91 or +63 format first?

For a list from one country, no: set default_country and the job reads national formats such as 0812 or 09XX. For a list that mixes countries, yes. A job has one default_country, so convert each row to E.164 with the country you hold for that customer, then upload.

Why do some numbers come back unknown or not registered when the customer uses Telegram?

Telegram lets people decide whether others can find them by their phone number, and an account can sit on a different number than the one you hold. Such numbers can answer not registered or unknown. Unknown answers are never billed.

Does the Telegram check cover Indonesia, India, Vietnam and the rest of Asia?

Yes. Our catalog lists the Telegram check as worldwide in real time and in bulk jobs, with no country gaps. Only numbers from sanctioned countries and regions are never checked; they answer unsupported_country and are free.

Can I use a bulk Telegram check to find new people to message?

No. Check only the numbers of customers and sign-ups who gave them to you, and message only those who agreed to hear from you on Telegram. Lists that look like sequential number ranges are refused, and our acceptable use policy forbids finding recipients for unsolicited messages.

All articles

Know before you send.

Tell us about your use case. We review every request and set you up with test and live keys.