v3-তে একসঙ্গে অনেক আইটেম পুনরুদ্ধার
এই API ফাংশনের উদ্দেশ্য একসঙ্গে একাধিক ফোন নম্বর পুনরুদ্ধার করা।
POST: https://api.multitel.net/v3/bulk_restore
- প্রমাণীকরণ: ব্যবহারকারীর API লগইন তথ্যসহ HTTP basic।
- অনুরোধের মূল অংশ (application/json): {
"numbers":
[
"15551230111",
"15551230112",
"15551230113"
],
"webhook_url": "https://client.example.com/restore-hook"
}
- শুধু অঙ্কযুক্ত স্ট্রিং গ্রহণ করে; numbers_text (আলাদা আলাদা লাইনে) ব্যবহার করেও কাজ হয়।
- 10টি বা তার কম নম্বর → সিঙ্ক্রোনাসভাবে প্রক্রিয়া করা হয়; 10টির বেশি → অপেক্ষমাণ সারিতে রাখা হয় এবং পটভূমির সেবা প্রক্রিয়ার মাধ্যমে প্রক্রিয়া করা হয়।
- সিঙ্ক্রোনাস প্রতিক্রিয়া (শুধু 10টি বা তার কম নম্বর দেওয়া হলে সম্ভব): {
"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
}
]
}
পাঠানো ডেটা প্রক্রিয়া করতে ত্রুটি হলে (অপেক্ষার সময়সীমা শেষ হওয়া, DNS-এ ডোমেইনের ঠিকানা নির্ধারণ করতে না পারা ইত্যাদি), "results" অ্যারের পরে ত্রুটিগুলি ফেরত দেওয়া হবে:
"webhook_error":"Could not resolve host: asidhaiufsd0uf.multitel.net"
অথবা, 10টির বেশি নম্বর দেওয়া হলে:
- অপেক্ষমাণ সারিতে রাখা হয়েছে (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"
}
- ওয়েবহুকের ডেটা চূড়ান্ত সিঙ্ক্রোনাস কাঠামোর সঙ্গে অভিন্ন (প্রতিটি নম্বরের স্থিতি কোড/বার্তাসহ)।
নিয়মিত স্থিতি জানতে চাওয়া
- GET https://api.multitel.net/v3/bulk_restore_status
- job_uuid আবশ্যক; number ঐচ্ছিক (শুধু অঙ্ক)।
- প্রতিক্রিয়ায় কাজের সারাংশ, প্রতিটি নম্বরের বর্তমান অবস্থা, প্রচেষ্টার সংখ্যা ও সময়চিহ্ন থাকে; number ফিল্টার শুধু সেই নম্বরের এন্ট্রি ফেরত দেয়।
- উদাহরণ: GET …/bulk_restore_status?job_uuid=8f6c1f0e-23d2-4717-8c8e-1a518e5738f0
- ফিল্টার করা: GET …/bulk_restore_status?job_uuid=…&number=15551230113
- GET https://api.multitel.net/v3/bulk_restore_status
- প্রমাণীকরণ: অন্যান্য v3 কলের মতো একই HTTP Basic।
- কোয়েরি প্যারামিটার:
- job_uuid (আবশ্যক) – POST প্রতিক্রিয়ায় ফেরত দেওয়া হয়।
- number (ঐচ্ছিক) – শুধু অঙ্ক; ফলাফল একটি DID-তে সীমিত করে।
- প্রতিক্রিয়া ওয়েবহুকের ডেটার মতো এবং এতে এখন requires_identity_update (1/0), সঙ্গে প্রযোজ্য হলে needs_registration থাকে। উদাহরণ: {
"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
}
]
}
- number=15551230113 হলে results অ্যারেতে শুধু সেই এন্ট্রি থাকে, আর ডেটায় filtered_number থাকে।
নিজস্ব একসঙ্গে একাধিক নম্বর পুনরুদ্ধারের ফাংশন তৈরি করতে চাইলে নিচের একক নম্বরের API এন্ডপয়েন্ট ব্যবহার করতে পারেন এবং যে নম্বরগুলি পুনরুদ্ধার করতে চান, সেগুলির প্রতিটির জন্য আলাদাভাবে এটি কল করতে পারেন।
curl -u 'USERNAME:PASSWORD' \
-H 'Accept: application/json' \
https://api.multitel.net/v3/restore/447000123456