- Pagină de pornire
- /
- Articol
Partenerii Webex Calling multi-tenant (MT) pot configura un webhook pentru a aduna înregistrări Webex Calling pentru toți clienții dvs. Acest lucru permite reconcilierea eficientă a facturării, analiza și raportarea fără a fi nevoie să interogați fiecare client individual.
Prezentare generală
Webhook-ul Detailed Call Records oferă o soluție sigură, scalabilă și robustă condusă de evenimente, mai degrabă decât de solicitări. Acest webhook oferă o vizibilitate mai mare asupra Webex Calling activităților clienților dvs., sprijinind cazurile de utilizare de la facturare la raportare personalizată.
Puteți utiliza acest webhook pentru a colecta înregistrări convenabil pentru toți clienții gestionați prin Partner Hub fără a interoga fiecare client individual. Acest webhook vă permite să dezvoltați aplicații personalizate de raportare, facturare și analitice atât pentru cerințele interne de afaceri, cât și pentru serviciile cu valoare adăugată.
Pentru o introducere în webhook și API-urile sale însoțitoare, urmăriți acest Vidcast: API pentru istoricul apel Webex Calling urilor detaliate pentru parteneri.
Ce oferă webhook-ul partenerului
Webhook-ul oferă înregistrări detaliate ale istoricului apelurilor la fiecare 5 minute. Fiecare sarcină utilă webhook conține:
- Înregistrări de apeluri care s-au încheiat între 10 minute și 5 minute înainte de ora curentă.
- Orice înregistrări târzii procesate de Webex Calling cloud.
- Completează automat înregistrările apelurilor târzii în sarcinile utile ulterioare webhook pentru a asigura livrarea fiabilă.
Pentru a arăta modul în care înregistrările de apeluri sunt incluse în fiecare sarcină utilă, luați în considerare următorul exemplu:
- O sarcină utilă primită la 14:05 conține apeluri care s-au încheiat între 13:55 și 14:00.
- Apelurile care se termină între orele 14:00 și 14:05 sunt incluse în sarcina utilă 14:10.
- Înregistrările finalizate mai devreme (de exemplu, un apel care s-a încheiat la 14:04), dar proces ate târziu de Webex Calling cloud (de exemplu, la 14:11) sunt incluse în următoarea sarcină utilă programată (de exemplu, 14:15).
Webhook-urile livrează în mod fiabil înregistrări. Cu toate acestea, este posibil să primiți înregistrări duplicate în încărcăturile utile ulterioare webhook atunci când sistemul reia înregistrările în anumite condiții. Sun teți responsabil pentru gestionarea eliminării duplicării înregistrărilor. Pentru a identifica înregistrările duplicate, utilizați câmpul ReportID ca cheie primară și câmpul ReportTime pentru a determina când a fost finalizat sau procesat un apel. Utilizați aceste câmpuri pentru a actualiza sau insera înregistrările în magazinele de date interne.
Webhook în hub-ul partenerilor
Furnizând un webhook, permiteți platformei de analiză să trimită înregistrări de apeluri la adresa URL de apel înapoi ori de câte ori sunt generate.
Webex Callingînregistrările sunt livrate utilizând același format ca API-urile existente pentru înregistrări detaliate ale apelurilor. Puteți configura un webhook și puteți alege între două tipuri de feed:
- Analiză — Include toate înregistrările apelurilor pentru toate organizațiile client cu care partenerul are o Webex Calling relație. Aceasta include organizațiile în care:
- Partenerul gestionează organizația client cu un rol de administrator complet partener.
- Organizația client are un Webex Calling abonament activ în cadrul organizației partenere.
- Facturare — Include înregistrări de apeluri pentru apelurile efectuate de utilizatori cu o Webex Calling licență vândută și furnizată de partener. Înregistrările de apeluri pentru spațiile de lucru sunt incluse în acest feed.
Accesul și confidențialitatea datelor
Numai partenerul proprietar poate accesa Call Details Records (CDR) pentru facturare.
- Un partener (sau sub-partener) care gestionează licența asociată înregistrării apelurilor devine partenerul proprietar.
- Proprietatea este determinată de: ID utilizator > ID licență > ID abonament > ID partener.
- Fiecare CDR este accesibil unui singur partener.
- Unele înregistrări de apeluri nu se asociază cu un partener de facturare și nu toți partenerii asociați unei organizații beneficiază de acces egal la toate înregistrările, deoarece aceste înregistrări pot conține informații de identificare personală (PII).
Configurați o adresă URL de apelare webhook
Configurați webhook-ul în Hub-ul partenerilor. Puteți configura un singur webhook pentru fiecare organizație parteneră.
Asigurați-vă că aveți rolul de administrator complet partener cu „ Acces complet la nivel de administrator organizațional” și verificat în Control Hub (sub Administ rare > atori, selectați un administrator complet sau un administrator complet partener, apoi selectați Roluri de administrator > Partener).
Aceleași cerințe de acces se aplică atunci când utilizați API-urile Reconciliere și Înregistrări pentru parteneri.
| 1 |
Conectați-vă la Partner Hub. |
| 2 |
Accesați .
|
| 3 |
Introduceți o adresă URL pe care să o utilizați sub Webhook. Adresa URL trebuie să se încheie cu /webhook (de exemplu, https://yourdomain.com/webhook).
|
| 4 |
Dacă doriți să vă autentificați încărcăturile utile webhook cu un token secret, puteți adăuga unul. Pentru a găsi mai multe informații despre webhook-urile Webex și jetoanele secrete, consultați Webex pentru dezvoltat ori: Webhook-uri. |
| 5 |
Selectați unul dintre următoarele tipuri de resursă pe care să le utilizați pentru webhook:
|
Puncte finale API pentru parteneri
În plus față de webhook, Webex Calling oferă puncte finale API pentru a sprijini reconcilierea datelor. Aceste puncte finale vă permit să recuperați sau să reconciliați stocurile de date cu orice înregistrări lipsă pe care ascultătorul dvs. webhook ar putea să nu le fi primit. Cele două puncte finale API sunt API-ul Rec onciliere și API- ul În registrări.
Înregistrările din aceste API-uri sunt disponibile timp de 30 de zile. Pentru a vă asigura că primiți toate înregistrările așteptate, vă recomandăm să vă reconciliați periodic magazinele de discuri, cum ar fi la fiecare 12 sau 24 de ore.
Trebuie să utilizați un token de acces partener pentru a accesa aceste API-uri. Utilizatorul care se autentifică trebuie să fie un administrator complet partener cu acces complet la nivel de administrare organizațional și trebuie să aibă activ Webex Callingat accesul CDR API. Tokenul OAuth trebuie să includă domeniul de spark-admin:calling_cdr_readaplicare. Rolurile de administrator numai pentru citire nu sunt suficiente pentru API-urile Reconciliere parteneri și Înregistrări.
Utilizați punctul analytics-callingfinal pentru regiunea de Webex Calling date a organizației client. Utilizați adresa URL de bază aplicabilă atât pentru API-urile Reconciliere, cât și pentru Înregistrări:
- SUA și Canada:
https://analytics-calling.webexapis.com - Europa:
https://analytics-calling-eu.webexapis.com - India:
https://analytics-calling-in.webexapis.com - Australia:
https://analytics-calling-au.webexapis.com
Intervalele ferestrelor API sunt aplicabile ambelor puncte finale pentru a gestiona mai bine încărcarea serviciului.
- Pentru intervale de timp mai mari de 48 de ore, durata maximă permisă a ferestrei este de 12 ore (aplicată).
- Pentru un ID de organizație parteneră, API-urile sunt limitate la o cerere API inițială pe minut, pentru fiecare domeniu de token. Dacă se utilizează paginarea, sunt permise până la 10 solicitări API paginate suplimentare pe minut, per token, iar acestea pot fi făcute imediat după solicitarea inițială.
Punct final API de reconciliere
Punctul final API de reconciliere returnează numărul total de înregistrări de apeluri generate pentru fiecare client gestionat de partener în perioada de timp specificată. Puteți utiliza aceste totaluri pentru a verifica spațiul de stocare local și pentru a identifica orice înregistrări de apeluri lipsă sau inconsistente pentru anumiți clienți.
Cerință de acces: Utilizatorul care se autentifică trebuie să fie un administrator partener cu acces complet la nivel de administrator și trebuie să aibă activ Webex Callingat accesul CDR API. Tokenul de acces trebuie să includă spark-admin:calling_cdr_readdomeniul de aplicare.
Dacă gestionați mai mult de 200 de organizații clienți, API-ul paginează rezultatele pentru a îmbunătăți lizibilitatea.
Adresa URL a punctului final API de reconciliere utilizează următorul format:
https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z
Parametrii API
Puteți utiliza API-ul pentru a prelua înregistrările apelurilor din ultimele 30 de zile. Fereastra de timp selectată trebuie să înceapă cu cel puțin 5 minute înainte de ora UTC curentă și nu poate depăși 12 ore între orele de început și de sfârșit într-un singur apel API.
Parametrii API sunt:
-
StartTime (obligatoriu, șir) — Data și ora de începere (UTC) pentru prima înregistrare pe care doriți să o colectați. Asiguraţi-vă că:
- Formatați ora ca
YYYY-MM-DDTHH:MM:SS.mmmZ. De exemplu,2025-08-15T06:00:00.000Z.
- Data și ora de începere nu trebuie să depășească 30 de zile de la ora UTC curentă.
- Fereastra dintre
startTimeși nuendTimepoate depăși 12 ore.
- Formatați ora ca
-
EndTime (obligatoriu, șir) —Data și ora de încheiere (UTC) pentru înregistrările pe care doriți să le colectați. Înregistrările se bazează pe ora raportului, care este momentul în care apelul este finalizat. Asiguraţi-vă că:
- Formatați ora ca
YYYY-MM-DDTHH:MM:SS.mmmZ. De exemplu,2025-08-15T18:00:00.000Z. - Data și ora de încheiere trebuie să fie cu 5 minute înainte de ora UTC curentă și nu mai vechi de 30 de zile.
- Data și ora de încheiere trebuie să fie mai mari decât
startTime. - Fereastra dintre
startTimeși nuendTimepoate depăși 12 ore.
- Formatați ora ca
Exemplu de răspuns JSON pentru punctul final API de reconciliere:
{
"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
}
]
}
Anteturile de răspuns API indică numărul total de organizații returnate și dacă sunt disponibile pagini suplimentare. Verificați următorii parametri de antet pentru a vă asigura că ați interogat toate paginile:
- num-pages: Numărul total de pagini (de exemplu, 2)
- total-orgs: Numărul total de organizații incluse în răspuns (de exemplu, 283)
- pagina curentă: Numărul de pagină curent (de exemplu, 1)
De exemplu, dacă anteturile afișează num-pages=2, total-orgs=283 și current-page=1, vizualizați prima pagină a unui răspuns de două pagini care conține 283 de organizații în total. Pentru a accesa pagina următoare, adăugați parametrul page=2 la solicitarea GET, așa cum se arată mai jos:
https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z&page=2
Înregistrează punctul final API
Punctul final API Înregistrări este utilizat pentru a interoga înregistrările de apeluri lipsă pentru anumite organizații în care au fost identificate discrepanțe sau date lipsă utilizând API-ul Reconciliere.
Flux recomandat: Sunați /v1/partners/cdrcountbyorgmai întâi. Apoi utilizați exact orgIdreturnată cdr_counts[].orgIdatunci când sunați /v1/partners/cdrsbyorg.
API-ul Înregistrări returnează înregistrări de apeluri în format JSON, identic cu formatul descris în API-ul istoric detaliat al apelurilor. Sarcina utilă returnată conține câmpuri identice cu sarcina utilă returnată Istoricul apelurilor detaliate. Pentru mai multe informații despre câmpuri și valorile acestora, consultați Raportul Webex Callingdetaliat al istoricului apelurilor.
API-ul oferă înregistrări de apeluri care s-au încheiat cu 5 minute înainte de ora curentă. Pentru a vă asigura că toate înregistrările apelurilor sunt disponibile, vă recomandăm să interogați API-ul la o oră după fereastra de timp preferată.
Adresa URL a punctului final API Records utilizează următorul 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
Parametrii API
-
orgId(obligatoriu, șir) —ID-ul organizației clientului pentru care doriți să preluați înregistrările. Numele parametrului este sensibil la majuscule. Puteți obține ID-uri de organizație din câmpul de răspuns API Reconcilierecdr_counts[].orgId. -
StartTime (obligatoriu, șir) — Data și ora de începere (UTC) pentru prima înregistrare pe care doriți să o colectați. Asiguraţi-vă că:
- Formatați ora ca
YYYY-MM-DDTHH:MM:SS.mmmZ. De exemplu,2025-08-15T06:00:00.000Z. - Data și ora de începere nu trebuie să depășească 30 de zile de la ora UTC curentă.
- Intervalul dintre
startTimeși nuendTimetrebuie să depășească 12 ore într-o singură solicitare API.
- Formatați ora ca
-
EndTime (obligatoriu, șir) — Data și ora de încheiere (UTC) pentru ultima înregistrare pe care doriți să o colectați. Înregistrările se bazează pe ora raportului, care este momentul în care apelul este finalizat. Asiguraţi-vă că:
- Formatați ora ca
YYYY-MM-DDTHH:MM:SS.mmmZ. De exemplu,2025-08-15T18:00:00.000Z. - Data și ora de încheiere trebuie să fie cu cel puțin 5 minute înainte de ora UTC curentă și nu mai vechi de 30 de zile.
- Data și ora de încheiere trebuie să fie mai mari decât
startTime. - Intervalul dintre
startTimeși nuendTimetrebuie să depășească 12 ore într-o singură solicitare API.
- Formatați ora ca
-
max (opțional, număr) — Limitează numărul maxim de înregistrări pe pagină în răspuns. Asiguraţi-vă că:
- Intervalul este de la 500 la 5000. Valoarea implicită este 5000. De exemplu,
max=1000. - Dacă API-ul are mai multe înregistrări de returnat decât valoarea maximă specificată, atunci răspunsul este paginat.
- Dacă este specificată o valoare sub 500, aceasta este ajustată automat până la 500. Dacă este specificată o valoare mai mare de 5000, aceasta este ajustată până la 5000.
- Intervalul este de la 500 la 5000. Valoarea implicită este 5000. De exemplu,
Paginare
Pentru a identifica dacă răspunsurile API sunt paginate, verificați anteturile de răspuns pentru un antet Link. Dacă un nextlink este prezent în antetul Link, extrageți-l și utilizați startTimeForNextFetchvaloarea pentru a solicita următorul set de înregistrări. Dacă nu există un link următor, atunci toate rapoartele pentru intervalul de timp selectat sunt colectate.
Cererile API pentru paginile ulterioare pot fi făcute imediat, dar trebuie să fie limitate la maximum 10 cereri paginate pe minut, per domeniu de aplicare.
Utilizați procesarea și deduplicarea idempotent atunci când preluați înregistrări, inclusiv în răspunsuri paginate sau ferestre de reconciliere repetate. Utilizați reportIdca cheie primară și reportTimepentru a determina cea mai recentă înregistrare procesată.
De exemplu, dacă cererea inițială API este:
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
atunci antetul Link din răspuns este:
<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&startTimeForNextFetch=2025-08-15T09:30:00.000Z&totalCount=20000&max=5000>; rel="next"
Paginarea utilizează numai antetul rel="next"Link. Dacă răspunsul include un rel="next"link, utilizați acea adresă URL pentru a prelua următoarea pagină de înregistrări. Dacă răspunsul nu include un rel="next"link, ați recuperat toate înregistrările disponibile pentru intervalul de timp selectat.
Paginarea pentru acest API urmează standardul RFC5988 (Web Linking). Pentru mai multe informații, consultați Bazele API-ului REST.
Înțelegeți codurile de răspuns la punctul final API
Această secțiune oferă o prezentare generală a codurilor de răspuns comune care pot fi întâlnite atunci când lucrați cu punctul final API de reconciliere și punctul final API Records. Aceste puncte finale joacă un rol critic în sincronizarea, validarea și raportarea datelor. Înțelegerea acestor coduri de răspuns este esențială pentru depanarea eficientă și pentru menținerea integrărilor fiabile și stabile.
|
Cod de răspuns |
Descrierea codului de răspuns |
|---|---|
|
200 |
OK |
|
400 |
Cerere greșită: Sol icitarea a fost nevalidă sau nu poate fi comunicată în alt mod. Un mesaj de eroare însoțitor va explica în continuare. |
|
401 |
Neautoriz at: acreditările de autentificare lipseau sau erau incorecte. |
|
403 |
Interzis: Cererea este înțeleasă, dar a fost refuzată sau accesul nu este permis. |
|
404 |
Nu a fost găsit: URI-ul solicitat este nevalid sau resursa solicitată, cum ar fi un utilizator, nu există. De asemenea, returnat atunci când formatul solicitat nu este acceptat de metoda solicitată. |
|
405 |
Metoda nepermisă: Solicitarea a fost făcută unei resurse utilizând o metodă de solicitare HTTP care nu este acceptată. |
|
409 |
Conflic t: Cererea nu a putut fi procesată deoarece intră în conflict cu o regulă stabilită a sistemului. De exemplu, o persoană nu poate fi adăugată într-o cameră de mai multe ori. |
|
410 |
Dispărut: Resursa solicitată nu mai este disponibilă. |
|
415 |
Tip suport neacceptat: Solicitarea a fost făcută unei resurse fără a specifica un tip de suport sau a utilizat un tip de suport care nu este acceptat. |
|
423 |
Bloc at: Resursa solicitată este temporar indisponibilă. Poate fi prezent un antet Retry-After care specifică câte secunde trebuie să așteptați înainte de a încerca din nou solicitarea. |
|
428 |
Condiție prealabilă necesară: Fișierele nu pot fi scanate pentru malware și trebuie descărcate forțat. |
|
429 |
Prea multe solicit ări: Prea multe solicitări au fost trimise într-o anumită perioadă de timp, iar cererea a fost limitată. Ar trebui să fie prezent un antet Retry-After care specifică câte secunde trebuie să așteptați înainte de a putea fi făcută o solicitare reușită. |
|
451 |
În mod implicit, solicitările |
|
500 |
Eroare internă a server ului: Ceva nu a mers bine pe server. Dacă problema persistă, nu ezitați să contactați [Echipa de asistență pentru dezvoltatori Webex] (/explore/support). |
|
502 |
Gateway greș it: serverul a primit un răspuns nevalid de la un server din amonte în timpul procesării solicitării. Încercați din nou mai târziu. |
|
503 |
Serviciul indisponibil: Serverul este supraîncărcat cu solicitări. Încercați din nou mai târziu. |
|
504 |
Timeout Gateway: Un server din amonte nu a răspuns la timp. Dacă interogarea dvs. utilizează parametrul maxim, încercați să îl reduceți. |
API pentru rapoarte parteneri/șabloane
Puteți genera și descărca rapoarte disponibile în Partner Hub utilizând API-urile pentru rapoarte pentru parteneri. Pentru mai multe informații, consultați rapoartul /șab loanele partenerului.
De asemenea, partenerii pot accesa și descărca mai multe rapoarte direct din Partner Hub. Pentru mai multe informații, consultați rapoartele Partner Hub.
Istoricul revizuirilor
Istoricul revizuirilor documentelor
|
Data revizuirii |
Am făcut următoarele modificări la articol |
|---|---|
|
13/08/26 |
|
|
2/04/2026 |
|