Open in
Hurtigstart (API)
Besvar din første telefonsamtale med en AI-stemmeagent: hent en API-nøkkel, opprett en agent, klargjør et telefonnummer og foreta en direkte testsamtale — alt gjennom REST API-et.
Denne veiledningen tar deg gjennom de fire REST-kallene som kreves for å svare på din første telefonsamtale med en stemmeagent.
Trinn 1: Skaff en API-nøkkel
- Logg inn
Åpne app.thunderphone.com.
- Gå til Nøkler
Gå til Organisasjon → Nøkler i dashbordet.
- Opprett en nøkkel
Klikk på Opprett nøkkel, gi den et navn, og kopier verdien
sk_live_.... Den rå nøkkelen vises bare én gang — lagre den umiddelbart i hemmelighetshåndteringen din.
I resten av denne veiledningen bytter du ut sk_live_YOUR_API_KEY med verdien du
nettopp kopierte. Nøkkelen identifiserer automatisk organisasjonen din, så
du trenger aldri å legge inn en organisasjons-ID i URL-er.
Trinn 2: Opprett en agent
En agent definerer hvordan KI-en håndterer samtaler — ledetekst, stemme, produktnivå, verktøy og widgettilgjengelighet.
curl -X POST https://api.thunderphone.com/v1/agents \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support",
"prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
"voice": "john",
"product": "spark"
}'import os, requests
agent = requests.post(
"https://api.thunderphone.com/v1/agents",
headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
json={
"name": "Customer Support",
"prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
"voice": "john",
"product": "spark",
},
).json()
print("Agent id:", agent["id"])const agent = await fetch("https://api.thunderphone.com/v1/agents", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.THUNDERPHONE_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "Customer Support",
prompt: "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
voice: "john",
product: "spark",
}),
}).then((r) => r.json());
console.log("Agent id:", agent.id);Trinn 3: Klargjør et telefonnummer
Dette kallet ber ThunderPhone om et nummer og tilordner den nye agenten din som behandler for innkommende anrop. (Hvis du vil ta med ditt eget nummer fra en VoIP- leverandør, kan du se VoIP-tilkoblinger i stedet.)
# First provision
curl -X POST https://api.thunderphone.com/v1/phone-numbers \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"area_code": "415"}'
# Then assign the agent you created in Step 2
curl -X PATCH https://api.thunderphone.com/v1/phone-numbers/<id-from-previous> \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inbound_agent_id": 12}'number = requests.post(
"https://api.thunderphone.com/v1/phone-numbers",
headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
json={"area_code": "415"},
).json()
requests.patch(
f"https://api.thunderphone.com/v1/phone-numbers/{number['id']}",
headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
json={"inbound_agent_id": agent["id"]},
)
print("Your ThunderPhone number:", number["number"])Det nye nummeret ditt starter med status="provisioning" og går over til
active i løpet av noen sekunder. Når du lukker nettleseren, er
nummeret klart til å ta imot anrop.
Trinn 4 (valgfritt): Sett opp en webhook
For sanntidshendelser (dynamisk anropsruting, behandling etter anrop) legger du til et webhook-endepunkt. Abonner bare på hendelsene du trenger.
curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"label": "Prod webhook",
"url": "https://your-server.com/thunderphone-webhook",
"events": ["telephony.incoming", "telephony.complete"]
}'Svaret inneholder en engangs-secret — kopier den til hemmelighetshåndtereren din. Bruk denne hemmeligheten til å verifisere X-ThunderPhone-Signature-V2-headeren på innkommende forespørsler (se
Oversikt over webhooks).
Trinn 5: Test agenten din
Ring nummeret du nettopp klargjorde. Agenten svarer, presenterer seg og følger instruksen din.
Undersøk anropet etter at det er avsluttet:
curl https://api.thunderphone.com/v1/calls \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"Gå inn på et bestemt anrop for å hente transkripsjonen og URL-en til opptaket:
curl https://api.thunderphone.com/v1/calls/{call_id}/transcript \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"
curl https://api.thunderphone.com/v1/calls/{call_id}/audio \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"