Enterprise Audit-API voor Gesprekken: Endpoints en Voorbeelden
Praktische referentie voor de audit-API v1: authenticatie met organisatiesleutel, audities aanmaken via URL of upload, agents, teams, scripts, analytics en HMAC-webhooks.
Praktische referentie voor de audit-API v1 voor gesprekken — het integratiekanaal van de auditmodule met uw PABX of telefoonplatform. Vereist een organisatie met een enterprise-abonnement en een API-sleutel van de organisatie.
Authenticatie
Maak de sleutel aan in /dashboard/organization/auditorias (OWNER/ADMIN; maximaal 10 actieve sleutels per organisatie) en stuur deze mee in elk verzoek:
Authorization: Bearer vpt_live_SUA_CHAVE_DA_ORG
- Het geheim wordt één keer getoond bij het aanmaken — wij bewaren alleen de hash.
- Elke sleutel heeft scopes (
audits:write,audits:read,usage:read,analytics:read, en andere); wat niet is toegekend, wordt standaard geweigerd. - Rate limit: 60 verzoeken per minuut per sleutel.
Een audit aanmaken
curl -X POST https://www.vozparatexto.com.br/api/v1/audits \
-H "Authorization: Bearer vpt_live_SUA_CHAVE_DA_ORG" \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://pbx.suaempresa.com/gravacoes/8841.mp3",
"webhook_url": "https://api.suaempresa.com/hooks/auditorias",
"idempotency_key": "chamada-8841",
"agent_external_id": "maria.souza",
"team": "vendas-sp"
}'
Regels:
- Accepteert
audio_url(alleenhttps, openbaar) ofupload_id(zie hieronder). webhook_urlis verplicht — het resultaat komt via webhook, niet via polling.idempotency_keywordt duurzaam opgeslagen: herhaalde verzendingen met dezelfde sleutel creëren geen dubbele audit.- Directe reactie:
202 { "audit_id": "...", "status": "queued" }.
Raadplegingen: GET /api/v1/audits (lijst) en GET /api/v1/audits/{id} (detail).
Opnames zonder openbare URL
Voor PABX-systemen die geen URL beschikbaar stellen, vraag je een tijdelijke upload-URL aan:
curl -X POST https://www.vozparatexto.com.br/api/v1/uploads \
-H "Authorization: Bearer vpt_live_SUA_CHAVE_DA_ORG"
Het antwoord bevat een put_url die 1 uur geldig is: upload het bestand met een PUT en gebruik de geretourneerde upload_id bij het aanmaken van de audit.
Operationele registratie en metriek
| Endpoint | Functie |
|---|---|
GET/POST /api/v1/agents | Agents (met externe identificatie van uw systeem) |
GET/POST /api/v1/teams | Teams |
GET/POST /api/v1/scripts + POST /api/v1/scripts/{id}/versions | Scripts en versies |
GET /api/v1/usage | Verbruik in de periode |
GET /api/v1/analytics/summary | Analytische samenvatting van de operatie |
GET /api/v1/analytics/agents/{external_id} | Metriek per agent |
Webhooks en garanties
- Leveringen ondertekend met HMAC-SHA256 (
X-VPT-Signature+X-VPT-Event); valideer voordat je verwerkt. - Timeout van 15 s per poging, tot 6 pogingen met backoff van 5 min tot 24 uur.
- Vastgelopen jobs verdwijnen niet: een wachtrij die langer dan 10 minuten stilstaat wordt opnieuw in de wachtrij geplaatst; verwerking die langer dan 60 minuten vastzit wordt een fout met een fout-webhook. Elke verzonden audio genereert een uiteindelijke callback.
Meer details in Webhooks en meldingen.
FAQ
Kan ik hier mijn persoonlijke API-sleutel gebruiken?
Nee — de audit-API gebruikt organisatiesleutels, aangemaakt door OWNER/ADMIN in het auditpaneel, met eigen scopes.
Ik heb hetzelfde gesprek twee keer verzonden. Wordt het gedupliceerd?
Nee, als je dezelfde idempotency_key hebt gebruikt — de idempotentie is duurzaam opgeslagen in de database.
Is de put_url verlopen voordat de upload klaar was. Wat nu?
Vraag een nieuwe put_url aan (geldig 1 uur) en stuur opnieuw; er is nog niets aangemaakt.
Hoe beperk ik wat elke integratie kan doen?
Maak aparte sleutels per systeem, elk met alleen de benodigde scopes (bijv. het interne dashboard alleen met analytics:read), en trek ze individueel in wanneer nodig.
Gerelateerde artikelen
Niet gevonden wat je zocht? Open een ticket — ons team reageert snel.