ThunderPhone 2.0 yayında.Kendi başınıza kullanmaya başlayın; dakikada 2¢'den başlayan fiyatlarla.Duyuruyu okuyun

Getting Started

Hızlı Başlangıç (API)

İlk telefon çağrınızı yapay zeka ajanıyla yanıtlayın: API anahtarı alın, bir ajan oluşturun, telefon numarası sağlayın ve canlı test çağrısı yapın — tümü REST API üzerinden.

Bu rehber, ilk telefon çağrınızı bir yapay zeka ajanıyla yanıtlamak için gereken dört REST çağrısında size yol gösterir.

Adım 1: API anahtarı alın

  1. Giriş yapın

    app.thunderphone.com adresini açın.

  2. Anahtarlar bölümüne gidin

    Kontrol panelinde Organizasyon → Anahtarlar bölümüne gidin.

  3. Anahtar oluşturun

    Anahtar oluştur seçeneğine tıklayın, anahtara bir ad verin ve sk_live_... değerini kopyalayın. Ham anahtar yalnızca bir kez gösterilir; anahtarı hemen gizli anahtar yöneticinize kaydedin.

Bu rehber boyunca sk_live_YOUR_API_KEY değerini az önce kopyaladığınız değerle değiştirin. Anahtar organizasyonunuzu otomatik olarak tanımlar; bu nedenle URL'lere hiçbir zaman organizasyon kimliği eklemeniz gerekmez.

Adım 2: Bir ajan oluşturun

Bir ajan, yapay zekanın konuşmaları nasıl yöneteceğini tanımlar: istem, ses, ürün katmanı, araçlar ve widget uygunluğu.

cURL
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"
  }'
Python
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"])
Node.js
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);

Adım 3: Bir telefon numarası sağlayın

Bu çağrı, ThunderPhone'un demo havuzundan bir numara ister ve yeni ajanınızı gelen çağrı işleyicisi olarak atar. (Bir VoIP sağlayıcısından kendi numaranızı getirmek için bunun yerine VoIP bağlantıları sayfasına bakın.)

cURL
# 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}'
Python
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"])

Yeni numaranız status="provisioning" durumunda başlar ve birkaç saniye içinde active durumuna geçer; tarayıcınızı kapatana kadar numara çağrı almaya hazır olur.

Adım 4 (isteğe bağlı): Bir webhook ayarlayın

Gerçek zamanlı etkinlikler için (dinamik çağrı yönlendirme, çağrı sonrası işleme) bir webhook uç noktası ekleyin. Yalnızca ihtiyacınız olan etkinliklere abone olun.

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"]
  }'

Yanıt, tek kullanımlık bir secret içerir — bunu gizli anahtar yöneticinize kopyalayın. Gelen isteklerdeki X-ThunderPhone-Signature başlığını doğrulamak için bu gizli anahtarı kullanın (bkz. Webhook'lara genel bakış).

Adım 5: Ajanınızı test edin

Az önce sağladığınız numarayı arayın. Ajan çağrıyı yanıtlar, kendini tanıtır ve isteminizi izler.

Çağrı bittikten sonra inceleyin:

curl https://api.thunderphone.com/v1/calls \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Transkripti ve kayıt URL'sini almak için belirli bir çağrının ayrıntılarına gidin:

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"

Sonraki adımlar