Integracja CNAM

Dokumentacja API CNAM REST

Zażądaj nazwy dzwoniącego przez HTTPS oraz obsłuż wynik, opłatę i błędy.

Wybierz sposób działania wyszukiwania

PoziomCena publiczna za zapytanieJak działa
Starter0,0026 USDWykorzystuje własnościowe i buforowane informacje o nazwach dzwoniących.
Standard0,0037 USDWykonuje wyszukiwanie w sieci w czasie rzeczywistym dla każdego zapytania.
Mixed0,004 USDNajpierw próbuje wyszukiwania w czasie rzeczywistym, a gdy nie znajdzie nazwy, korzysta z danych Starter.

Zachowanie wyszukiwania zależy od wybranej usługi; Mixed nie jest wyszukiwaniem z pierwszeństwem pamięci podręcznej. Przed użyciem produkcyjnym sprawdź stawkę przypisaną do Twojego konta. Nazwa dzwoniącego nie jest dowodem tożsamości ani własności.

Wyślij uwierzytelnione wyszukiwanie

Punkt końcowy: GET https://api.multitel.net/v3/cnam/NUMBER. Użyj cyfr w formacie międzynarodowym wraz z kodem kraju, bez znaków interpunkcyjnych i bez wiodącego plusa. Wykonuj to z serwera aplikacji przy użyciu zatwierdzonych poświadczeń API.

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

Przekaż dwie zmienne środowiskowe przez konfigurację sekretów po stronie serwera. Zapewnione poświadczenie typu bearer jest alternatywą wyłącznie wtedy, gdy taki dostęp jest włączony i spełnione są jego ograniczenia dotyczące źródłowych adresów IP. Nigdy nie umieszczaj sekretu API w publicznym pakiecie przeglądarki.

Przewodnik po uwierzytelnianiu API i pierwszym żądaniu

Odczytaj odpowiedź JSON

Ta odpowiedź jest ilustracyjna. Zwrócona nazwa i opłata zależą od wyszukiwania i wybranej usługi.

{
  "status": {
    "code": 200,
    "msg": ""
  },
  "response": {
    "number": "12025550123",
    "name": "EXAMPLE CALLER",
    "cost": "0.004",
    "balance": "24.9960"
  }
}
status.code
Kod wyniku aplikacji; przed porównaniem z 200 znormalizuj wartości tekstowe i liczbowe.
status.msg
Towarzyszący komunikat o wyniku lub odrzuceniu.
response.number
Numer, którego dotyczyło zapytanie.
response.name
Dostępna nazwa dzwoniącego.
response.cost
Opłata zgłoszona za to zapytanie; traktuj ją jako kwotę dziesiętną.
response.balance
Zgłoszone saldo konta, jeśli jest obecne.

Wyniki bez nazwy i błędy

Pomyślne żądanie nie gwarantuje użytecznej nazwy dzwoniącego. Obsłuż pustą nazwę, numer zwrócony zamiast nazwy oraz odrzucone wyszukiwanie. Kod aplikacji 403 może oznaczać niewystarczające środki, zabroniony zakup lub numer bez wyniku; sprawdź komunikat.

Sprawdź zarówno status HTTP, jak i pole JSON status, zanim uzyskasz dostęp do response.name. W przypadku błędu obiekt odpowiedzi może być nieobecny. Brak nazwy nie powinien uniemożliwiać zwykłego skierowania połączenia.

Rozliczenia, ponawianie prób i różnica względem aktualizacji identyfikatora dzwoniącego

Nowe wyszukiwanie może wiązać się z opłatą za zapytanie. Te interfejsy wyszukiwania nie dokumentują klucza idempotentności, więc ponowna próba może być drugim płatnym zapytaniem. Stosuj ograniczony backoff w przypadku awarii transportu lub usługi, najpierw rozwiąż błędy konta i uzgodnij zgłaszane opłaty za zapytania. Przechowuj dane w pamięci podręcznej tylko przez okres odpowiedni dla Twojej aplikacji; dane nazw dzwoniących mogą się zmieniać.

Wyszukiwanie CNAM odczytuje nazwę. Nie zmienia nazwy prezentowanej w Twoich połączeniach wychodzących. Aktualizacja nazwy dzwoniącego w LIDB to odrębna operacja z własnymi polami, autoryzacją, ceną i przetwarzaniem.