Pemulihan massal v3
Tujuan dari fungsi API ini adalah untuk memulihkan nomor telepon dalam jumlah besar.
POST: https://api.multitel.net/v3/bulk_restore
- Auth: HTTP basic dengan kredensial API pengguna.
- Body (application/json):
{
"numbers":
[
"15551230111",
"15551230112",
"15551230113"
],
"webhook_url": "https://client.example.com/restore-hook"
}
- Menerima string yang hanya berisi digit; numbers_text (dipisahkan baris baru) juga berfungsi.
- 10 nomor atau kurang → ditangani secara sinkron; lebih dari 10 → diantrekan dan diproses oleh service worker.
- Respons sinkron (hanya dimungkinkan jika 10 nomor atau kurang diberikan):
{
"job_uuid": "8f6c1f0e-23d2-4717-8c8e-1a518e5738f0",
"status": "completed",
"total_numbers": 3,
"success_count": 1,
"failure_count": 2,
"webhook_url": "https://client.example.com/restore-hook",
"created_at": "2025-10-28 12:31:45",
"started_at": "2025-10-28 12:31:45",
"completed_at": "2025-10-28 12:31:48",
"results": [
{
"number": "15551230111",
"status": "success",
"message": "Number restored",
"status_code": 200,
"requires_identity_update": 0
},
{
"number": "15551230112",
"status": "failed",
"message": "Error: 'restore failed, please contact support'",
"status_code": 500,
"requires_identity_update": 0
},
{
"number": "15551230113",
"status": "success",
"message": "Number restored",
"status_code": 200,
"requires_identity_update": 1,
"needs_registration": 1
}
]
}
Jika terjadi kesalahan saat memproses payload (batas waktu, domain tidak dapat di-resolve di DNS, dll), kesalahan akan dikembalikan setelah array "results":
"webhook_error":"Could not resolve host: asidhaiufsd0uf.multitel.net"
ATAU, jika lebih dari 10 nomor diberikan:
- Diantrekan (202 Accepted):
{
"job_uuid": "c5bc4f3a-7b0a-4d5d-9f7e-d3fd87f41a00",
"status": "pending",
"total_numbers": 25,
"webhook_url": "https://client.example.com/restore-hook",
"message": "Restore job queued. Results will be POSTed to https://client.example.com/restore-hook"
}
- Payload webhook identik dengan struktur sinkron akhir (termasuk kode/pesan status per nomor).
Polling Status
- GET https://api.multitel.net/v3/bulk_restore_status
- Wajib job_uuid, number opsional (hanya digit).
- Respons mencerminkan ringkasan pekerjaan dengan status terkini per nomor ditambah upaya dan stempel waktu; filter number hanya mengembalikan entri tersebut.
- Contoh: GET …/bulk_restore_status?job_uuid=8f6c1f0e-23d2-4717-8c8e-1a518e5738f0
- Difilter: GET …/bulk_restore_status?job_uuid=…&number=15551230113
- GET https://api.multitel.net/v3/bulk_restore_status
- Auth: HTTP Basic yang sama seperti panggilan v3 lainnya.
- Parameter kueri:
- job_uuid (wajib) – dikembalikan dari respons POST.
- number (opsional) – hanya digit; mempersempit hasil ke satu DID.
- Respons mencerminkan payload webhook dan kini mencakup requires_identity_update (1/0) ditambah needs_registration bila berlaku. Contoh:
{
"job_uuid": "8f6c1f0e-23d2-4717-8c8e-1a518e5738f0",
"status": "processing",
"total_numbers": 25,
"success_count": 10,
"failure_count": 0,
"webhook_url": "https://client.example.com/restore-hook",
"created_at": "2025-10-28 12:31:45",
"started_at": "2025-10-28 12:31:45",
"completed_at": null,
"results": [
{
"number": "15551230111",
"status": "success",
"message": "Number restored",
"status_code": 200,
"attempts": 1,
"started_at": "2025-03-28 12:31:45",
"completed_at": "2025-03-28 12:31:47",
"requires_identity_update": 0
},
{
"number": "15551230112",
"status": "failed",
"message": "Error: 'restore failed, please contact support'",
"status_code": 500,
"attempts": 1,
"started_at": "2025-03-28 12:31:45",
"completed_at": "2025-03-28 12:31:46",
"requires_identity_update": 0
},
{
"number": "15551230113",
"status": "success",
"message": "Number restored",
"status_code": 200,
"attempts": 1,
"started_at": "2025-03-28 12:31:45",
"completed_at": "2025-03-28 12:31:48",
"requires_identity_update": 1,
"needs_registration": 1
}
]
}
- Dengan number=15551230113, array results hanya akan berisi entri tersebut ditambah filtered_number dalam payload.
Jika Anda ingin membuat fungsi pemulihan massal sendiri, Anda dapat menggunakan endpoint api nomor tunggal di bawah ini, dan memanggilnya berulang kali, untuk setiap nomor yang ingin Anda pulihkan.
curl -u 'USERNAME:PASSWORD' \
-H 'Accept: application/json' \
https://api.multitel.net/v3/restore/447000123456