Skip to main content
ThunderPhone is een compleet platform voor het bouwen, uitvoeren en verbeteren van AI-spraakagenten. Deze pagina is het overzicht: elk concept dat je tegenkomt, elk in een korte sectie, met het dashboardonderdeel en de API erachter. Lees het één keer door en kom terug wanneer een term toelichting nodig heeft. De zijbalk van het dashboard weerspiegelt deze structuur:

Betrokkenheid

Verbindingen

Apps, API’s, MCP-servers en VoIP-providers die je agenten kunnen gebruiken.

Gebeurtenissen

Webhooks en functietools voor je eigen code.

Organisaties

Een organisatie is de eenheid voor tenancy. Elke andere resource — agenten, telefoonnummers, oproepen, sleutels — behoort tot precies één organisatie. Je account kan tot meerdere organisaties behoren; elke organisatie heeft een eigen saldo, eigen sleutels en eigen ledenlijst. De sk_live_-API-sleutel die je maakt onder Organisatie → Sleutels is gekoppeld aan één organisatie. Dankzij die koppeling is de REST API zo eenvoudig: je zet nooit een organisatie-ID in URL-paden, omdat je sleutel die al identificeert. In het dashboard: de organisatieswitcher (onderaan de zijbalk) en instellingen voor Organisatie — tabbladen voor Algemeen, Sleutels, Meldingen, Factureringsinstellingen en Factureringsgeschiedenis. In de API: /v1/orgs, /v1/developer/api-keys.

Agenten

Een agent is de AI-configuratie die een oproep afhandelt. Deze bundelt:
  • Een prompt die bepaalt wat de agent zegt en hoe deze zich gedraagt — inclusief oproepacties zoals doorschakelingen, toetsenbordinvoer en ophangen, die gewone promptregels zijn in plaats van afzonderlijke configuratie.
  • Een enginepakket (spark, bolt, storm-*): Spark is geoptimaliseerd voor kosten, Bolt voor snelheid en Storm voor intelligentie bij complexe prompts.
  • Een stem plus een primaire taal en optionele aanvullende talen — de agent schakelt automatisch wanneer een beller van taal wisselt. Zie Ondersteunde talen.
  • Gekoppelde mogelijkheden: verbonden apps, API-verbindingen, kennisbanken, MCP-servers en inline functietools.
  • Gedragsinstellingen: spreekvolgorde, bevestigingsmodus, achtergrondtrack, wachttime-out.
Bewerkingen in de builder worden automatisch opgeslagen als concept; niets gaat live totdat je op Implementeren klikt. Elke implementatie wordt vastgelegd in het tabblad Geschiedenis van de builder, zodat je elke vorige versie kunt bekijken en herstellen. In het dashboard: Spraakagenten → de agentbuilder (/dashboard/agents). Zie Bouw je eerste spraakagent. In de API: /v1/agents — CRUD, dupliceren, doorschakelen, versiegeschiedenis en prompthulpmiddelen.

Telefoonnummers

Een telefoonnummer behoort tot een organisatie en routeert inkomende oproepen naar een agent (en kan uitgaande oproepen verwerken). Twee bronnen:
  • Demonummers — echte Amerikaanse nummers die vanuit de pool van ThunderPhone worden ingericht, binnen enkele seconden actief. Alleen inkomend, ze beantwoorden met een korte gesproken disclaimer en het dashboard beperkt een organisatie tot 10 van deze nummers. Perfect voor een eerste test; niet voor productie.
  • VoIP-nummers — meegenomen van je eigen provider via een VoIP-verbinding. Twilio en Telnyx maken rechtstreeks verbinding (Telnyx heeft een begeleide configuratie); SignalWire en Vonage volgen binnenkort — vandaag bereik je ze via handmatige SIP-configuratie, die elke SIP-trunk accepteert. Na import en verificatie ondersteunen VoIP-nummers inkomende en uitgaande oproepen.
In elke nummerregel kun je een routeringsmodus instellen, de inkomende agent kiezen en het nummer labelen. In het dashboard: Telefoonnummers (/dashboard/phone-numbers). Zie Een telefoonnummer verkrijgen. In de API: /v1/phone-numbers, /v1/voip-connections, /v1/phone-number-labels.

Oproepen

Elke inkomende oproep, uitgaande oproep, simulatie en widgetsessie wordt een oproepenlogboek. Een oproep bevat het volledige transcript met rolaanduidingen, de gestructureerde gespreksgeschiedenis (inclusief toolaanroepen), een opname, het factureringstotaal en optionele AI-beoordelingen en probleemrapporten. Terwijl een oproep live is, kun je deze openen en meeluisteren — je neemt stil deel en niemand in het gesprek hoort je. Zodra je meeluistert, kun je fluisteren: typ een instructie die tijdens het gesprek rechtstreeks naar je agent gaat; de beller hoort deze nooit en de agent volgt deze live op. In het dashboard: Oproepgeschiedenis (/dashboard/call-history) voor het archief en details per oproep; Live voor lopende oproepen. Zie Je oproepen beoordelen, beluisteren en begeleiden. In de API: /v1/calls — lijst, transcript, geschiedenis, audio, beoordeling, export; /v1/issue-reports.

Webwidgets

De webwidget geeft bezoekers van je site een gesprek via de microfoon met een agent — geen telefoonnummer nodig. Deze authenticeert met een publiceerbare sleutel (pk_live_...) die via oorsprong is beperkt tot je toegestane domeinen, waardoor deze veilig is in client-sidecode. Sleutels werken in een van twee modi: agent (statisch gekoppeld aan één agent) of webhook (je server kiest de configuratie per bezoeker — zie Dynamische configuratie per oproep). Widgetsessies lopen via dezelfde oproepinfrastructuur als telefoongesprekken. In het dashboard: Webwidgets (/dashboard/web-widgets) — maak widgets, stel de modus en agent in, beheer toegestane domeinen en kopieer het insluitfragment. Zie Een webwidget maken. In de API: /v1/publishable-key, /v1/mic-session en de Widget SDK-documentatie.

Kennisbanken

Een kennisbank is een verzameling documenten die je agent tijdens een gesprek kan doorzoeken om antwoorden te onderbouwen — upload bestanden rechtstreeks of importeer ze uit Google Drive en koppel de kennisbank vervolgens in de builder aan een agent. De agent bevraagt deze met een ingebouwde zoektool wanneer het gesprek daarom vraagt. In het dashboard: Kennis (/dashboard/knowledge) voor de documentbibliotheek; de sectie Kennis van de builder om er een aan een agent te koppelen. Zie Je agent een kennisbank geven.

Verbindingen

Verbindingen zijn de manier waarop agents de buitenwereld bereiken. Vier soorten, één zijbalkgroep:
  • Apps (/dashboard/app-connections) — OAuth-verbindingen met Slack, HubSpot, Salesforce, Google Calendar, Google Sheets en Cal.com. Maak één keer verbinding en schakel vervolgens tools per bewerking (een Slack-bericht plaatsen, een HubSpot-contact updaten of invoegen, een Cal.com-slot boeken…) in voor elke agent. Zie Apps verbinden.
  • API’s (/dashboard/api-connections) — verander elke HTTP-API in een agentactie. Plak een cURL-opdracht en de AI-wizard maakt een concept van de tooldefinitie, of bouw deze handmatig; met de knop Testaanvraag voer je een sandboxaanroep uit voordat je uitbrengt. Zie API-verbindingen — de dashboardweergave van /v1/integrations.
  • MCP (/dashboard/mcp-connections) — voeg een Model Context Protocol-server toe via URL en laat de agent de tools gebruiken die deze beschikbaar stelt. Zie Een MCP-server toevoegen.
  • VoIP (/dashboard/voip-connections) — providerreferenties voor je eigen telefoonnummers gebruiken. Zie Een VoIP-provider verbinden.
In de API: /v1/integrations en /v1/voip-connections; zie ook Een toolintegratie bouwen.

Campagnes

Een campagne plaatst op grote schaal uitgaande oproepen: upload een CSV met contacten, kies de agent en het afzendernummer, en stel het belvenster in (dagen en uren, met tijdzoneondersteuning), evenals gelijktijdigheid en het opnieuw-beleid (maximaal aantal pogingen en welke uitkomsten — geen antwoord, voicemail, mislukt — opnieuw worden geprobeerd). De campagne doorloopt de lijst en registreert elke oproep in Oproepgeschiedenis. In het dashboard: Campagnes (/dashboard/campaigns). Zie Een campagne voor uitgaande oproepen uitvoeren. Voor eenmalige programmatische oproepen: de API voor uitgaande oproepen.

Live monitoring

Live toont elke lopende oproep binnen de organisatie en laat je elke oproep openen om in realtime mee te luisteren en in te fluisteren. Het is het toezichtsscherm: bekijk hoe een nieuwe prompt zijn eerste echte verkeer verwerkt, of houd een actieve campagne in de gaten. In het dashboard: Live (/dashboard/live). Zie Live oproepen bekijken en begeleiden.

Simulaties

Een simulatie is een AI-beller die een echt gesprek voert met je agent — dezelfde telefonieroute, echt transcript, echte beoordeling — zodat je kunt testen voordat (en nadat) je uitbrengt. Richt deze op een agent of een telefoonnummer, schrijf zelf het scenario voor de beller of genereer scenario’s met AI op basis van de prompt van de agent (inclusief edge cases, als je daarom vraagt), en bekijk de oproep live. Scenario’s worden gegroepeerd in suites die een minimale slagingskans vastleggen en releases in CI kunnen blokkeren; regressies ten opzichte van de geaccepteerde basislijn worden per scenario gerapporteerd. In het dashboard: Simulaties (/dashboard/simulations), plus de knop Simulatie in de agentbuilder. Zie Een oproep simuleren. In de API: /v1/test-calls en de suite-runner — zie Een agent end-to-end testen.

Experimenten

Een experiment voert A/B-tests uit op agentconfiguraties met live verkeer: definieer varianten (verschillende prompts, engines of instellingen), verdeel het verkeer ertussen en vergelijk de resultaten per variant. Gebruik dit in plaats van zelf bucketlogica in een webhook te bouwen. In het dashboard: Experimenten (/dashboard/experiments) en het tabblad A/B in de agentbuilder. Zie Experimenten (A/B-testen).

Problemen

Een probleem is een gemarkeerd probleem bij een specifieke oproep — gemeld door een menselijke beoordelaar of gedetecteerd door AI-beoordeling. Problemen hebben een ernstniveau, bron en status, en de pagina Problemen is de triagewachtrij: filter, inspecteer de betreffende oproep en volg oplossingen. In het dashboard: Problemen (/dashboard/issues), plus markering per oproep in Oproepgeschiedenis. Zie Problementriage. In de API: /v1/issue-reports.

Rapporten

Een rapport beantwoordt een vraag in natuurlijke taal over je oproepgegevens (“Wat waren vorige week de drie belangrijkste redenen waarom bellers om een mens vroegen?”) met een door AI geschreven analyse, beperkt tot de spraakagenten en datumbereik die je kiest. In het dashboard: Rapporten (/dashboard/reports). Zie Rapporten.

Observability

Observability is het metriekoverzicht: oproepvolume, uitkomsten en kwaliteit in de tijd, filterbaar op agent en tijdvenster, met export voor verdere analyse. In het dashboard: Observability (/dashboard/observability). Zie Observability.

Meldingen

Een meldingsregel bewaakt een metriek (succespercentage, foutpercentage, gemiddelde score, oproepvolume, regressies in suites) binnen een tijdvenster en wordt geactiveerd wanneer deze je drempelwaarde overschrijdt. Meldingen gaan naar e-mail en Slack, en activeren een alert.triggered-event naar je webhookeindpunten. In het dashboard: Organisatie → Meldingen. Zie Meldingen.

Webhooks

ThunderPhone stuurt HTTP POST-webhooks naar je server wanneer er dingen gebeuren tijdens en na een oproep. Twee leveringsmodellen:
  • Webhookeindpunten (aanbevolen): beheer meerdere URL’s via /v1/developer/webhook-endpoints met geheimen per eindpunt en gebeurtenisabonnementen per eindpunt.
  • Verouderde webhook met één URL: één URL per organisatie. Beheerd via /v1/webhook of onder Organisatie → Algemeen. Behouden voor achterwaartse compatibiliteit.
Events zijn verdeeld in twee categorieën:
  • Blokkerende events verwachten dat je server reageert met configuratie die de lopende oproep vormgeeft — de inkomende-oproepevents (telephony.incoming / web.incoming). Je hebt maximaal 10 seconden om te reageren; bij een time-out handelt de statisch toegewezen agent de oproep af.
  • Niet-blokkerende events zijn fire-and-forgetmeldingen, die opnieuw worden geprobeerd met exponentiële backoff — zie leveringssemantiek.
Elk verzoek bevat een HMAC-SHA256-handtekening in X-ThunderPhone-Signature. Zie Handtekeningverificatie.

Functietools

Een functietool is een HTTP-eindpunt dat je agent tijdens een gesprek kan aanroepen. Je geeft ThunderPhone een functieschema in OpenAI-stijl plus een eindpunt-URL; de agent bepaalt wanneer deze moet worden aangeroepen, en ThunderPhone doet het ondertekende HTTP-verzoek vanaf zijn servers en geeft het resultaat terug aan de agent. Agenten bieden ook ingebouwde belmogelijkheden — de oproep doorverbinden, toetsenbordinvoer (DTMF) versturen, de oproep beëindigen, in de wacht staan — die je inschakelt met gewone promptregels in plaats van tooldefinities. In het dashboard: de sectie API-verbindingen van de builder (zie Verbindingen). In de API: /v1/integrations en de Functietools-specificatie.

Team en rollen

Elke organisatie heeft een ledenlijst met twee rollen: Leden bouwen en beheren agenten; Beheerders beheren daarnaast het team en de facturering. Nodig uit via e-mail — uitnodigingen verlopen na 7 dagen en kunnen worden ingetrokken; via het menu ⋯ in een ledenrij kun je rollen wijzigen of iemand verwijderen. Eenmalig inloggen kan organisatiebreed worden geconfigureerd — zie SSO. In het dashboard: Organisatie → Algemeen. Zie Nodig je team uit. In de API: /v1/members, /v1/invites.

Facturering

ThunderPhone is vooraf betaald. Elke organisatie heeft een saldo in USD; oproepen schrijven dit af tegen het minuuttarief van de agent (enginepakket plus toeslagen — de builder toont het totaaltarief live terwijl je instellingen wijzigt, en premiumtalen voegen 2¢/min toe). Wanneer het saldo nul bereikt, worden inkomende oproepen geweigerd en geven uitgaande oproepen 402 Payment Required terug. Waardeer handmatig op, of schakel automatisch opwaarderen in met een saldodrempel, een opwaardeerbedrag en een optionele maandelijkse bestedingslimiet — zodat een oproep nooit midden in een zin stopt. In het dashboard: Organisatie → Factureringsinstellingen en Factureringsgeschiedenis. Zie Geld toevoegen en automatisch opwaarderen inschakelen. In de API: /v1/billing.

De copilot in de app

Het dashboard bevat een ingebouwde copilot — vraag bijvoorbeeld “hoe doe ik X” en deze geeft antwoord op basis van deze documentatie, biedt stapsgewijze rondleidingen die de daadwerkelijke bedieningselementen uitlichten, en kan alle begeleide rondleidingen opnieuw afspelen. Dit is de snelste manier om een bedieningselement te vinden dat op deze pagina wordt genoemd. Zie De copilot in de app vragen.

Alles samenbrengen

Snelle start met het dashboard

De wizard in vijf stappen: agent → facturering → nummer → simulatie → beoordeling.

Snelle start met de API

Dezelfde eerste oproep in vier REST-aanroepen.

Het dashboard gebruiken

Bouw een agent, voeg saldo toe, verkrijg een nummer, simuleer en beoordeel oproepen.

Tools en gegevens koppelen

OAuth-apps, aangepaste API’s, MCP-servers en VoIP-providers.

Analyseren en verbeteren

Rapporten, observeerbaarheid, experimenten, problemen en meldingen.

Team en account

Uitnodigingen en rollen, API-sleutels, beveiliging en SSO.

Kookboek voor ontwikkelaars

De API-recepten: inkomend, uitgaand, dynamische configuratie, tools, testen.

Webhookhandtekeningen verifiëren

Voer de HMAC-controle één keer correct uit en hergebruik deze overal.