Hurtig start (API)
Besvar dit første telefonopkald med en AI-agent: Hent en API-nøgle, opret en agent, klargør et telefonnummer, og foretag et live testopkald — alt sammen via REST API
Denne guide gennemgår de fire REST-kald, der skal til for at besvare dit første telefonopkald med en AI-agent.
Trin 1: Hent en API-nøgle
- Log ind
Åbn app.thunderphone.com.
- Gå til Nøgler
Gå til Organisation → Nøgler i dashboardet.
- Opret en nøgle
Klik på Opret nøgle, giv den et navn, og kopiér værdien
sk_live_.... Den rå nøgle vises kun én gang — gem den straks i din secret manager.
I hele denne guide skal du erstatte sk_live_YOUR_API_KEY med den værdi, du
lige har kopieret. Nøglen identificerer automatisk din organisation, så
du aldrig behøver at angive et organisations-id i URL'er.
Trin 2: Opret en agent
En agent definerer, hvordan AI'en håndterer samtaler — prompt, stemme, produktniveau, værktøjer og widget-berettigelse.
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);Trin 3: Klargør et telefonnummer
Dette kald beder ThunderPhones demopulje om et nummer og tildeler din nye agent som håndtering af indgående opkald. (Hvis du vil medbringe dit eget nummer fra en VoIP- udbyder, kan du i stedet se VoIP-forbindelser.)
# 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"])Dit nye nummer starter med status="provisioning" og skifter til
active inden for få sekunder. Når du lægger på i browseren, er nummeret
klar til at modtage opkald.
Trin 4 (valgfrit): Konfigurer en webhook
Til hændelser i realtid (dynamisk opkaldsrouting, behandling efter opkald) skal du tilføje et webhook-endpoint. Abonner kun på de hændelser, du har brug for.
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 indeholder en engangs-secret — kopiér den til din
hemmelighedsadministrator. Brug denne hemmelighed til at verificere
headeren X-ThunderPhone-Signature på indgående anmodninger (se
Oversigt over webhooks).
Trin 5: Test din agent
Ring til det nummer, du lige har klargjort. Agenten svarer, præsenterer sig selv og følger din prompt.
Gennemse opkaldet, når det er afsluttet:
curl https://api.thunderphone.com/v1/calls \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"Gå ind på et specifikt opkald for at hente transskriptionen og optagelsens URL:
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"