Масово възстановяване във v3
Целта на тази API функция е да възстановява телефонни номера в пакет. POST: https://api.multitel.net/v3/bulk_restore - Удостоверяване: HTTP basic с API идентификационните данни на потребителя. - Тяло (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"
} - Webhook данните са идентични с крайната синхронна структура (включително кодове/съобщения за статус за всеки номер). Проверка на статуса - GET https://api.multitel.net/v3/bulk_restore_status - Задължителен job_uuid, незадължителен 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 - Удостоверяване: същият HTTP Basic като при другите v3 повиквания. - Параметри на заявката: - job_uuid (задължителен) – върнат от POST отговора. - number (незадължителен) – само цифри; стеснява резултатите до един DID. - Отговорът отразява webhook данните и вече включва 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 масивът с резултати ще съдържа само този запис плюс filtered_number в данните. Ако искате да създадете своя собствена функция за пакетно възстановяване, можете да използвате крайната точка на API за единичен номер по-долу и да я извиквате многократно за всеки номер, който желаете да възстановите. curl -u 'USERNAME:PASSWORD' \
-H 'Accept: application/json' \
https://api.multitel.net/v3/restore/447000123456