Інтеграція CNAM

Довідник CNAM REST API

Запитуйте ім’я абонента через HTTPS і обробляйте результат, нарахування та помилки.

Оберіть поведінку пошуку

РівеньПублічна ціна за запитЩо він робить
Starter0,0026 USDВикористовує власну та кешовану інформацію про імена абонентів.
Standard0,0037 USDВиконує мережевий пошук у реальному часі для кожного запиту.
Mixed0,004 USDСпершу намагається виконати пошук у реальному часі, а якщо ім’я не знайдено, повертається до даних Starter.

Поведінку пошуку визначає вибрана послуга; Mixed не є пошуком, що спершу звертається до кешу. Перед використанням у робочому середовищі перегляньте тариф, призначений вашому обліковому запису. Ім’я абонента не є доказом особи чи права власності.

Надішліть автентифікований запит пошуку

Кінцева точка: GET https://api.multitel.net/v3/cnam/NUMBER. Указуйте телефонний номер у міжнародному форматі з кодом країни, лише цифрами, без розділових знаків і початкового плюса. Виконуйте запит із сервера вашого застосунку, використовуючи схвалені облікові дані API.

curl --fail-with-body \
  --user "$MULTITEL_API_USERNAME:$MULTITEL_API_PASSWORD" \
  --header "Accept: application/json" \
  "https://api.multitel.net/v3/cnam/12025550123"

Передайте дві змінні середовища через серверну конфігурацію секретів. Виданий bearer-токен є альтернативою лише тоді, коли такий доступ увімкнено і дотримано його обмежень за IP-адресою джерела. Ніколи не розміщуйте секрет API у публічному браузерному збірнику (bundle).

Посібник з автентифікації API та першого запиту

Прочитайте відповідь JSON

Ця відповідь є ілюстративною. Повернуте ім’я та нарахування залежать від пошуку й вибраної послуги.

{
  "status": {
    "code": 200,
    "msg": ""
  },
  "response": {
    "number": "12025550123",
    "name": "EXAMPLE CALLER",
    "cost": "0.004",
    "balance": "24.9960"
  }
}
status.code
Код результату застосунку; перед порівнянням із 200 нормалізуйте рядкові/числові значення.
status.msg
Супровідне повідомлення про результат або відмову.
response.number
Номер, за яким виконано запит.
response.name
Доступне ім’я абонента.
response.cost
Нарахування, повідомлене за цей запит; розглядайте його як десяткову суму.
response.balance
Повідомлений баланс облікового запису, якщо він присутній.

Результати без імені та помилки

Успішний запит не гарантує корисного імені абонента. Обробляйте порожнє ім’я, номер, повернутий замість імені, і відхилений пошук. Код застосунку 403 може означати недостатній кредит, заборонену покупку або номер без результату; перевіряйте повідомлення.

Перш ніж звертатися до response.name, перевірте і HTTP-статус, і JSON-поле status. У разі помилки об’єкт відповіді може бути відсутній. Відсутнє ім’я не повинно перешкоджати звичайній маршрутизації виклику.

Виставлення рахунків, повторні спроби та відмінність від оновлення ідентифікатора абонента

Новий пошук може спричинити нарахування за запит. Для цих інтерфейсів пошуку не задокументовано ключа ідемпотентності, тому повторна спроба може стати другим платним запитом. За збоїв транспорту або служби обмежуйте кількість спроб і робіть між ними паузи, спершу усуньте помилки облікового запису та звіряйте повідомлені нарахування за запити. Кешуйте лише на період, доречний для вашого застосунку; дані про імена абонентів можуть змінюватися.

Пошук CNAM лише читає ім’я. Він не змінює ім’я, що показується під час ваших вихідних викликів. Оновлення імені абонента в LIDB — це окрема операція з власними полями, авторизацією, ціною та обробкою.