CNAM-Integration

CNAM-REST-API-Referenz

Fordern Sie einen Anrufernamen über HTTPS an und behandeln Sie Ergebnis, Kosten und Fehler.

Abfrageverhalten auswählen

StufeÖffentlicher Preis pro AbfrageFunktion
Starter0,0026 $Verwendet proprietäre und zwischengespeicherte Anrufernamen-Informationen.
Standard0,0037 $Führt für jede Abfrage eine Echtzeit-Netzwerkabfrage durch.
Mixed0,004 $Versucht zuerst eine Echtzeit-Abfrage und greift dann auf Daten von Starter zurück, wenn kein Name gefunden wird.

Der ausgewählte Dienst bestimmt das Abfrageverhalten; Mixed ist keine Abfrage, die zuerst den Cache nutzt. Prüfen Sie vor dem Produktiveinsatz den Tarif, der Ihrem Konto zugewiesen ist. Ein Anrufername ist kein Nachweis für Identität oder Inhaberschaft.

Authentifizierte Abfrage senden

Endpunkt: GET https://api.multitel.net/v3/cnam/NUMBER. Verwenden Sie internationale Ziffern einschließlich Landesvorwahl, ohne Satzzeichen und ohne führendes Pluszeichen. Führen Sie dies von Ihrem Anwendungsserver aus mit genehmigten API-Zugangsdaten aus.

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

Stellen Sie die beiden Umgebungsvariablen über eine serverseitige Secret-Konfiguration bereit. Ein bereitgestelltes Bearer-Credential ist nur dann eine Alternative, wenn dieser Zugang aktiviert ist und seine Quell-IP-Beschränkungen erfüllt sind. Legen Sie niemals ein API-Secret in ein öffentliches Browser-Bundle.

Leitfaden zu API-Authentifizierung und erster Anfrage

JSON-Antwort lesen

Diese Antwort dient nur zur Veranschaulichung. Der zurückgegebene Name und die Kosten hängen von der Abfrage und dem ausgewählten Dienst ab.

{
  "status": {
    "code": 200,
    "msg": ""
  },
  "response": {
    "number": "12025550123",
    "name": "EXAMPLE CALLER",
    "cost": "0.004",
    "balance": "24.9960"
  }
}
status.code
Anwendungsergebniscode; normalisieren Sie Zeichenketten- und Zahlenwerte, bevor Sie sie mit 200 vergleichen.
status.msg
Die zugehörige Ergebnis- oder Ablehnungsmeldung.
response.number
Die abgefragte Nummer.
response.name
Der verfügbare Anrufername.
response.cost
Die für diese Abfrage gemeldeten Kosten; behandeln Sie sie als Dezimalbetrag.
response.balance
Das gemeldete Kontoguthaben, sofern vorhanden.

Ergebnisse ohne Namen und Fehler

Eine erfolgreiche Anfrage garantiert keinen brauchbaren Anrufernamen. Behandeln Sie einen leeren Namen, eine anstelle eines Namens zurückgegebene Nummer und eine abgelehnte Abfrage. Der Anwendungscode 403 kann unzureichendes Guthaben, einen nicht zulässigen Kauf oder eine Nummer ohne Ergebnis bedeuten; prüfen Sie die Meldung.

Prüfen Sie sowohl den HTTP-Status als auch das JSON-Feld status, bevor Sie auf response.name zugreifen. Bei einem Fehler kann das Antwortobjekt fehlen. Ein fehlender Name sollte nicht verhindern, dass der normale Anruf weitergeleitet wird.

Abrechnung, Wiederholungen und der Unterschied zur Aktualisierung der Anruferkennung

Eine neue Abfrage kann Abfragekosten verursachen. Diese Abfrageschnittstellen dokumentieren keinen Idempotenzschlüssel, daher kann eine erneute Anfrage eine zweite kostenpflichtige Abfrage sein. Verwenden Sie bei Transport- oder Dienstfehlern ein begrenztes Backoff, beheben Sie Kontofehler zuerst und gleichen Sie die gemeldeten Abfragekosten ab. Speichern Sie Ergebnisse nur für einen Zeitraum im Cache, der zu Ihrer Anwendung passt; Anrufernamen können sich ändern.

Eine CNAM-Abfrage liest einen Namen aus. Sie ändert nicht den Namen, der bei Ihren ausgehenden Anrufen angezeigt wird. Eine LIDB-Aktualisierung des Anrufernamens ist ein separater Vorgang mit eigenen Feldern, eigener Autorisierung, eigenem Preis und eigener Bearbeitung.