Schnellstart (API)
Beantworten Sie Ihren ersten Anruf mit einem KI-Agenten: API-Schlüssel abrufen, Agenten erstellen, Telefonnummer bereitstellen und einen Live-Testanruf durchführen – alles über die REST-API.
Diese Anleitung führt Sie durch die vier REST-Aufrufe, die erforderlich sind, um Ihren ersten Anruf mit einem Sprachagenten zu beantworten.
Schritt 1: API-Schlüssel abrufen
- Anmelden
Öffnen Sie app.thunderphone.com.
- Zu Schlüsseln navigieren
Gehen Sie im Dashboard zu Organisation → Schlüssel.
- Schlüssel erstellen
Klicken Sie auf Schlüssel erstellen, geben Sie ihm einen Namen und kopieren Sie den Wert
sk_live_.... Der vollständige Schlüssel wird nur einmal angezeigt — speichern Sie ihn sofort in Ihrer Geheimnisverwaltung.
Ersetzen Sie in dieser Anleitung sk_live_YOUR_API_KEY durch den Wert, den Sie
gerade kopiert haben. Der Schlüssel identifiziert Ihre Organisation automatisch, sodass
Sie niemals eine Organisations-ID in URLs angeben müssen.
Schritt 2: Einen Agenten erstellen
Ein Agent definiert, wie die Sprach-KI Gespräche verarbeitet — Prompt, Stimme, Produktstufe, Tools und Widget-Berechtigung.
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);Schritt 3: Eine Telefonnummer bereitstellen
Dieser Aufruf fordert eine Nummer aus dem Demo-Pool von ThunderPhone an und weist Ihren neuen Agenten als Handler für eingehende Anrufe zu. (Um Ihre eigene Nummer von einem VoIP- Anbieter zu verwenden, siehe stattdessen VoIP-Verbindungen.)
# 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"])Ihre neue Nummer startet mit status="provisioning" und wechselt innerhalb weniger
Sekunden zu active; bis Sie Ihren Browser schließen, ist die Nummer bereit, Anrufe
entgegenzunehmen.
Schritt 4 (optional): Einen Webhook einrichten
Fügen Sie für Echtzeitereignisse (dynamische Anrufweiterleitung, Verarbeitung nach dem Anruf) einen Webhook-Endpunkt hinzu. Abonnieren Sie nur die Ereignisse, die Sie benötigen.
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"]
}'Die Antwort enthält ein einmal verwendbares secret — kopieren Sie es in Ihren Secret-
Manager. Verwenden Sie dieses Secret, um den Header X-ThunderPhone-Signature bei
eingehenden Anfragen zu verifizieren (siehe
Webhook-Übersicht).
Schritt 5: Ihren Agenten testen
Rufen Sie die Nummer an, die Sie gerade bereitgestellt haben. Der Agent nimmt ab, stellt sich vor und folgt Ihrem Prompt.
Prüfen Sie den Anruf nach seinem Ende:
curl https://api.thunderphone.com/v1/calls \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"Rufen Sie die Details eines bestimmten Anrufs ab, um Transkript und Aufzeichnungs-URL zu erhalten:
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"