In diesem Artikel
Übersicht
Webhook-Rückruf-URL einrichten
dropdown icon
Partner-API-Endpunkte
    API-Endpunkt für den Abgleich
    Records-API-Endpunkt
    Partner reports/templates API

Detaillierte Anrufprotokolle per Webhook für Webex Calling im Partner Hub

list-menuIn diesem Artikel
list-menuFeedback?

Webex Calling Multi-Tenant (MT)-Partner können einen Webhook einrichten, um Webex Calling-Datensätze für alle Ihre Kunden zu erfassen. Dies ermöglicht eine effiziente Rechnungsabstimmung, Analyse und Berichtserstellung, ohne dass jeder Kunde einzeln abgefragt werden muss.

Übersicht

Der Detailed Call Records Webhook bietet eine sichere, skalierbare und robuste Lösung, die ereignisgesteuert und nicht anfragegesteuert ist. Dieser Webhook bietet einen besseren Einblick in die Webex Calling-Aktivitäten Ihrer Kunden und unterstützt Anwendungsfälle von der Abrechnung bis hin zu individuell angepassten Berichten.

Mit diesem Webhook können Sie bequem Datensätze für alle über Partner Hub verwalteten Kunden erfassen, ohne jeden Kunden einzeln abfragen zu müssen. Dieser Webhook ermöglicht die Entwicklung kundenspezifischer Berichts-, Abrechnungs- und Analyseanwendungen sowohl für interne Geschäftsanforderungen als auch für Mehrwertdienste.

Eine Einführung in den Webhook und die zugehörigen APIs finden Sie in diesem Vidcast: Webex Calling Partner Detailed Call History API.

Was der Partner-Webhook liefert

Der Webhook liefert alle 5 Minuten detaillierte Anrufprotokolle. Jede Webhook-Nutzlast enthält:

  • Anrufprotokolle, die zwischen 10 und 5 Minuten vor der aktuellen Uhrzeit endeten.
  • Alle verspäteten Datensätze, die von der Webex Calling Cloud verarbeitet wurden.
  • Verspätete Anrufdatensätze werden automatisch in den nachfolgenden Webhook-Payloads nachgeladen, um eine zuverlässige Zustellung zu gewährleisten.

Um zu veranschaulichen, wie Anrufdatensätze in die einzelnen Nutzdaten eingebunden werden, betrachten Sie das folgende Beispiel:

  • Eine Nutzlast empfangen bei 14:05 enthält Anrufe, die zwischen 13:55 Und 14:00.
  • Anrufe, die zwischen 14:00 Und 14:05 sind enthalten in der 14:10 Nutzlast.
  • Früher abgeschlossene Aufzeichnungen (z. B. ein Anruf, der um … endete) 14:04) aber von der Webex Calling Cloud verspätet verarbeitet (zum Beispiel bei 14:11) sind in der nächsten geplanten Nutzlast enthalten (zum Beispiel 14:15).

Die Webhooks liefern Datensätze zuverlässig. Allerdings kann es vorkommen, dass Sie in nachfolgenden Webhook-Payloads doppelte Datensätze erhalten, wenn das System unter bestimmten Bedingungen Datensätze erneut abspielt. Sie sind für die Bearbeitung der Datensatzdeduplizierung verantwortlich. Um doppelte Datensätze zu identifizieren, verwenden Sie das Feld reportId als Primärschlüssel und das Feld reportTime, um festzustellen, wann ein Anruf abgeschlossen oder verarbeitet wurde. Nutzen Sie diese Felder, um Datensätze in Ihre internen Datenspeicher einzufügen oder zu aktualisieren.

Webhook im Partner Hub

Durch die Bereitstellung eines Webhooks ermöglichen Sie der Analyseplattform, Anrufdatensätze an Ihre Callback-URL zu senden, sobald diese generiert werden.

Webex-Anrufprotokolle werden im gleichen Format wie die bestehenden APIs fürdetaillierte Anrufprotokolle bereitgestellt. Sie können einen Webhook einrichten und zwischen zwei Feed-Typen wählen:

  • Analytics – Umfasst alle Anrufprotokolle für alle Kundenorganisationen, mit denen der Partner eine Webex Calling-Beziehung unterhält. Dies umfasst Organisationen, in denen:
    • Der Partner verwaltet die Kundenorganisation mit der Rolle eines vollständigen Partneradministrators.
    • Die Kundenorganisation verfügt über ein aktives Webex Calling-Abonnement innerhalb der Partnerorganisation.
  • Abrechnung – Beinhaltet Anrufprotokolle für Anrufe, die von Benutzern mit einer vom Partner verkauften und bereitgestellten Webex Calling-Lizenz getätigt wurden. Anrufprotokolle für Workspaces sind in diesem Feed enthalten.

Zugang und Datenschutz

Nur der Inhaber der Verbindungsdatensätze (Call Detail Records, CDR) hat Zugriff auf diese Daten für Abrechnungszwecke.

  • Ein Partner (oder Unterpartner), der die mit dem Anrufdatensatz verbundene Lizenz verwaltet, wird zum Eigentümerpartner.
  • Die Eigentumsverhältnisse werden bestimmt durch: Benutzer-ID > Lizenz-ID > Abonnement-ID > Partner-ID.
  • Jeder CDR ist nur für einen einzigen Partner zugänglich.
  • Manche Anrufprotokolle lassen sich keinem Abrechnungspartner zuordnen, und nicht alle mit einer Organisation verbundenen Partner haben gleichen Zugriff auf alle Datensätze, da diese Datensätze personenbezogene Daten (PII) enthalten können.

Webhook-Rückruf-URL einrichten

Konfigurieren Sie den Webhook im Partner Hub. Pro Partnerorganisation kann nur ein Webhook eingerichtet werden.

Stellen Sie sicher, dass Sie die Partner-Volladministratorrolle mit „Vollzugriff auf Organisationsebene“ besitzen und dass im Control Hub (unter „ Verwaltung “) der Zugriff auf die Webex Calling CDR API aktiviert ist. > Benutzer, wählen Sie einen Volladministrator oder Partner-Volladministrator aus und wählen Sie dann Administratorrollen > Partner).

Screenshot, der die Administratorrolleneinstellungen zeigt, wobei Partner-Administrator und Partner-Volladministrator ausgewählt sind, sowie die Option „Webex Calling CDR API-Zugriff“ unter den Funktionseinstellungen aktiviert ist.

1

Melden Sie sich bei Partner Hub an.

2

Gehen Sie zu Organisationseinstellungen > Anrufdetaildatensätze.

Screenshot der Organisationseinstellungen für Anrufdatensätze, der die Felder für Webhook-URL, geheimes Token und Ressourcentyp anzeigt, wobei Analytics ausgewählt ist.
3

Geben Sie unter Webhookeine URL ein, die verwendet werden soll.

Die URL muss mit folgendem enden: /webhook (Zum Beispiel, https://yourdomain.com/webhook).
4

Wenn Sie Ihre Webhook-Nutzdaten mit einem geheimen Token authentifizieren möchten, können Sie einen solchen hinzufügen. Weitere Informationen zu Webex-Webhooks und geheimen Token finden Sie unter Webex für Entwickler: Webhooks.

5

Wählen Sie einen der folgenden Ressourcentypenfür den Webhook aus:

  • Analytics—Beinhaltet alle Anrufdatensätze für alle Kundenorganisationen, mit denen der Partner eine Webex Calling-Beziehung unterhält.
  • Abrechnung—Beinhaltet Anrufprotokolle für Benutzer, denen der Partner Webex Calling-Lizenzen verkauft hat. Anrufprotokolle für Workspaces sind in diesem Feed enthalten.

Partner-API-Endpunkte

Zusätzlich zum Webhook bietet Webex Calling API-Endpunkte zur Unterstützung des Datenabgleichs. Mithilfe dieser Endpunkte können Sie Ihre Datenspeicher mit fehlenden Datensätzen abgleichen, die Ihr Webhook-Listener möglicherweise nicht empfangen hat. Die beiden API-Endpunkte sind die Reconciliation API und die Records API.

Die Datensätze dieser APIs sind 30 Tage lang verfügbar. Um sicherzustellen, dass Sie alle erwarteten Datensätze erhalten, empfehlen wir Ihnen, Ihre Datensatzbestände regelmäßig abzugleichen, beispielsweise alle 12 oder 24 Stunden.

Sie benötigen ein Partner-Zugriffstoken, um auf diese APIs zugreifen zu können. Beschaffen und verwalten Sie Ihr Partner-Zugriffstoken gemäß den Standardpraktiken für die Verwaltung von Webex Developer-Zugriffstoken.

API-Fensterbereiche sind für beide Endpunkte anwendbar, um die Servicelast besser zu bewältigen.

  • Bei Zeiträumen von mehr als 48 Stunden beträgt die maximal zulässige Fensterdauer 12 Stunden (empfohlen und vorgeschrieben).
  • Bei Zeiträumen von 48 Stunden oder weniger beträgt die maximal zulässige Fensterdauer 48 Stunden (nicht empfohlen; diese Option wird ab dem 30. Januar 2026 nicht mehr unterstützt).
  • Für eine Partnerorganisations-ID ist die Anzahl der API-Anfragen auf eine erste API-Anfrage pro Minute und Token-Bereich begrenzt. Bei Verwendung der Paginierung sind bis zu 10 zusätzliche paginierte API-Anfragen pro Minute und Token zulässig, und diese können unmittelbar nach der ersten Anfrage gestellt werden.

API-Endpunkt für den Abgleich

Der Reconciliation-API-Endpunkt gibt die Gesamtzahl der Anrufdatensätze zurück, die für jeden vom Partner verwalteten Kunden innerhalb des angegebenen Zeitraums generiert wurden. Anhand dieser Summen können Sie Ihren lokalen Speicher überprüfen und fehlende oder inkonsistente Anrufprotokolle für bestimmte Kunden identifizieren.

Wenn Sie mehr als 200 Kundenorganisationen verwalten, werden die Ergebnisse der API paginiert, um die Lesbarkeit zu verbessern.

Die URL des Reconciliation-API-Endpunkts verwendet folgendes Format:

https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z

API-Parameter

Sie können die API verwenden, um Anrufprotokolle der letzten 30 Tage abzurufen. Das von Ihnen gewählte Zeitfenster muss mindestens 5 Minuten vor der aktuellen UTC-Zeit beginnen und darf in einem einzelnen API-Aufruf 12 Stunden zwischen Start- und Endzeitpunkt nicht überschreiten.

Die API-Parameter lauten:

  • startTime (erforderlich, Zeichenkette)—Das Startdatum und die Startzeit (UTC) für den ersten Datensatz, den Sie erfassen möchten. Stellen Sie sicher, dass:
    • Sie formatieren die Zeit als YYYY-MM-DDTHH:MM:SS.mmmZ. Zum Beispiel, 2025-08-15T06:00:00.000Z.
    • Das Startdatum und die Startzeit dürfen nicht älter als 30 Tage seit der aktuellen UTC-Zeit sein.
    • Der Zeitraum zwischen startTime und endTime darf 12 Stunden nicht überschreiten.
  • endTime (erforderlich, Zeichenkette)—Das Enddatum und die Endzeit (UTC) für die Datensätze, die Sie erfassen möchten. Die Aufzeichnungen basieren auf dem Zeitpunkt der Meldung, also dem Zeitpunkt, an dem das Gespräch beendet wurde. Stellen Sie sicher, dass:
    • Sie formatieren die Zeit als YYYY-MM-DDTHH:MM:SS.mmmZ. Zum Beispiel, 2025-08-15T18:00:00.000Z.
    • Das Enddatum und die Endzeit müssen 5 Minuten vor der aktuellen UTC-Zeit liegen und dürfen nicht älter als 30 Tage sein.
    • Das Enddatum und die Endzeit müssen nach dem eckigen Klammerzusatz startTimeliegen.
    • Der Zeitraum zwischen den startTime und endTime darf 12 Stunden nicht überschreiten.

Beispiel einer JSON-Antwort eines Reconciliation-API-Endpunkts:


          {
          "cdr_counts": [
          {
          "orgId": "zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 3009
          },
          {
          "orgId": "yyyyyyyy-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 129
          },
          {
          "orgId": "xxxxxxxx-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 27895
          }
          ]
          }          
        

Die API-Antwortheader geben die Gesamtzahl der zurückgegebenen Organisationen an und ob zusätzliche Seiten verfügbar sind. Überprüfen Sie die folgenden Header-Parameter, um sicherzustellen, dass Sie alle Seiten abgefragt haben:

  • Anzahl Seiten: Gesamtzahl der Seiten (z. B. 2)
  • Gesamtorganisationen: Gesamtzahl der in der Antwort berücksichtigten Organisationen (z. B. 283)
  • aktuelle Seite: Die aktuelle Seitenzahl (zum Beispiel 1)

Wenn beispielsweise die Überschriften angezeigt werden num-pages=2, total-orgs=283, Und current-page=1, Sie sehen die erste Seite einer zweiseitigen Antwort mit insgesamt 283 Organisationen. Um zur nächsten Seite zu gelangen, fügen Sie Folgendes hinzu: page=2 Parameter für Ihre GET-Anfrage, wie unten gezeigt:

https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z&page=2

Records-API-Endpunkt

Der Records API-Endpunkt dient dazu, fehlende Anrufdatensätze für bestimmte Organisationen abzufragen, bei denen mithilfe der Reconciliation API Unstimmigkeiten oder fehlende Daten festgestellt wurden.

Die Records API gibt Anrufdatensätze im JSON-Format zurück, identisch mit dem Format, das in der Detailed Call History API beschrieben ist. Die zurückgegebene Nutzlast enthält identische Felder wie die zurückgegebene Nutzlast der detaillierten Anrufliste. Weitere Informationen zu den Feldern und ihren Werten finden Sie unter Webex Calling Detaillierter Anrufverlaufsbericht.

Die API liefert Anrufprotokolle, die 5 Minuten vor der aktuellen Zeit beendet wurden. Um sicherzustellen, dass alle Anrufprotokolle verfügbar sind, empfehlen wir, die API eine Stunde nach Ihrem bevorzugten Zeitfenster abzufragen.

Die URL des Endpunkts der Records API verwendet folgendes Format:

https://analytics-calling.webexapis.com/v1/partners/cdrsbyorg?orgId=zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy&endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z

API-Parameter

  • OrgID (erforderlich, Zeichenkette)—Die Organisations-ID, für die Sie Datensätze abrufen möchten. Organisations-IDs können Sie über die Reconciliation API abrufen.
  • startTime (erforderlich, Zeichenkette)—Das Startdatum und die Startzeit (UTC) für den ersten Datensatz, den Sie erfassen möchten. Stellen Sie sicher, dass:
    • Sie formatieren die Zeit als YYYY-MM-DDTHH:MM:SS.mmmZ. Zum Beispiel, 2025-08-15T06:00:00.000Z.
    • Das Startdatum und die Startzeit dürfen nicht älter als 30 Tage seit der aktuellen UTC-Zeit sein.
    • Der Abstand zwischen den startTime eckigen Klammern und endTime darf in einer einzelnen API-Anfrage 12 Stunden nicht überschreiten.
  • endTime (erforderlich, Zeichenkette)—Das Enddatum und die Endzeit (UTC) für den letzten Datensatz, den Sie erfassen möchten. Die Aufzeichnungen basieren auf dem Zeitpunkt der Meldung, also dem Zeitpunkt, an dem das Gespräch beendet wurde. Stellen Sie sicher, dass:
    • Sie formatieren die Zeit als YYYY-MM-DDTHH:MM:SS.mmmZ. Zum Beispiel, 2025-08-15T18:00:00.000Z.
    • Das Enddatum und die Endzeit müssen mindestens 5 Minuten vor der aktuellen UTC-Zeit liegen und dürfen nicht älter als 30 Tage sein.
    • Das Enddatum und die Endzeit müssen nach dem eckigen Klammerzusatz startTimeliegen.
    • Der Abstand zwischen den startTime eckigen Klammern und endTime darf in einer einzelnen API-Anfrage 12 Stunden nicht überschreiten.
  • Max (optional, Zahl)—Begrenzt die maximale Anzahl von Datensätzen pro Seite in der Antwort. Stellen Sie sicher, dass:
    • Die Spanne reicht von 500 bis 5000. Der Standardwert ist 5000. Zum Beispiel, Max=1000.
    • Wenn die API mehr Datensätze zurückzugeben hat als der angegebene Maximalwert, wird die Antwort paginiert.
    • Wird ein Wert unter 500 angegeben, wird dieser automatisch auf 500 angehoben. Wird ein Wert über 5000 angegeben, wird er auf 5000 reduziert.

Seitennummerierung

Um festzustellen, ob API-Antworten paginiert sind, prüfen Sie die Antwortheader auf einen Link-Header. Wenn im Link-Header ein next -Link vorhanden ist, extrahieren Sie ihn und verwenden Sie den startTimeForNextFetch -Wert, um den nächsten Datensatz anzufordern. Wenn kein nächster Link vorhanden ist, werden alle Berichte für den ausgewählten Zeitraum gesammelt.

API-Anfragen für nachfolgende Seiten können sofort gestellt werden, müssen jedoch auf maximal 10 paginierte Anfragen pro Minute und Token-Bereich begrenzt werden.

Wenn beispielsweise die erste API-Anfrage lautet:

https://analytics-calling.webexapis.com/v1/partners/cdrsbyorg?orgId=zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy&endTime=2025-08-15T18:00:00.000Z&startTime=2025-08-15T06:00:00.000Z&Max=5000

Der Link-Header in der Antwort lautet dann:

; rel="next"

Weitere mögliche Linkwerte sind rel="first" und rel="prev" für die erste bzw. vorherige Seite.

Die Paginierung dieser API folgt dem RFC5988 (Web Linking)-Standard. Weitere Informationen finden Sie unter REST API Basics.

Partner reports/templates API

Sie können Berichte, die im Partner Hub verfügbar sind, mithilfe der Partner Reports APIsgenerieren und herunterladen. Weitere Informationen finden Sie beim Partner. report/templates.

Partner können außerdem direkt über den Partner Hub auf verschiedene Berichte zugreifen und diese herunterladen. Weitere Informationen finden Sie in den Partner Hub-Berichten.

War dieser Artikel hilfreich für Sie?
War dieser Artikel hilfreich für Sie?