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 direktetest samtale – alt gjennom REST API-et.
Denne veiledningen tar deg gjennom de fire REST-kallene som kreves for å besvare din første telefonsamtale med en stemmeagent.
Trinn 1: Hent 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åndtereren din.
Gjennom hele denne veiledningen erstatter du sk_live_YOUR_API_KEY med verdien du
nettopp kopierte. Nøkkelen identifiserer organisasjonen din automatisk, så
du trenger aldri å legge en organisasjons-ID i URL-er.
Trinn 2: Opprett en agent
En stemmeagent definerer hvordan KI-en håndterer samtaler — prompt, stemme, produktnivå, verktøy og hvilke widgeter den kan brukes i.
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 ThunderPhones demopool om et nummer og tildeler den nye agenten din som behandler for innkommende anrop. (Hvis du vil bruke 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 å motta anrop.
Trinn 4 (valgfritt): Konfigurer en webhook
For sanntidshendelser (dynamisk anropsruting, behandling etter samtalen) 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 secret som bare vises én gang — kopier den til
hemmelighetsbehandleren din. Bruk denne hemmeligheten til å verifisere
headeren X-ThunderPhone-Signature i innkommende forespørsler (se
Oversikt over webhooks).
Trinn 5: Test agenten din
Ring nummeret du nettopp klargjorde. Agenten svarer, presenterer seg og følger instruksjonen din.
Undersøk samtalen etter at den er avsluttet:
curl https://api.thunderphone.com/v1/calls \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"Gå inn på en bestemt samtale 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"