TG Validator Referensi API

Setiap endpoint berbagi satu kunci API dan satu saldo.

ItemNilai
URL dasarhttps://tgvalidator.com
Header autentikasiX-API-Key: sk_your_api_key
Amplop respons{ code, msg, data }

Harga tidak dicantumkan di sini; setiap produk ditagihkan per pemeriksaan yang berhasil. Lihat harga

Autentikasi

Gunakan kunci API yang dibuat di Pengaturan dan kirimkan bersama setiap permintaan.

Header autentikasi
X-API-Key: sk_your_api_key

Jaga kerahasiaan kunci API AndaSelalu panggil endpoint ini dari server Anda. Siapa pun yang memegang kunci dapat menghabiskan saldo Anda.

Pemeriksaan sinkron

POST/api/v1/checkPOST/api/v1/batch-check

Kirim satu nomor telepon, atau hingga 100 dalam satu permintaan, dan baca hasilnya di respons yang sama. Tanpa polling, tanpa callback. Hasil yang tidak dapat ditentukan mengembalikan 422 dengan kode 42200 dan tidak ditagihkan. Permintaan multi mempertahankan urutan input, menagih setiap pengenal secara terpisah, dan memiliki waktu 300 detik untuk selesai — jika tidak, seluruh permintaan gagal dan setiap tagihan dikembalikan.

Parameter

FieldTipeDeskripsi
service_typestringKode produk, salah satu produk yang tercantum di bawah.
identifierstringPemeriksaan tunggal: satu nomor telepon. Server akan menormalkannya.
identifiersstring[]Pemeriksaan multi: 1 hingga 100 nomor telepon. Respons mempertahankan urutan ini.

Pemeriksaan Pendaftaran Telegram

tgtelepon

Pastikan apakah sebuah nomor terdaftar di Telegram — berguna untuk memeriksa daftar kontak sebelum Anda mengirim.

Pemeriksaan tunggal

POST/api/v1/check
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/check" \
  -H "X-API-Key: sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "service_type": "tg", "identifier": "+17253100591" }'
{
  "code": 0,
  "msg": "ok",
  "data": {
    "service_type": "tg",
    "identifier": "+17253100591",
    "registered": true
  }
}
Field respons
FieldTipeDeskripsi
registeredbooleanApakah nomor terdaftar di Telegram.

Pemeriksaan multi

POST/api/v1/batch-check
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/batch-check" \
  -H "X-API-Key: sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "service_type": "tg", "identifiers": ["+17253100591", "+14155550000", "12345"] }'
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "service_type": "tg",
    "total": 3,
    "succeeded": 2,
    "failed": 1,
    "results": [
      {
        "identifier": "+17253100591",
        "exists": true,
        "registered": true
      },
      {
        "identifier": "+14155550000",
        "exists": true,
        "registered": false
      },
      {
        "identifier": "12345",
        "exists": false
      }
    ]
  }
}
Field respons
FieldTipeDeskripsi
existsbooleanApakah nomor ini menghasilkan hasil. false berarti formatnya tidak valid, hasilnya tidak dapat ditentukan, atau pemeriksaan gagal; jika false, tidak ada field di bawah ini yang disertakan.
registeredbooleanApakah nomor terdaftar. Hanya ada jika exists bernilai true, dengan arti yang sama seperti pemeriksaan tunggal.

Pemeriksaan asinkron

POST/api/v1/bulk-tasksGET/api/v1/bulk-tasks/{id}

Unggah file dan langsung dapatkan ID tugas, lalu periksa ID tersebut sampai berhasil. Respons yang berhasil membawa result_url, tautan unduhan hasil. Hanya ada dua tindakan: kirim dan periksa. Lakukan polling tidak lebih sering dari sekali setiap 30 detik.

Parameter

FieldTipeDeskripsi
service_typestringKode produk massal, salah satu produk yang tercantum di bawah.
countrystringKode ISO 3166-1 seperti US. Wajib untuk tugas nomor: setiap nomor harus menyertakan kode negaranya dan berasal dari negara ini (nomor yang tidak memenuhi akan dikecualikan dan tidak ditagihkan); juga menentukan perutean. Dalam multipart, field ini harus berada sebelum file.
filefileFile .txt atau .csv dengan satu pengenal per baris, hingga max_file_bytes (default 20MB).
Idempotency-KeyheaderOpsional, hingga 128 karakter. Mengirim ulang kunci yang sama mengembalikan tugas asli alih-alih membuat tugas kedua.

Pemeriksaan Pendaftaran Telegram Massal

tg_batchtelepon1.000–500.000 per tugas

Unggah seluruh file berisi nomor, ketahui mana yang terdaftar di Telegram, dan unduh file hasil setelah selesai.

Kirim tugas

POST/api/v1/bulk-tasks
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/bulk-tasks" \
  -H "X-API-Key: sk_your_api_key" \
  -F service_type=tg_batch \
  -F country=US \
  -F file=@numbers.txt
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_batch",
    "status": "processing",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1015,
    "invalid_cnt": 0,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 0,
    "preparing": true,
    "created_at": "2026-09-08T09:30:00Z"
  }
}

Periksa tugas

GET/api/v1/bulk-tasks/{id}
Permintaan
curl "https://tgvalidator.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_batch",
    "status": "success",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1000,
    "invalid_cnt": 3,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 12,
    "preparing": false,
    "success_cnt": 990,
    "failure_cnt": 10,
    "result_url": "https://…/result.csv",
    "created_at": "2026-09-08T09:30:00Z"
  }
}
Kolom hasil
Fieldcontoh:Deskripsi
identifier17253100591Nomor yang dikirim dalam bentuk digit polos dengan kode negara, tanpa tanda plus atau spasi (mis. 17253100591).
activatedtrueApakah nomor terdaftar di Telegram: true atau false.

Pemeriksaan Aktivitas Telegram Massal

tg_active_batchtelepon1.000–500.000 per tugas

Status pendaftaran ditambah ID pengguna, nama pengguna, dan hari aktif — jumlah hari sejak setiap akun terakhir terlihat — di seluruh daftar.

Kirim tugas

POST/api/v1/bulk-tasks
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/bulk-tasks" \
  -H "X-API-Key: sk_your_api_key" \
  -F service_type=tg_active_batch \
  -F country=US \
  -F file=@numbers.txt
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_active_batch",
    "status": "processing",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1015,
    "invalid_cnt": 0,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 0,
    "preparing": true,
    "created_at": "2026-09-08T09:30:00Z"
  }
}

Periksa tugas

GET/api/v1/bulk-tasks/{id}
Permintaan
curl "https://tgvalidator.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_active_batch",
    "status": "success",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1000,
    "invalid_cnt": 3,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 12,
    "preparing": false,
    "success_cnt": 990,
    "failure_cnt": 10,
    "result_url": "https://…/result.csv",
    "created_at": "2026-09-08T09:30:00Z"
  }
}
Kolom hasil
Fieldcontoh:Deskripsi
identifier17253100591Nomor yang dikirim dalam bentuk digit polos dengan kode negara, tanpa tanda plus atau spasi (mis. 17253100591).
activatedtrueApakah nomor terdaftar di Telegram: true atau false. Jika tidak true, semua kolom lain di baris tersebut dibiarkan kosong.
uid1234567890ID pengguna Telegram.
usernamealex_kimNama pengguna, kosong jika akun tidak memilikinya.
activedays9Jumlah hari sejak akun terakhir terlihat, berupa bilangan bulat — semakin kecil semakin baru. Jika akun menyembunyikan waktu terakhir terlihat yang tepat, Telegram hanya menampilkan rentang, dan nilainya merupakan perkiraan: 0 (baru-baru ini), 7 (dalam seminggu), 30 (dalam sebulan), atau 1000 (sudah lama).

Pemeriksaan Profil Telegram Massal

tg_profile_batchtelepon1.000–500.000 per tugas

ID pengguna, nama pengguna, hari aktif, URL avatar, serta usia, jenis kelamin, dan warna kulit yang diperkirakan dari avatar — di seluruh daftar.

Kirim tugas

POST/api/v1/bulk-tasks
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/bulk-tasks" \
  -H "X-API-Key: sk_your_api_key" \
  -F service_type=tg_profile_batch \
  -F country=US \
  -F file=@numbers.txt
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_profile_batch",
    "status": "processing",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1015,
    "invalid_cnt": 0,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 0,
    "preparing": true,
    "created_at": "2026-09-08T09:30:00Z"
  }
}

Periksa tugas

GET/api/v1/bulk-tasks/{id}
Permintaan
curl "https://tgvalidator.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_profile_batch",
    "status": "success",
    "country": "US",
    "submitted_lines": 1015,
    "total": 1000,
    "invalid_cnt": 3,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 12,
    "preparing": false,
    "success_cnt": 990,
    "failure_cnt": 10,
    "result_url": "https://…/result.csv",
    "created_at": "2026-09-08T09:30:00Z"
  }
}
Kolom hasil
Fieldcontoh:Deskripsi
identifier17253100591Nomor yang dikirim dalam bentuk digit polos dengan kode negara, tanpa tanda plus atau spasi (mis. 17253100591).
activatedtrueApakah nomor terdaftar di Telegram: true atau false. Jika tidak true, semua kolom lain di baris tersebut dibiarkan kosong.
uid1234567890ID pengguna Telegram.
usernamealex_kimNama pengguna, kosong jika akun tidak memilikinya.
activedays9Jumlah hari sejak akun terakhir terlihat, berupa bilangan bulat — semakin kecil semakin baru. Jika akun menyembunyikan waktu terakhir terlihat yang tepat, Telegram hanya menampilkan rentang, dan nilainya merupakan perkiraan: 0 (baru-baru ini), 7 (dalam seminggu), 30 (dalam sebulan), atau 1000 (sudah lama).
avatar_urlhttps://telegram.waavatar.xyz/v/example.jpgURL avatar, kosong jika akun tidak memiliki avatar.
age31Usia yang diperkirakan dari avatar; kosong jika tidak dapat diperkirakan.
gendermaleJenis kelamin yang diperkirakan dari avatar: male atau female; unknown jika tidak dapat dikenali, kosong jika tidak ada avatar.
skin_colorwhiteWarna kulit yang diperkirakan dari avatar, mis. white, middle_eastern, east_asian; unknown jika tidak dapat dikenali, kosong jika tidak ada avatar.

Pemeriksaan Nama Pengguna Telegram Massal

tg_username_batchnama pengguna1.000–500.000 per tugas

Unggah daftar nama pengguna Telegram dan pastikan mana yang milik akun sungguhan.

Kirim tugas

POST/api/v1/bulk-tasks
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/bulk-tasks" \
  -H "X-API-Key: sk_your_api_key" \
  -F service_type=tg_username_batch \
  -F file=@usernames.txt
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_username_batch",
    "status": "processing",
    "submitted_lines": 1015,
    "total": 1015,
    "invalid_cnt": 0,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 0,
    "preparing": true,
    "created_at": "2026-09-08T09:30:00Z"
  }
}

Periksa tugas

GET/api/v1/bulk-tasks/{id}
Permintaan
curl "https://tgvalidator.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_username_batch",
    "status": "success",
    "submitted_lines": 1015,
    "total": 1000,
    "invalid_cnt": 3,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 12,
    "preparing": false,
    "success_cnt": 990,
    "failure_cnt": 10,
    "result_url": "https://…/result.csv",
    "created_at": "2026-09-08T09:30:00Z"
  }
}
Kolom hasil
Fieldcontoh:Deskripsi
identifieralex_kimNama pengguna yang dikirim, tanpa @ atau t.me/ (mis. alex_kim).
activatedtrueApakah nama pengguna milik akun Telegram yang ada: true atau false.

Pemeriksaan Profil Nama Pengguna Telegram Massal

tg_username_profile_batchnama pengguna1.000–500.000 per tugas

ID pengguna, hari aktif, dan URL avatar untuk seluruh daftar nama pengguna.

Kirim tugas

POST/api/v1/bulk-tasks
Permintaan
curl -X POST "https://tgvalidator.com/api/v1/bulk-tasks" \
  -H "X-API-Key: sk_your_api_key" \
  -F service_type=tg_username_profile_batch \
  -F file=@usernames.txt
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_username_profile_batch",
    "status": "processing",
    "submitted_lines": 1015,
    "total": 1015,
    "invalid_cnt": 0,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 0,
    "preparing": true,
    "created_at": "2026-09-08T09:30:00Z"
  }
}

Periksa tugas

GET/api/v1/bulk-tasks/{id}
Permintaan
curl "https://tgvalidator.com/api/v1/bulk-tasks/3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": "3f9c2a7d8e4b4c1a9f0e6b2d5c8a7e13",
    "product": "tg_username_profile_batch",
    "status": "success",
    "submitted_lines": 1015,
    "total": 1000,
    "invalid_cnt": 3,
    "no_code_cnt": 0,
    "other_country_cnt": 0,
    "duplicate_cnt": 12,
    "preparing": false,
    "success_cnt": 990,
    "failure_cnt": 10,
    "result_url": "https://…/result.csv",
    "created_at": "2026-09-08T09:30:00Z"
  }
}
Kolom hasil
Fieldcontoh:Deskripsi
identifieralex_kimNama pengguna yang dikirim, tanpa @ atau t.me/ (mis. alex_kim).
activatedtrueApakah nama pengguna milik akun Telegram yang ada: true atau false. Jika tidak true, semua kolom lain di baris tersebut dibiarkan kosong.
uid1234567890ID pengguna Telegram; dapat kosong meskipun akunnya ada.
activedays9Jumlah hari sejak akun terakhir terlihat, berupa bilangan bulat — semakin kecil semakin baru. Jika akun menyembunyikan waktu terakhir terlihat yang tepat, Telegram hanya menampilkan rentang, dan nilainya merupakan perkiraan: 0 (baru-baru ini), 7 (dalam seminggu), 30 (dalam sebulan), atau 1000 (sudah lama). Dapat kosong jika akun tidak menampilkan informasi terakhir terlihat apa pun.
avatar_urlhttps://cdn5.telesco.pe/file/example.jpgURL avatar, kosong jika akun tidak memiliki avatar.

Saldo

GET/api/v1/balance

Baca saldo akun saat ini dalam mikro USD. Hanya-baca: tidak membuat catatan pemeriksaan dan tidak menagih apa pun.

Saldo

GET/api/v1/balance
Permintaan
curl "https://tgvalidator.com/api/v1/balance" \
  -H "X-API-Key: sk_your_api_key"
Respons
{
  "code": 0,
  "msg": "ok",
  "data": {
    "balance_micros": 12500000
  }
}

Konkurensi, batas waktu, dan perilaku percobaan ulang

Pemeriksaan pendaftaran Telegram bersifat sinkron. Gunakan kode yang dikembalikan untuk memutuskan apakah akan menerima hasil atau mencoba lagi.

FieldDeskripsi
5 permintaan berjalan per penggunaPemeriksaan tunggal dan multi berbagi batas ini, dan satu permintaan multi dihitung sebagai satu permintaan berapa pun jumlah nomor yang dibawanya. Selain itu, hanya satu pemeriksaan multi per akun yang berjalan pada satu waktu; yang kedua ditolak sampai yang pertama selesai. Mencapai salah satu batas akan langsung mengembalikan kode 42901 tanpa tagihan, beserta header Retry-After — kirim ulang setelah permintaan yang sedang berjalan selesai.
60 dtk tunggal, 300 dtk multiMelampaui batas waktu mengembalikan kode 50400 tanpa tagihan. Pemeriksaan multi yang kehabisan waktu gagal secara keseluruhan — tanpa hasil parsial, dan seluruh jumlah dikembalikan.
Pemeriksaan multi menerima hingga 100 nomorHasil mempertahankan urutan dan jumlah seperti yang dikirim. Satu pemeriksaan multi per akun berjalan dalam satu waktu; kirim batch berikutnya setelah batch sebelumnya kembali.

Kode error

KodeDeskripsi
40000Tipe layanan tidak didukung atau field permintaan saling bertentangan
40001Body JSON tidak valid
40002Nomor tidak valid
40100Kunci API tidak ada atau tidak valid
40200Saldo tidak mencukupi
42200Nomor tidak dapat ditentukan saat ini. Tidak ada data yang dikembalikan dan permintaan tidak ditagihkan
42900Kuota penggunaan habis, atau terlalu banyak pesanan yang belum selesai
42901Kelima slot permintaan yang sedang berjalan sudah terisi, atau pemeriksaan multi sedang berjalan di akun ini; kirim setelah permintaan yang sedang berjalan selesai. Permintaan yang ditolak tidak ditagihkan dan menyertakan header Retry-After
50303Layanan sedang mencapai kapasitas penuh; tidak ditagihkan. Tunggu selama detik Retry-After lalu kirim ulang permintaan yang sama
50400Pemeriksaan tidak selesai dalam batas waktunya dan tidak ditagihkan; coba lagi. Batas waktu batch membuat seluruh batch gagal dan seluruh jumlah dikembalikan
50300Pemeliharaan layanan validasi