ThunderPhone 2.0 er lansert.Kom i gang selv, fra 2 ¢/min.Les mer om lanseringen

Developer cookbook

Foreta utgående samtaler (API)

Start en utgående samtale drevet av AI fra din egen kode — for spørreundersøkelser, oppfølging eller bekreftelser.

Utgående anrop lar deg gi et destinasjonsnummer og en agent- konfigurasjon til ThunderPhone og la stemmeagenten foreta anropet på dine vegne. Vanlige bruksområder:

  • Avtalebekreftelser
  • Tilbakeoppringinger for undersøkelser
  • Oppfølging ved «andre forsøk» etter et tapt anrop
  • Varsler i dispatch-stil

Forutsetninger

  1. Bruk et VoIP-nummer

    Utgående anrop krever at du eier from_number via en VoIP-tilkobling. Demo-numre er kun for innkommende anrop. Se Bruk dine egne numre.

  2. Opprett en agent

    En prompt for utgående anrop starter gjerne med at agenten identifiserer seg selv og formålet sitt — «Hei, dette er Acme som ringer for å bekrefte avtalen din i morgen kl. 15 …» Angi outbound_speak_order til agent_first (standardverdien).

  3. Ha en positiv saldo

    Utgående anrop returnerer 402 Payment Required hvis saldoen er ≤ $0.00. Fyll på via POST /v1/billing/top-up eller aktiver automatisk påfylling.

Foreta et anrop med en lagret agent

Den enkleste måten — referer til en agent etter id:

curl -X POST https://api.thunderphone.com/v1/call \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from_number": "+15551234567",
    "to_number":   "+14155550199",
    "agent_id":    12
  }'

Svar:

{ "call_id": 987654321, "status": "initiated" }

Foreta et anrop med innebygd konfigurasjon

Hvis du vil ha en engangsprompt som ikke er verdt å lagre som en agent, sender du config i stedet. Strukturen samsvarer med svarskjemaet for call.incoming-webhooken:

curl -X POST https://api.thunderphone.com/v1/call \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from_number": "+15551234567",
    "to_number":   "+14155550199",
    "config": {
      "prompt":  "You are confirming Jane Doe appointment for 3pm tomorrow…",
      "voice":   "john",
      "product": "spark"
    }
  }'

Følg anropet

Abonner parallelt på telephony.complete-webhooken — den raskeste måten å vite at et anrop er fullført på. Hvis du ikke kan motta innkommende webhooks, poll GET /v1/calls/{call_id} hvert par sekund. Oppføringen inkluderer end_reason, duration_seconds og opptaks-URL-en når anropet avsluttes.

Feiltilstander som er verdt å håndtere

FeilLøsning
402 Payment RequiredFyll på saldoen eller aktiver automatisk påfylling
403 utgående anrop blokkert (demo-nummer)Bruk et VoIP-nummer i stedet
403 utgående anrop blokkert (ubekreftet VoIP)Kjør POST /v1/phone-numbers/{id}/verify-voip
404 from_number is not registered to this organizationBekreft at from_number samsvarer med et telefonnummer du eier
502 Bad GatewayForbigående SIP- / LiveKit-feil; det er trygt å prøve på nytt

Kontrollere ventetid

Utgående samtaler som varer lenge fordi den som ringes opp svarer sent (IVR-trær, køer), kan begrenses med max_hold_seconds:

{
  "from_number": "+15551234567",
  "to_number":   "+14155550199",
  "agent_id":    12,
  "max_hold_seconds": 120
}

Agenten legger på hvis det ikke har blitt mottatt menneskelig lyd de siste N sekundene. Standardverdien er 900 (15 minutter).


Neste trinn