Dans cet article
Aperçu
Configurer l’URL de rappel d’un webhook
dropdown icon
Points de terminaison de l'API partenaire
    Point de terminaison de l'API de réconciliation
    point de terminaison de l'API Records
    Partenaire reports/templates API

Webhook détaillant les appels pour Webex Calling dans le Partner Hub

list-menuDans cet article
list-menuUn commentaire ?

Les partenaires multi-locataires (MT) de Webex Calling peuvent configurer un webhook pour collecter les enregistrements Webex Calling de tous vos clients. Cela permet un rapprochement efficace des factures, des analyses et des rapports sans avoir besoin d'interroger chaque client individuellement.

Aperçu

Le webhook d'enregistrement détaillé des appels offre une solution sécurisée, évolutive et robuste, pilotée par des événements plutôt que par des requêtes. Ce webhook offre une meilleure visibilité sur les activités d'appels Webex de vos clients, prenant en charge des cas d'utilisation allant de la facturation aux rapports personnalisés.

Vous pouvez utiliser ce webhook pour collecter facilement les enregistrements de tous les clients gérés via Partner Hub sans avoir à interroger chaque client individuellement. Ce webhook vous permet de développer des applications personnalisées de reporting, de facturation et d'analyse, tant pour les besoins internes de l'entreprise que pour les services à valeur ajoutée.

Pour une introduction au webhook et à ses API associées, regardez ce Vidcast : API d'historique d'appel détaillé du partenaire d'appel Webex.

Ce que le webhook partenaire fournit

Le webhook fournit des enregistrements détaillés de l'historique des appels toutes les 5 minutes. Chaque charge utile de webhook contient :

  • Enregistrements des appels terminés entre 10 et 5 minutes avant l'heure actuelle.
  • Tous les enregistrements en retard traités par le cloud Webex Calling.
  • Remplit automatiquement les enregistrements d'appels tardifs dans les charges utiles webhook suivantes afin de garantir une livraison fiable.

Pour illustrer comment les enregistrements d'appels sont inclus dans chaque charge utile, prenons l'exemple suivant :

  • Une charge utile reçue à 14:05 contient des appels qui se sont terminés entre 13:55 et 14:00.
  • Appels se terminant entre 14:00 et 14:05 sont inclus dans le 14:10 charge utile.
  • Enregistrements terminés précédemment (par exemple, un appel qui s'est terminé à 14:04) mais traités tardivement par le cloud Webex Calling (par exemple, à 14:11) sont inclus dans la prochaine charge utile prévue (par exemple, 14:15).

Les webhooks transmettent les enregistrements de manière fiable. Toutefois, vous pouvez recevoir des enregistrements en double dans les charges utiles de webhook suivantes lorsque le système rejoue des enregistrements dans certaines conditions. Vous êtes responsable de la déduplication des enregistrements. Pour identifier les enregistrements en double, utilisez le champ reportId comme clé primaire et le champ reportTime pour déterminer quand un appel a été terminé ou traité. Utilisez ces champs pour mettre à jour ou insérer les enregistrements dans vos bases de données internes.

Webhook dans Partner Hub

En fournissant un webhook, vous permettez à la plateforme d'analyse d'envoyer les enregistrements d'appels à votre URL de rappel dès leur génération.

Les enregistrements d'appels Webex sont fournis au même format que les API d'enregistrements d'appels détaillés existantes . Vous pouvez configurer un webhook et choisir entre deux types de flux :

  • Analyses — Inclut tous les enregistrements d'appels pour toutes les organisations clientes avec lesquelles le partenaire entretient une relation Webex Calling. Cela inclut les organisations où :
    • Le partenaire gère l'organisation du client avec un rôle d'administrateur partenaire complet.
    • L'organisation cliente dispose d'un abonnement Webex Calling actif au sein de l'organisation partenaire.
  • Facturation — Comprend les enregistrements d’appels pour les appels passés par les utilisateurs disposant d’une licence Webex Calling vendue et fournie par le partenaire. Les enregistrements d'appels pour les espaces de travail sont inclus dans ce flux.

Accès et confidentialité des données

Seul le partenaire propriétaire peut accéder aux enregistrements détaillés des appels (CDR) à des fins de facturation.

  • Un partenaire (ou sous-partenaire) qui gère la licence associée à l'enregistrement d'appel devient le partenaire propriétaire.
  • La propriété est déterminée par : ID de l'utilisateur > Numéro de licence > Identifiant d'abonnement > Identifiant du partenaire.
  • Chaque CDR est accessible à un seul partenaire.
  • Certains enregistrements d'appels ne sont pas associés à un partenaire de facturation, et tous les partenaires associés à une organisation ne bénéficient pas d'un accès égal à tous les enregistrements, car ces enregistrements peuvent contenir des informations personnelles identifiables (IPI).

Configurer l’URL de rappel d’un webhook

Configurez le webhook dans le Partner Hub. Vous ne pouvez configurer qu'un seul webhook par organisation partenaire.

Assurez-vous de disposer du rôle d'administrateur complet Partenaire avec l'accès « niveau d'administrateur complet de l'organisation » et que l'accès à l'API Webex Calling CDR est coché dans Control Hub (sous Gestion). > Utilisateurs, sélectionnez un administrateur complet ou un administrateur complet partenaire, puis sélectionnez Rôles d'administrateur > Partenaire).

Capture d'écran montrant les paramètres des rôles d'administrateur avec les rôles d'administrateur partenaire et d'administrateur partenaire complet sélectionnés, ainsi que l'accès à l'API Webex Calling CDR coché dans les paramètres fonctionnels.

1

Connectez-vous au Hub partenaire.

2

Accédez à Paramètres de l'organisation > Enregistrements détaillés des appels.

Capture d'écran des paramètres d'organisation pour les enregistrements détaillés des appels, affichant les champs URL du webhook, jeton secret et type de ressource avec l'option Analytics sélectionnée.
3

Saisissez une URL à utiliser sous Webhook.

L'URL doit se terminer par /webhook (Par exemple, https://yourdomain.com/webhook).
4

Si vous souhaitez authentifier vos charges utiles de webhook avec un jeton secret, vous pouvez en ajouter un. Pour en savoir plus sur les webhooks et les jetons secrets Webex, consultez Webex pour les développeurs : Webhooks.

5

Sélectionnez l'un des types de ressources suivants à utiliser pour le webhook :

  • Analyses— Comprend tous les enregistrements d'appels pour toutes les organisations clientes avec lesquelles le partenaire entretient une relation Webex Calling.
  • Facturation— Comprend les enregistrements d'appels des utilisateurs auxquels le partenaire a vendu des licences Webex Calling. Les enregistrements d'appels pour les espaces de travail sont inclus dans ce flux.

Points de terminaison de l'API partenaire

En plus du webhook, Webex Calling fournit des points de terminaison API pour faciliter la réconciliation des données. Ces points de terminaison vous permettent de rattraper ou de réconcilier vos bases de données avec les enregistrements manquants que votre écouteur de webhook n'aurait pas pu recevoir. Les deux points de terminaison de l'API sont l'API de réconciliationet l'API d'enregistrements.

Les données issues de ces API sont disponibles pendant 30 jours. Pour vous assurer de recevoir tous les enregistrements attendus, nous vous recommandons de vérifier régulièrement vos stocks, par exemple toutes les 12 ou 24 heures.

Vous devez utiliser un jeton d'accès partenaire pour accéder à ces API. Obtenez et gérez votre jeton d'accès partenaire conformément aux pratiques standard de gestion des jetons d'accès pour développeursWebex .

Les plages de fenêtres d'API s'appliquent aux deux points de terminaison afin de mieux gérer la charge du service.

  • Pour les plages horaires supérieures à 48 heures, la durée maximale autorisée est de 12 heures (recommandée et appliquée).
  • Pour les plages horaires de 48 heures ou moins, la durée maximale autorisée est de 48 heures (non recommandée ; cette option sera obsolète à compter du 30 janvier 2026).
  • Pour un identifiant d'organisation partenaire, les API sont limitées à une requête API initiale par minute et par étendue de jeton. Si la pagination est utilisée, jusqu'à 10 requêtes API paginées supplémentaires par minute et par jeton sont autorisées, et celles-ci peuvent être effectuées immédiatement après la requête initiale.

Point de terminaison de l'API de réconciliation

Le point de terminaison de l'API de réconciliation renvoie le nombre total d'enregistrements d'appels générés pour chaque client géré par le partenaire au cours de la période spécifiée. Vous pouvez utiliser ces totaux pour vérifier votre stockage local et identifier les enregistrements d'appels manquants ou incohérents pour certains clients.

Si vous gérez plus de 200 organisations clientes, l'API pagine les résultats pour améliorer la lisibilité.

L'URL du point de terminaison de l'API de réconciliation utilise le format suivant :

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

Paramètres de l'API

Vous pouvez utiliser l'API pour récupérer les enregistrements d'appels des 30 derniers jours. La plage horaire sélectionnée doit commencer au moins 5 minutes avant l'heure UTC actuelle et ne peut pas dépasser 12 heures entre l'heure de début et l'heure de fin dans un seul appel API.

Les paramètres de l'API sont :

  • startTime (obligatoire, chaîne de caractères) — La date et l'heure de début (UTC) du premier enregistrement que vous souhaitez collecter. Assurez-vous que :
    • Vous formatez l'heure comme suit : YYYY-MM-DDTHH:MM:SS.mmmZ. Par exemple, 2025-08-15T06:00:00.000Z.
    • La date et l'heure de début ne doivent pas être antérieures à 30 jours par rapport à l'heure UTC actuelle.
    • L'intervalle entre startTime et endTime ne peut pas dépasser 12 heures.
  • endTime (obligatoire, chaîne de caractères) — La date et l'heure de fin (UTC) des enregistrements que vous souhaitez collecter. Les enregistrements sont basés sur l'heure du rapport, c'est-à-dire l'heure à laquelle l'appel est terminé. Assurez-vous que :
    • Vous formatez l'heure comme suit : YYYY-MM-DDTHH:MM:SS.mmmZ. Par exemple, 2025-08-15T18:00:00.000Z.
    • La date et l'heure de fin doivent être antérieures de 5 minutes à l'heure UTC actuelle et ne doivent pas dater de plus de 30 jours.
    • La date et l'heure de fin doivent être postérieures à startTime.
    • L'intervalle entre startTime et endTime ne peut pas dépasser 12 heures.

Exemple de réponse JSON d'un point de terminaison d'API de réconciliation :


          {
          "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
          }
          ]
          }          
        

Les en-têtes de réponse de l'API indiquent le nombre total d'organisations renvoyées et si des pages supplémentaires sont disponibles. Vérifiez les paramètres d'en-tête suivants pour vous assurer que vous avez interrogé toutes les pages :

  • nombre de pages : Nombre total de pages (par exemple, 2)
  • total-orgs : Nombre total d'organisations incluses dans la réponse (par exemple, 283)
  • page actuelle : Le numéro de page actuel (par exemple, 1)

Par exemple, si les en-têtes affichent num-pages=2, total-orgs=283, et current-page=1, Vous consultez la première page d'une réponse de deux pages contenant au total 283 organisations. Pour accéder à la page suivante, ajoutez le page=2 paramètre à ajouter à votre requête GET, comme indiqué ci-dessous :

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

point de terminaison de l'API Records

Le point de terminaison de l'API Records est utilisé pour interroger les enregistrements d'appels manquants pour des organisations spécifiques où des divergences ou des données manquantes ont été identifiées à l'aide de l'API de réconciliation.

L'API Records renvoie les enregistrements d'appels au format JSON, identique au format décrit dans l'API Detailed Call History. La charge utile renvoyée contient des champs identiques à ceux de la charge utile renvoyée par l'historique détaillé des appels. Pour plus d'informations sur les champs et leurs valeurs, consultez Rapport détaillé de l'historique des appels Webex.

L'API fournit les enregistrements des appels qui se sont terminés 5 minutes avant l'heure actuelle. Pour garantir la disponibilité de tous les enregistrements d'appels, nous vous recommandons d'interroger l'API une heure après la plage horaire de votre choix.

L'URL du point de terminaison de l'API Records utilise le format suivant :

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

Paramètres de l'API

  • OrgID (obligatoire, chaîne de caractères) — L'identifiant de l'organisation pour laquelle vous souhaitez récupérer des enregistrements. Vous pouvez obtenir les identifiants d'organisation à partir de l'API de rapprochement.
  • startTime (obligatoire, chaîne de caractères) — La date et l'heure de début (UTC) du premier enregistrement que vous souhaitez collecter. Assurez-vous que :
    • Vous formatez l'heure comme suit : YYYY-MM-DDTHH:MM:SS.mmmZ. Par exemple, 2025-08-15T06:00:00.000Z.
    • La date et l'heure de début ne doivent pas être antérieures de plus de 30 jours à l'heure UTC actuelle.
    • L'intervalle entre les startTime et endTime ne doit pas dépasser 12 heures dans une seule requête API.
  • endTime (obligatoire, chaîne de caractères) — La date et l'heure de fin (UTC) du dernier enregistrement que vous souhaitez collecter. Les enregistrements sont basés sur l'heure du rapport, c'est-à-dire l'heure à laquelle l'appel est terminé. Assurez-vous que :
    • Vous formatez l'heure comme suit : YYYY-MM-DDTHH:MM:SS.mmmZ. Par exemple, 2025-08-15T18:00:00.000Z.
    • La date et l'heure de fin doivent être antérieures d'au moins 5 minutes à l'heure UTC actuelle et ne doivent pas dater de plus de 30 jours.
    • La date et l'heure de fin doivent être postérieures à startTime.
    • L'intervalle entre les startTime et endTime ne doit pas dépasser 12 heures dans une seule requête API.
  • Max (optionnel, nombre) — Limite le nombre maximal d’enregistrements par page dans la réponse. Assurez-vous que :
    • La plage de valeurs va de 500 à 5000. La valeur par défaut est 5000. Par exemple, Max=1000.
    • Si l'API a plus d'enregistrements à renvoyer que la valeur Max spécifiée, la réponse est paginée.
    • Si une valeur inférieure à 500 est spécifiée, elle est automatiquement ajustée à 500. Si une valeur supérieure à 5000 est spécifiée, elle est ramenée à 5000.

Pagination

Pour déterminer si les réponses de l'API sont paginées, vérifiez la présence d'un en-tête Link dans les en-têtes de réponse. Si un lien next est présent dans l'en-tête Link, extrayez-le et utilisez la valeur startTimeForNextFetch pour demander l'ensemble d'enregistrements suivant. S'il n'y a pas de lien suivant, tous les rapports pour la période sélectionnée sont collectés.

Les requêtes API pour les pages suivantes peuvent être effectuées immédiatement, mais doivent être limitées à un maximum de 10 requêtes paginées par minute et par jeton.

Par exemple, si la requête API initiale est :

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

L'en-tête Link dans la réponse est alors :

; rel="next"

D'autres valeurs de lien possibles incluent rel="first" et rel="prev" pour la première et la page précédente, respectivement.

La pagination de cette API suit la norme RFC5988 (Web Linking). Pour plus d'informations, voir Principes de base de l'API REST.

Partenaire reports/templates API

Vous pouvez générer et télécharger des rapports disponibles dans Partner Hub en utilisant les API Partner Reports. Pour plus d'informations, consultez le partenaire report/templates.

Les partenaires peuvent également accéder à plusieurs rapports et les télécharger directement depuis le Partner Hub. Pour plus d'informations, consultez les rapports du Partner Hub.

Cet article était-il utile ?
Cet article était-il utile ?