API pengesahan nombor
Status pengesahan nombor WhatsApp (API)
Semak kemajuan tugas pengesahan nombor dan dapatkan keputusan bagi setiap nombor di dalamnya. Tinjau endpoint ini selepas mencipta tugas pengesahan sehingga tugas itu selesai.
https://wbiztool.com/api/v1/verification/status/?campaign_id=4521Contoh ringkas#
curl "https://wbiztool.com/api/v1/verification/status/?campaign_id=4521" \
-H "Authorization: Bearer YOUR_API_KEY"import requests
response = requests.get(
"https://wbiztool.com/api/v1/verification/status/",
headers={"Authorization": "Bearer YOUR_API_KEY"},
params={"campaign_id": 4521},
timeout=60,
)
result = response.json() # read the body even when the HTTP code is 4xx or 5xx
if result["status"] == "success":
progress = result["progress"]
print(result["overall_status"], f"{progress['completed_percentage']}% done")
for item in result["results"]:
print(item["number"], item["status"])
else:
print(f"Failed ({response.status_code}):", result["message"])// Node.js 18+ (built-in fetch). Save as .mjs to use top-level await.
const url = new URL("https://wbiztool.com/api/v1/verification/status/");
url.searchParams.set("campaign_id", "4521");
const response = await fetch(url, {
headers: { Authorization: "Bearer YOUR_API_KEY" },
});
const result = await response.json(); // read the body even when the HTTP code is 4xx or 5xx
if (result.status === "success") {
console.log(result.overall_status, `${result.progress.completed_percentage}% done`);
for (const item of result.results) {
console.log(item.number, item.status);
}
} else {
console.error(`Failed (${response.status}):`, result.message);
}<?php
$ch = curl_init('https://wbiztool.com/api/v1/verification/status/?campaign_id=4521');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 60,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
if (($result['status'] ?? '') === 'success') {
echo $result['overall_status'] . ' - ' . $result['progress']['completed_percentage'] . "% done\n";
foreach ($result['results'] as $item) {
echo $item['number'] . ': ' . $item['status'] . "\n";
}
} else {
echo 'Failed: ' . ($result['message'] ?? 'no response');
}Parameter permintaan#
AuthorizationheaderwajibBearer YOUR_API_KEY, menggunakan kunci dari Settings → API keys (Tetapan → Kunci API). Anda boleh menghantar kunci sebagai parameter pertanyaanapi_key, tetapi pengepala menghalangnya daripada muncul dalam log pelayan dan proksi.campaign_idintegerwajibcampaign_idyang dipulangkan oleh Cipta pengesahan, dihantar dalam rentetan pertanyaan. Ia mesti tugas pengesahan dalam ruang kerja yang sama dengan kunci API.
Respons#
Permintaan yang berjaya memulangkan HTTP 200:
{
"status": "success",
"campaign_id": 4521,
"campaign_name": "Website leads - September",
"overall_status": "processing",
"progress": {
"total": 3,
"pending": 1,
"verified": 1,
"invalid": 1,
"completed_percentage": 66.67
},
"results": [
{
"number": "14155550123",
"status": "pending",
"checked_at": null,
"created_at": "2026-09-16T10:15:00.483101+00:00"
},
{
"number": "919876543210",
"status": "verified",
"checked_at": "2026-09-16T10:16:12.204551+00:00",
"created_at": "2026-09-16T10:15:00.482913+00:00"
},
{
"number": "919876543211",
"status": "invalid",
"checked_at": "2026-09-16T10:16:19.915372+00:00",
"created_at": "2026-09-16T10:15:00.483020+00:00"
}
],
"created_at": "2026-09-16T10:15:00.471820+00:00",
"last_updated": "2026-09-16T10:15:00.471820+00:00"
}
| Medan | Jenis | Penerangan |
|---|---|---|
status | string | "success". Ralat memulangkan "error". |
campaign_id | integer | ID tugas pengesahan. |
campaign_name | string | Nama tugas. |
overall_status | string | pending, processing atau completed. Lihat Nilai status keseluruhan. |
progress.total | integer | Bilangan nombor dalam tugas. |
progress.pending | integer | Nombor yang belum disemak. |
progress.verified | integer | Nombor yang berdaftar di WhatsApp. |
progress.invalid | integer | Nombor yang ditanda invalid (tiada di WhatsApp, bukan nombor yang sah, atau semakan yang gagal). |
progress.completed_percentage | number | Nombor yang telah disemak (verified + invalid) sebagai peratusan daripada total, dibundarkan kepada 2 tempat perpuluhan. |
results | tatasusunan | Setiap nombor dalam tugas, diisih mengikut nombor. Keseluruhan senarai dipulangkan sekali gus, tanpa penomboran halaman. |
results[].number | string | Nombor telefon yang telah dibersihkan. |
results[].status | string | pending, verified, invalid atau unknown. Lihat Nilai status nombor. |
results[].checked_at | string atau null | Masa nombor disemak, atau null semasa ia masih menunggu. |
results[].created_at | string | Masa nombor ditambah. |
created_at | string | Masa tugas dicipta. |
last_updated | string | Masa rekod tugas terakhir diubah. Ia tidak berubah semasa nombor disemak, jadi gunakan checked_at untuk melihat aktiviti terkini. |
Semua cap masa dalam ISO 8601 dalam UTC dengan mikrosaat dan ofset +00:00, contohnya 2026-09-16T10:16:12.204551+00:00.
Nilai status nombor#
| Nilai | Maksud |
|---|---|
pending | Menunggu untuk disemak. |
verified | Nombor itu berdaftar di WhatsApp. |
invalid | Nombor itu tidak berdaftar di WhatsApp, bukan nombor telefon yang sah, atau tidak dapat disemak kerana ralat pemprosesan. Jika nombor yang anda jangka sah menunjukkan invalid, sahkan semula dalam tugas baharu. |
unknown | Semakan telah dibatalkan oleh sokongan Wbiztool. Pemprosesan biasa tidak menetapkan nilai ini. |
Nilai status keseluruhan#
| Nilai | Maksud |
|---|---|
pending | Belum ada nombor yang disemak. |
processing | Sesetengah nombor telah disemak dan sesetengahnya masih menunggu. |
completed | Tiada nombor yang masih menunggu. |
Tugas completed boleh menunjukkan completed_percentage di bawah 100 jika sesetengah semakan dibatalkan, kerana nombor yang dibatalkan dikira dalam total tetapi tidak dalam peratusan.
Ralat#
Ralat memulangkan badan JSON dengan status ditetapkan kepada "error" dan kod ralat HTTP:
{ "status": "error", "message": "Campaign not found" }
| HTTP | Mesej | Cara membetulkannya |
|---|---|---|
405 | Only GET method allowed | Hantar permintaan GET. |
401 | API key required | Tambah pengepala Authorization: Bearer YOUR_API_KEY. |
401 | Invalid API key | Pastikan kunci wujud dan belum dipadam atau dinyahdayakan. |
400 | campaign_id is required | Tambah campaign_id pada rentetan pertanyaan. |
404 | Campaign not found | ID tidak wujud, bukan tugas pengesahan, atau milik ruang kerja lain. Gunakan kunci dari ruang kerja yang mencipta tugas itu. |
500 | Internal server error: … | Paling kerap kerana campaign_id bukan nombor. Hantar digit sahaja. |
Petua#
- Tinjau secara berpada-pada. Sehingga 10 nombor disemak bagi setiap pusingan di latar belakang, jadi menyemak setiap 30 hingga 60 saat sudah memadai, dan tugas yang besar boleh mengambil masa yang lama.
- Berhenti meninjau apabila
overall_statusialahcompleted. - Tersekat pada
pending? Pengesahan memerlukan nombor WhatsApp yang disambungkan di tetapan WhatsApp dalam ruang kerja yang sama. Tanpanya, nombor tidak akan disemak. Semakan juga menunggu semasa nombor anda yang disambungkan sibuk menghantar mesej. - Tugas besar: endpoint ini memulangkan setiap nombor dalam satu respons. Untuk membaca keputusan halaman demi halaman, atau hanya nombor
verified, gunakan Keputusan pengesahan.
